Бортовой компьютер для Опель Зафира.

MaksVV
Offline
Зарегистрирован: 06.08.2015

там всё остальное должно быть правильно. ты как раз ошибся в байте №11 а это наша строка 145 т.е. ECUHardwareNumber и ошибся ты как раз на 3 если в DEC рассматривать. А это и есть количество символов, которое он выпускает из номера hardware. 

viki13viki
Offline
Зарегистрирован: 14.11.2016

Ох получится, тачняк. :) завтра узнаем.

viki13viki
Offline
Зарегистрирован: 14.11.2016

MaksVV не знаю кем ты работаешь но тебе бы в программисты. сработало, 0x03 это действительно разделитель. есть две вещи, отобоажает 0006 вместо 6 и FF всесто 255. на счет 6 не знаю или принцепиально, но FF думаю да. вот результат

VIN: W0L0TGF7512233714
vehicleManufacturerECUHardwareNumber 24417169 PD
systemSupplierECUHardwareNumber: BOS  010505
systemSupplierECUHardwareVersionNumber: FF
systemSupplierECUSoftwareNumber: KM7M3040_S
systemSupplierECUSoftwareVersionNumber: 0006
exhaustRegulationOrTypeApprovalNumber: B01015
systemNameOrEngineType:  Y20DTH_D3
RepairShopCodeOrTesterSerialNumber:  S001006940
ProgrammingDate:  20070725
 
Identifier: 0548
 
VehicleManufacturerSpecific: 0281010268
 
захожу в лайф дата и вижу такое.
 
MaksVV
Offline
Зарегистрирован: 06.08.2015

Ты подправь сообщение datos. Скопируй байты из последнего снифа. Просто у нас в скетче вроде больше байт. По поводу FF и 0006 подумаю

viki13viki
Offline
Зарегистрирован: 14.11.2016

ок, щас поищу последний сниф

MaksVV
Offline
Зарегистрирован: 06.08.2015

походу надо еще сниффить сеанс связи опком - эмулятор, чтоб понимать что к чему. Есть ещё ардуино? С адаптерами то у тебя вроде как порядок. 

viki13viki
Offline
Зарегистрирован: 14.11.2016

я думал, былбы второй ардунино проснифить эумлятор, но увы нет. перепроверил сообщение несколько раз нашел один косяк 0х91 а надо 0х92. но ничего не поменялось. все точняк точняяком. заметил еще одну вещь, опком работает так, полчуает инит, получает данные с двух сообщений, потом посылает без перерыва присутствие, и только если я иду в лайф дата он шлет 21 01 и получает данные . эмулятор делате так, отвечает на инит, отвечает на два идентификатора а потм опком ему шлет присутсвие четыре раза, эмулятор не отвечает и он сново посылает эмулятору инит  и так по кругу, вот так

Tekuchiy Nomer Byte dlya izmeneniya:   0

Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 

нормально с авто при заходе в лайф дата опком начинает 2-3 раза подряд слать 21 01, а вот что происходит в эмуляторе если я получил данные и сразу иду в лайф дата

Tekuchiy Nomer Byte dlya izmeneniya:   0

Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   81 11 F1 3E C1 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  D  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  5C  81  1F  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 

он четыре раза отправил дата а потом почемуто начал опять инит , тут то и выскакивает ошибка комуникации. может сдесь гдето собака порылась?

вот скетч

class BUTTON {
public:
//================================================================
static const byte bounce_              =   50; // длительность отслеживания дребезга.
static const byte doubleclick_         =  200; // длительность отслеживания двойного клика.
static const unsigned long timer_      = 1200000; // длительность отслеживания неактивности.
static const unsigned int retention_   = 1600; // длительность отслеживания нажатия и удержания.
//================================================================
boolean click_down;
boolean click_up;
boolean doubleclick;
boolean timer;
boolean retention;
//=================================
unsigned long m;
boolean  p;
boolean  b;
boolean dc;
byte     c;
boolean  t;
boolean  r;
//=================================
byte _pb;
//=================================
BUTTON(byte pb) {
_pb = pb;
pinMode(_pb, INPUT);
digitalWrite(_pb, 1);
//====
click_down      = 0;
click_up        = 0;
doubleclick     = 0;
timer           = 0;
retention       = 0;
//====
m  =      millis();
p  = digitalRead(_pb);
b  =                0;
dc =                0;
c  =                0;
t  =                0;
r  =                0;
//====
}

void read() {
//=======================================================
unsigned long nm =      millis();
boolean       np = digitalRead(_pb);
//=================
boolean nb  = 0;
boolean ndc = 0;
boolean nt  = 0;
boolean nr  = 0;
//================
click_down  = 0;
click_up    = 0;
doubleclick = 0;
timer       = 0;
retention   = 0;
//=================
if (np != p) {p = np; m = nm; }
//=======================================================
if (nm - m > bounce_) {nb = 1;}
if (nm - m > doubleclick_) {ndc = 1;}
if (ndc != dc) {dc = ndc; if (dc == 1) {c = 0;}}
if (nb != b) {b = nb;
if (p == 0 && b == 0) {click_down = 1;
++c;      if (c == 2) {c = 0; doubleclick = 1;}
}
if (p == 1 && b == 1) {click_up = 1;}
}
//=======================================================
if (nm - m > timer_) {nt = 1;}
if (nt != t) {t = nt;
if (p == 1 && t == 1) {timer = 1;}
}
//=======================================================
if (nm - m > retention_) {nr = 1;}
if (nr != r) {r = nr;
if (p == 0 && r == 1) {retention = 1;}
}
//=======================================================
}
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~






BUTTON button(12); // вход кнопки (digital pin arduino)

int bytenumber = 0;


///////////////////////////////////////////////////////////////////////
// Всё что выше для считывания кнопки 
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); //R,T
unsigned long prevTimedelay = 0; 

int length5 = 5;
int length7 = 7;
byte MessageRx[110] = {0};  // массив байтов принимаемого сообщения

byte messageCOMUN[7] = {0x83, 0xF1, 0x11, 0xC1, 0x6B, 0x8F, 0x40};
byte messagePRES[5] = {0x81, 0xF1, 0x11, 0x7E, 0x01};

int length44 = 44;
byte messageIDEN1[44] = {0xA8, 0xF1, 0x11, 0x5A, 0x81, 0x04, 0x90, 0x6F, 0x62, 0x03, 0x91, 0x6B, 0x03,
0x92, 0x6B, 0x03, 0x93, 0x01, 0x03, 0x94, 0x6A, 0x03, 0x95, 0x02, 0x03, 0x96, 0x66, 0x03, 0x97, 0x69, 
0x03, 0x98, 0x6A, 0x03, 0x99, 0x44, 0x03, 0x9A, 0x02, 0x03, 0x9F, 0x6A, 0xFF, 0xAC};
                       //  A8 F1 11 5A 81 04 90 6F 62 03 91 6B 03
                       //  92 6B 03 93 01 03 94 6A 03 95 02 03 96 66 03 97 69 
                       //  03 98 6A 03 99 44 03 9A 02 03 9F 6A FF AC 

int length100 = 100;

byte messageIDEN2[100] = {0x80, 0xF1, 0x11, 0x5F, 0x5A, 0x80, 0x57, 0x30, 0x4C, 0x30, 0x54, 0x47, 0x46, 0x37,
0x35, 0x31, 0x32, 0x32, 0x33, 0x33, 0x37, 0x31, 0x34, 0x32, 0x34, 0x34, 0x31, 0x37, 0x31, 0x36, 0x39, 0x20,
0x50, 0x44, 0x42, 0x4F, 0x53, 0x20, 0x20, 0x30, 0x31, 0x30, 0x35, 0x30, 0x35, 0xFF, 0x4B, 0x4D, 0x37, 0x4D,
0x33, 0x30, 0x34, 0x30, 0x5F, 0x53, 0x00, 0x06, 0x42, 0x30, 0x31, 0x30, 0x31, 0x35, 0x59, 0x32, 0x30, 0x44,
0x54, 0x48, 0x20, 0x44, 0x33, 0x53, 0x30, 0x30, 0x31, 0x30, 0x30, 0x36, 0x39, 0x34, 0x30, 0x20, 0x07, 0x07,
0x25, 0x05, 0x48, 0x30, 0x32, 0x38, 0x31, 0x30, 0x031, 0x30, 0x32, 0x36, 0x38, 0xFF};


int length83 = 83;
byte messagePIDS[83] = {0x80, 0xF1, 0x11, 0x4C, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x0D, 0x37, 0x01, 0x79, 0x0C, 0xEB, 0x00, 0x00, 0x02, 0xB3, 0x00, 0x00, 0x11, 0x89, 0x04, 0x30, 0x00, 0x00, 
0x03, 0x20, 0x0B, 0x55, 0x03, 0xA3, 0x04, 0x2D, 0x03, 0x20, 0xEE, 0xB9, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x35, 
0x03, 0x0A, 0x02, 0xD9, 0x08, 0xA3, 0x01, 0x90, 0x0C, 0x27, 0xA0, 0x00, 0x01, 0x2C, 0x02, 0x76, 0xAD, 0x08, 
0x01, 0x30, 0x00, 0x03, 0x01, 0x7B, 0x0B, 0xDB, 0x03, 0xA3, 0x00, 0x02, 0x5C, 0x81, 0x1F};

int waitbyte=5;

unsigned long TimeLED, timerLED = 0;
bool timerenabledLED = 0;
#define TIMEREXPIRED_LED (TimeLED - timerLED)> 1200 // время включения светодиода если кнопка длительно нажата, мс

void setup() {
 Serial.begin (115200);
mySerial.begin (10400);
pinMode (13, OUTPUT);
digitalWrite (13,0);
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");
}

void loop() {
button.read();
TimeLED = millis ();

//////////////////////тут поменять на сообщение 21 00
if (button.click_down) { messagePIDS[bytenumber]++;  } // коротким нажатием на кнопку изменяем значение выбранного байта 
if (button.retention) { bytenumber++; digitalWrite (13,1) ; timerLED=TimeLED; timerenabledLED=1; 
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");} // длительным нажатием на кнопку изменяем номер байта, который будем менять

if (timerenabledLED){ if (TIMEREXPIRED_LED) {timerenabledLED=0;digitalWrite (13,0);}}



if (mySerial.available()) {
      delay(100);
     int k=0;
     byte inbyte=0;
     
  while( mySerial.available() && k < 100) {
     inbyte = mySerial.read();
    MessageRx[k] = inbyte;
    k++;   }

      Serial.print ("Recieve:   ");

    for (int i = 0; i < k; i++) {
    Serial.print(MessageRx[i],HEX); Serial.print (" ");} 
    Serial.println ("");

if (MessageRx[1]==0x81 && MessageRx[2]==0x11 && MessageRx[3]==0xF1 && MessageRx[4]==0x81 && MessageRx[5]==0x04) {
  Serial.println ("Prinyat zapros init!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length7; i++) {
    mySerial.write(messageCOMUN[i]);
    Serial.print(messageCOMUN[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
if (MessageRx[1]==0x81 && MessageRx[2]==0x11 && MessageRx[3]==0xF1 && MessageRx[4]==0x3E && MessageRx[4]==0xC1) {
  Serial.println ("Prinyat zapros prisutstvia!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length5; i++) {
    mySerial.write(messagePRES[i]);
    Serial.print(messagePRES[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x81 && MessageRx[5]==0x1F) {
  Serial.println ("Prinyat zapros identificacion 1!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length44; i++) {
    mySerial.write(messageIDEN1[i]);
    Serial.print(messageIDEN1[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
   Serial.print ("Otvechayu DEC:    ");
    for (int i = 0; i < length44; i++) {
   
    Serial.print(messageIDEN1[i]); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x80 && MessageRx[5]==0x1E) {
  Serial.println ("Prinyat zapros identificacion 2!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length100; i++) {
    mySerial.write(messageIDEN2[i]);
    Serial.print(messageIDEN2[i],HEX); Serial.print ("  ");
 //   if (i==31){  delay (113);Serial.println ("");}
 //   if (i==92){  delay (113);Serial.println ("");}
     //delay (waitbyte); 
   } 
    Serial.println("");
  Serial.print ("Otvechayu DEC:    ");
 for (int i = 0; i < length100; i++) {
    
    Serial.print(messageIDEN2[i]); Serial.print ("  ");
    
     //delay (waitbyte); 
   } 
   Serial.println("");
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x21 && MessageRx[4]==0x01 && MessageRx[5]==0xA6) {
  Serial.println ("Prinyat zapros datos!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length83; i++) {
    mySerial.write(messagePIDS[i]);
    Serial.print(messagePIDS[i],HEX); Serial.print ("  ");
//   /delay (waitbyte); 
   } 
    Serial.println("");
 
   }
}
}

вижу первый косяк что он не отвеичает на присутсвие

косяк с присутсвием исправил, сместил байти ои 0-ля были от 1-го

осталась вторая проблем, четыре раза отправляет данные а потом сново инит, щас проверю отправляемое сообщение 21 00 , так поборол и этот косяк сообщение отправляемое было 83 байта а должно было 81 байта, получил данные в проге, отсалься последний косяк почемуто через время вылетает ошибка комуникации, плсмотрел в скетч он переходит на инит, вот результаты

Tekuchiy Nomer Byte dlya izmeneniya:   0

Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 

 

MaksVV
Offline
Зарегистрирован: 06.08.2015

я тебе сразу сказал что у нас в скетче datos больше байт чем надо

MaksVV
Offline
Зарегистрирован: 06.08.2015

viki13viki пишет:

 

получил данные в проге

 

не ужели это произошло? победа однако

 

MaksVV
Offline
Зарегистрирован: 06.08.2015

надо было сразу выкладывать сеанс связи эмулятора и опкома. Тут сниффер то и не нужен. Дуня сама всесообщения в сериал выкладывает)) эдакий эмулятор-снифер. А опком быстро связь рвет? можно успеть данные рассомтреть?

MaksVV
Offline
Зарегистрирован: 06.08.2015

кстати попробуй в твоем скетче из сообщения 357, вместо строки 179 (проверка байтов на инит) вставить вот так  

if ((MessageRx[1]==0x81 && MessageRx[2]==0x11 && MessageRx[3]==0xF1 && MessageRx[4]==0x81 && MessageRx[5]==0x04)|| (MessageRx[0]==0x81 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x81 && MessageRx[4]==0x04)){

 

viki13viki
Offline
Зарегистрирован: 14.11.2016

да MaksVV это очередная победа. связь рвется гдето черз 5-10 секунд. данные все показывает и можно рассмотреть и даже успеть зайти на вторую страницу где углы и все такое. щас попробую последнее из 361 го сообщения. 

viki13viki
Offline
Зарегистрирован: 14.11.2016

не помогло. все таже шняга, вот результат

Tekuchiy Nomer Byte dlya izmeneniya:   0

Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 1A 81 1F 
Prinyat zapros identificacion 1!  

Otvechayu:    A8  F1  11  5A  81  4  90  6F  62  3  91  6B  3  92  6B  3  93  1  3  94  6A  3  95  2  3  96  66  3  97  69  3  98  6A  3  99  44  3  9A  2  3  9F  6A  FF  AC  
Otvechayu DEC:    168  241  17  90  129  4  144  111  98  3  145  107  3  146  107  3  147  1  3  148  106  3  149  2  3  150  102  3  151  105  3  152  106  3  153  68  3  154  2  3  159  106  255  172  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 1A 80 1E 
Prinyat zapros identificacion 2!  

Otvechayu:    80  F1  11  5F  5A  80  57  30  4C  30  54  47  46  37  35  31  32  32  33  33  37  31  34  32  34  34  31  37  31  36  39  20  50  44  42  4F  53  20  20  30  31  30  35  30  35  FF  4B  4D  37  4D  33  30  34  30  5F  53  0  6  42  30  31  30  31  35  59  32  30  44  54  48  20  44  33  53  30  30  31  30  30  36  39  34  30  20  7  7  25  5  48  30  32  38  31  30  31  30  32  36  38  FF  
Otvechayu DEC:    128  241  17  95  90  128  87  48  76  48  84  71  70  55  53  49  50  50  51  51  55  49  52  50  52  52  49  55  49  54  57  32  80  68  66  79  83  32  32  48  49  48  53  48  53  255  75  77  55  77  51  48  52  48  95  83  0  6  66  48  49  48  49  53  89  50  48  68  84  72  32  68  51  83  48  48  49  48  48  54  57  52  48  32  7  7  37  5  72  48  50  56  49  48  49  48  50  54  56  255  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   81 11 F1 3E C1 
Prinyat zapros prisutstvia!  

Otvechayu:    81  F1  11  7E  1  
Recieve:   FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   82 11 F1 21 1 A6 
Prinyat zapros datos!  

Otvechayu:    80  F1  11  4C  61  1  0  0  0  0  0  0  0  0  C  37  1  79  C  EB  0  0  2  B3  0  0  11  89  4  30  0  0  3  20  B  55  3  A3  4  2D  3  20  EE  B9  0  0  0  0  C  35  3  A  2  D9  8  A3  1  90  C  27  A0  0  1  2C  2  76  AD  8  1  30  0  3  1  7B  B  DB  3  A3  0  2  1F  0  
Recieve:   FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 
Recieve:   81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 0 81 11 F1 81 4 
Recieve:   0 81 11 F1 81 4 
Prinyat zapros init!  

Otvechayu:    83  F1  11  C1  6B  8F  40  
Recieve:   FF FF FF 

почему опком после нескольких полученых ответов присутсвия, просит сново инит?. второй раз получает инит и данные а на третий раз у него не выходит инит и из за этого вылето ошибки комуникации. в последнем снифе видно что он только 21 01 отправляет и ничего больше при входе в лайф дата, причем он посылает 2-3 раза запрос подряд.

viki13viki
Offline
Зарегистрирован: 14.11.2016

когда перехожу на следующую страницу то он почему то снова делает инит. а не должен, должен только 21 00 перезапрашивать. по ходу сам эмулятор рвет соединение и потом не может его дать на третью помытку. вот последний сниффер , ниже много запросов 21 01 , это я по страницам ходил. со строки 079

-18508ms
 0 81 11 F1 81 4
106ms
 83 F1 11 C1 6B 8F 40
247ms
 82 11 F1 1A 81 1F A8 F1 11 5A 81 4 90 6F 62 3 91 6B 3 92 6B 3 93 1 3 94 6A 3 95 2 3 96 66 3 97 69 3
112ms
 98 6A 3 99 44 3 9A 2 3 9F 6A FF AC
242ms
 82 11 F1 1A 80 1E 80 F1 11 5F 5A 80 57 30 4C 30 54 47 46 37 35 31 32 32 33 33 37 31 34 32 34 34 31 37 31 36 39 20 50
113ms
 44 42 4F 53 20 20 30 31 30 35 30 35 FF 4B 4D 37 4D 33 30 34 30 5F 53 0 6 42 30 31 30 31 35 59 32 30 44 54 48 20 44 33 53 30 30 31 30 30 36 39 34 30 20 7 7 25 5 48 30 32 38 31 30
120ms
 31 30 32 36 38 FF
2362ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A2 1 7D C 69 0 0 2 B1 0 0 11 F0 4 3F 0 0 3 22 B B7 3 AC 4
114ms
 2F 3 20 F0 6A 0 0 0 0 B 71 3 A9 3 33 8 AA 1 90 C 5E A0 0 1 2C 3 5D A9 8 1 30 0 0 1 7E B FB 3 AC 0 2 5E
811ms
 81 11 F1 3E C1 81 F1 11 7E 1
217ms
 81 11 F1 3E C1 81 F1 11 7E 1
216ms
 81 11 F1 3E C1 81 F1 11 7E 1
233ms
 81 11 F1 3E C1 81 F1 11 7E 1
218ms
 81 11 F1 3E C1 81 F1 11 7E 1
215ms
 81 11 F1 3E C1 81 F1 11 7E 1
217ms
 81 11 F1 3E C1 81 F1 11 7E 1
232ms
 81 11 F1 3E C1 81 F1 11 7E 1
240ms
 81 11 F1 3E C1 81 F1 11 7E 1
239ms
 81 11 F1 3E C1 81 F1 11 7E 1
218ms
 81 11 F1 3E C1 81 F1 11 7E 1
215ms
 81 11 F1 3E C1 81 F1 11 7E 1
223ms
 81 11 F1 3E C1
1587ms
 81 11 F1 3E C1
355ms
 81 11 F1 3E C1
340ms
 81 11 F1 3E C1
989ms
 0 81 11 F1 81 4
1760ms
 0 81 11 F1 81 4 83
103ms
 F1 11 C1 6B 8F 40
201ms
 82 11 F1 1A 81 1F A8 F1 11 5A 81 4 90 6F 62 3 91 6B 3 92 6B 3 93 1 3 94 6A 3 95 2 3 96 66 3 97 69 3 98 6A 3 99 44 3 9A 2
114ms
 3 9F 6A FF AC
225ms
 82 11 F1 1A 80 1E
1703ms
 82 11 F1 1A 80 1E
341ms
 82 11 F1 1A 80 1E
341ms
 82 11 F1 1A 80 1E 80 F1 11 5F 5A 80 57 30 4C 30 54 47 46 37 35 31 32 32 33 33 37 31 34 32 34 34 31 37 31 36 39 20
114ms
 50 44 42 4F 53 20 20 30 31 30 35 30 35 FF 4B 4D 37 4D 33 30 34 30 5F 53 0 6 42 30 31 30 31 35 59 32 30 44 54 48 20 44 33 53 30 30 31 30 30 36 39 34 30 20 7 7 25 5 48 30 32 38 31
120ms
 30 31 30 32 36 38 FF
558ms
 0 81 11 F1 81 4
1935ms
 0 81 11 F1 81 4 83 F1
103ms
 11 C1 6B 8F 40
201ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A7 1 7E C 6E 0 0 2 B6 0 0 12 55 4
110ms
 35 0 0 3 20 B B3 3 AC 4 2F 3 20 F0 5A 0 0 0 0 B 71 2 FB 3 28 8 AB 1 8F C 5E A0 0 1 2C 3 9C A9 8 1 30 0 0 1 7F B F9 3 AC 0 2 38
478ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A7 1 7B C 6E 0 0 2 B4 0 0 12 21 4 3A 0 0 3 1F B AD 3
112ms
 AC 4 2F 3 20 F0 65 0 0 0 0 B 71 2 FF 3 2A 8 AA 1 8F C 5C A0 0 1 2C 3 41 AD 8 1 30 0 0 1 7E B F9 3 AD 0 2 B4
258ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A7 1 7C C 6D 0 0 2 B3 0 0 12 3F 4 39 0 0 3
110ms
 21 B B3 3 AC 4 2F 3 20 F0 5A 0 0 0 0 B B1 2 FB 3 20 8 AA 1 91 C 5C A0 0 1 2C 3 72 AD 8 1 30 0 0 1 7D B F9 3 AD 0 2 31
307ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 84 C 6D 0 0 2 B4 0 0 12 2E 4 39 0 0 3 21 B AA
112ms
 3 AD 4 2E 3 20 F0 0 0 0 0 0 B 2F 2 BB 3 2B 8 AB 1 8F C 5E A0 0 1 2C 3 44 AD 8 1 30 0 0 1 7E B F9 3 AD 0 2 E4
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 7D C 6E 0 0 2 B5 0 0 12 31 4 39 0 0 3 1F B B6 3
111ms
 AD 4 2F 3 20 F0 50 0 0 0 0 B 70 2 F9 3 26 8 AB 1 8F C 5E A0 0 1 2C 3 96 A9 8 1 30 0 0 1 7F B F9 3 AC 0 2 5
305ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 84 C 6E 0 0 2 B4 0 0 11 FF 4 3E 0 0 3 20 B AD 3 AC
111ms
 4 2E 3 20 F0 20 0 0 0 0 B 70 3 90 3 23 8 AB 1 91 C 5E A0 0 1 2C 3 7B A9 8 1 30 0 0 1 7E B F9 3 AD 0 2 1F
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 81 C 6E 0 0 2 B2 0 0 12 44 4 3A 0 0
112ms
 3 20 B B6 3 AD 4 2F 3 20 F0 7A 0 0 0 0 B 71 2 C1 3 2E 8 A9 1 8F C 5C A0 0 1 2C 3 4F A9 8 1 30 0 0 1 7F B F9 3 AD 0 2 CC
307ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 7D C 6F 0 0 2 B4 0 0 11 F0 4 3A
109ms
 0 0 3 22 B AD 3 AD 4 2E 3 20 F0 16 0 0 0 0 B B1 2 EE 3 1B 8 A9 1 91 C 5C A0 0 1 2C 3 34 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 49
648ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 82 C 6F 0 0 2 B2 0 0 12 5B 4 3E 0 0 3 1E B
111ms
 B7 3 AC 4 2F 3 20 F0 84 0 0 0 0 B 71 2 C5 3 30 8 AB 1 8F C 5C A0 0 1 2C 3 B4 A9 8 1 30 0 0 1 7F B F9 3 AC 0 2 5D
305ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 7C C 6E 0 0 2 B4 0 0 12 30 4 3A 0 0 3
112ms
 20 B B1 3 AC 4 2F 3 20 F0 45 0 0 0 0 B 2F 2 FC 3 24 8 AA 1 90 C 5C A0 0 1 2C 3 90 A9 8 1 30 0 0 1 7F B F9 3 AC 0 2 AB
292ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 7E C 6F 0 0 2 B4 0 0 12 5 4 3A 0 0 3 22 B AE 3 AC
112ms
 4 2E 3 20 F0 25 0 0 0 0 B 73 3 8B 3 1D 8 AA 1 91 C 5C A0 0 1 2C 3 7E A9 8 1 30 0 0 1 7E B F9 3 AD 0 2 1D
363ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 82 C 70 0 0 2 B4 0 0 12 44 4 3A 0 0 3 21 B B2 3
113ms
 AD 4 2F 3 20 F0 4A 0 0 0 0 B B3 2 F8 3 25 8 A9 1 90 C 5C A0 0 1 2C 3 37 A9 8 1 30 0 0 1 7E B F9 3 AD 0 2 F6
308ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AA 1 80 C 6F 0 0 2 B3 0 0 12 3A 4 39
109ms
 0 0 3 20 B B5 3 AC 4 2F 3 20 F0 6A 0 0 0 0 B 75 3 99 3 2B 8 AA 1 90 C 5C A0 0 1 2C 3 9C A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 D9
334ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AA 1 7B C 6F 0 0 2 B3 0 0 12 21 4 3A 0 0 3
112ms
 1F B B2 3 AD 4 2F 3 20 F0 30 0 0 0 0 B 70 2 F7 3 20 8 AA 1 90 C 5C A0 0 1 2C 3 84 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 B4
371ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AA 1 7F C 6F 0 0 2 B2 0 0 12 15 4 39 0 0 3 22 B B2 3 AD
112ms
 4 2F 3 20 F0 55 0 0 0 0 B 71 3 8B 3 22 8 A9 1 90 C 5C A0 0 1 2C 3 2F A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 13
290ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 7E C 6F 0 0 2 B4 0 0 12 2B 4
111ms
 3C 0 0 3 20 B B3 3 AD 4 2F 3 20 F0 40 0 0 0 0 B 70 2 F8 3 23 8 AA 1 90 C 5C A0 0 1 2C 3 8D A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 E1
352ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C A8 1 80 C 70 0 0 2 B4 0 0 11 E7 4 3F 0 0 3 20 B AE
113ms
 3 AC 4 2F 3 20 F0 3A 0 0 0 0 B 2F 3 8E 3 22 8 AA 1 90 C 5C A0 0 1 2C 3 37 A9 8 1 30 0 0 1 7E B F9 3 AD 0 2 96
298ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AA 1 7E C 70 0 0 2 B3 0 0 12 1 4 3C
110ms
 0 0 3 20 B B2 3 AD 4 2F 3 20 F0 55 0 0 0 0 B 31 2 FA 3 25 8 A9 1 90 C 5C A0 0 1 2C 3 37 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 3B
299ms
 82 11 F1 21 1 A6
1596ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 7B C 6F 0 0 2 B2 0 0 12 56 4 3E
109ms
 0 0 3 1D B B5 3 AC 4 2F 3 20 F0 5F 0 0 0 0 B 71 2 B8 3 29 8 AA 1 8F C 5C A0 0 1 2C 3 9F AD 8 1 30 0 0 1 7F B F8 3 AC 0 2 5
515ms
 82 11 F1 21 1 A6
1587ms
 82 11 F1 21 1 A6 80 21 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 7F C 72 0 0 2 B4 0 0 11 D2 4 3A 0 0 3 23 B A9
112ms
 3 AD 4 2E 3 20 EF FB 0 0 0 0 B 2F 2 EA 3 16 8 A8 1 91 C 5C A0 0 1 2C 3 F AD 8 1 30 0 0 1 7E B F9 3 AC 0 2 97
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 7E C 72 0 0 2 B5 0 0 12 3A 4 3A 0
112ms
 0 3 20 B B1 3 AC 4 2F 3 20 F0 4A 0 0 0 0 B 73 3 8E 3 25 8 AA 1 8F C 5C A0 0 1 2C 3 93 AD 8 1 30 0 0 1 7E B F8 3 AC 0 2 A0
306ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 7E C 72 0 0 2 B2 0 0 12 0 4
109ms
 39 0 0 3 21 B B0 3 AD 4 2F 3 20 F0 40 0 0 0 0 B B3 2 B6 3 23 8 A9 1 8F C 5C A0 0 1 2C 3 3A A9 8 1 30 0 0 1 7E B F8 3 AD 0 2 61
276ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 80 C 72 0 0 2 B4 0 0 12 15 4 3E 0 0 3 21 B AD
111ms
 3 AD 4 2E 3 20 F0 25 0 0 0 0 B 70 2 F1 3 1E 8 A9 1 91 C 5C A0 0 1 2C 3 24 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 3F
275ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AC 1 7D C 72 0 0 2 B3 0 0 12 46 4 3A 0 0
111ms
 3 1E B AF 3 AD 4 2F 3 20 F0 75 0 0 0 0 B 70 3 9D 3 2E 8 AA 1 8F C 5C A0 0 1 2C 3 49 A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 99
306ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AB 1 81 C 73 0 0 2 B1 0 0 12 1A 4
109ms
 37 0 0 3 22 B A9 3 AD 4 2E 3 20 EF FB 0 0 0 0 B 6E 2 A2 3 16 8 A8 1 90 C 5C A0 0 1 2C 3 81 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 10
322ms
 82 11 F1 21 1 A6
1595ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AC 1 7E C 73 0 0 2 B2 0 0 12 37 4 3E 0 0
112ms
 3 1E B B4 3 AC 4 2F 3 20 EF F1 0 0 0 0 B 2E 2 A1 3 14 8 A8 1 90 C 5C A0 0 1 2C 3 9 A9 8 1 30 0 0 1 7F B F8 3 AD 0 2 76
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 80 C 72 0 0 2 B2 0 0 12 43 4 3A 0 0 3 22 B A4
111ms
 3 AD 4 2E 3 20 EF 30 0 0 0 0 B 71 3 94 3 27 8 AB 1 90 C 5C A0 0 1 2C 3 81 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 77
306ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 7D C 72 0 0 2 B4 0 0 12 40 4 3A 0 0 3 1F B AF 3 AC
113ms
 4 2F 3 20 F0 45 0 0 0 0 B 71 3 90 3 24 8 AA 1 90 C 5C A0 0 1 2C 3 90 A9 8 1 30 0 0 1 7E B F9 3 AD 0 2 99
304ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AC 1 7D C 72 0 0 2 B3 0 0 11 E5 4 3A 0 0 3 24 B A4
112ms
 3 AC 4 2E 3 20 EF D1 0 0 0 0 B 2F 2 9C 3 E 8 A8 1 91 C 5C A0 0 1 2C 3 4E AD 8 1 30 0 0 1 7E B FA 3 AC 0 2 33
382ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 7A C 73 0 0 2 B4 0 0 11 DF 4 3A 0 0 3 24 B
111ms
 A0 3 AC 4 2E 3 20 EF BC 0 0 0 0 B B5 3 70 3 A 8 A8 1 92 C 5C A0 0 1 2C 3 42 A9 8 1 30 0 0 1 7D B F8 3 AC 0 2 59
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 81 C 73 0 0 2 B1 0 0 12 4C 4 3A 0 0 3 1D B B1 3 AC
114ms
 4 2F 3 20 F0 A9 0 0 0 0 B 71 2 CC 3 37 8 AC 1 8E C 5C A0 0 1 2C 3 BF AD 8 1 30 0 0 1 7F B F9 3 AC 0 2 8C
313ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 7C C 74 0 0 2 B4 0 0 12 3A 4 39 0 0 3 20 B B1
113ms
 3 AC 4 2F 3 20 F0 4A 0 0 0 0 B 71 3 96 3 25 8 AA 1 90 C 5C A0 0 1 2C 3 78 A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 88
296ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 80 C 73 0 0 2 B3 0 0 12 C 4
109ms
 3A 0 0 3 1F B AE 3 AC 4 2F 3 20 F0 99 0 0 0 0 B 70 2 C7 3 34 8 AA 1 8F C 5C A0 0 1 2C 3 59 AD 8 1 30 0 0 1 7E B F8 3 AC 0 2 CA
447ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 7E C 73 0 0 2 B2 0 0 12 1 4 39
112ms
 0 0 3 1F B AC 3 AC 4 2F 3 20 F0 55 0 0 0 0 B 31 3 90 3 27 8 AB 1 8F C 5C A0 0 1 2C 3 6C A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 3
300ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 80 C 74 0 0 2 B2 0 0 12 3F 4 38 0 0 3 21 B AC 3 AC
111ms
 4 2E 3 20 F0 2B 0 0 0 0 B 2C 2 B0 3 1F 8 AA 1 90 C 5C A0 0 1 2C 3 57 A9 8 1 30 0 0 1 7E B F9 3 AC 0 2 18
331ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 79 C 74 0 0 2 B4 0 0 12 4A 4 37 0 0 3
112ms
 1F B B3 3 AD 4 2F 3 20 F0 6F 0 0 0 0 B 71 3 93 3 2C 8 A9 1 8F C 5C A0 0 1 2C 3 4A A9 8 1 30 0 0 1 7F B F8 3 AD 0 2 90
303ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 7F C 74 0 0 2 B2 0 0 11 E6 4
109ms
 3A 0 0 3 22 B A7 3 AC 4 2E 3 20 EF F1 0 0 0 0 B 70 2 A6 3 14 8 A9 1 90 C 5C A0 0 1 2C 3 60 A9 8 1 30 0 0 1 7D B F8 3 AD 0 2 B6
306ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 79 C 73 0 0 2 B4 0 0 12 65 4 3A 0 0
111ms
 3 1D B AE 3 AC 4 2F 3 20 F0 75 0 0 0 0 B 71 3 A7 3 35 8 AB 1 90 C 5C A0 0 1 2C 3 96 A9 8 1 30 0 0 1 7F B F8 3 AD 0 2 19
292ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 80 C 74 0 0 2 B3 0 0 12 0 4 3A 0 0 3 21
112ms
 B AA 3 AD 4 2E 3 20 F0 10 0 0 0 0 B 70 3 7D 3 1A 8 A9 1 90 C 5C A0 0 1 2C 3 66 A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 DC
304ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 83 C 74 0 0 2 B2 0 0 12 3F 4 39 0 0 3 21 B
111ms
 A8 3 AC 4 2E 3 20 F0 0 0 0 0 0 B 2E 2 AC 3 25 8 AB 1 8F C 5C A0 0 1 2C 3 8F A9 8 1 30 0 0 1 7E B F6 3 AC 0 2 26
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 78 C 74 0 0 2 B4 0 0 11 F2 4 3D 0 0 3 1E B AF 3 AD
112ms
 4 2F 3 20 F0 7A 0 0 0 0 B 70 3 9F 3 1F 8 AA 1 8F C 5C A0 0 1 2C 3 81 A9 8 1 30 0 0 1 7E B F8 3 AC 0 2 78
289ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 81 C 73 0 0 2 B3 0 0 11 E1 4
110ms
 3A 0 0 3 21 B AD 3 AC 4 2F 3 20 F0 3A 0 0 0 0 B 70 2 B8 3 22 8 AA 1 91 C 5C A0 0 1 2C 3 8A AD 8 1 30 0 0 1 7E B F8 3 AC 0 2 55
322ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 88 C 74 0 0 2 B1 0 0 12 1A 4 3A 0 0 3 1F B AD 3 AC
111ms
 4 2F 3 20 F0 55 0 0 0 0 B 70 3 97 3 28 8 AB 1 8F C 5C A0 0 1 2C 3 95 AD 8 1 30 0 0 1 7E B F8 3 AC 0 2 9E
291ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C AD 1 79 C 74 0 0 2 B3 0 0 12 92 4 39
110ms
 0 0 3 22 B AC 3 AC 4 2E 3 20 F0 0 0 0 0 0 B B1 3 78 3 17 8 A9 1 90 C 5C A0 0 1 2C 3 69 AD 8 1 30 0 0 1 7E B F6 3 AC 0 2 94
322ms
 82 11 F1 21 1 A6
1596ms
 82 11 F1 21 1 A6 80 21 11 4C 61 1 0 0 0 0 0 0 0 0 C AF 1 79 C 75 0 0 2 B4 0 0 12 7 4 3A 0 0 3 1E B
111ms
 AD 3 AC 4 2F 3 20 F0 75 0 0 0 0 B 2E 3 A3 3 2E 8 AB 1 8F C 5C A0 0 1 2C 3 AA A9 8 1 30 0 0 1 7F B F8 3 AD 0 2 B2
259ms
 82 11 F1 21 1 A6
1579ms
 82 11 F1 21 1 A6
341ms
 82 11 F1 21 1 A6
341ms
 82 11 F1 21 1 A6 80 21 11 4C 61 1 0 0 0 0 0 0 0 0 C B0 1 85 C 76 0 0 2 B2 0 0 12 4F 4 3C
111ms
 0 0 3 21 B AB 3 AD 4 2E 3 20 F0 2B 0 0 0 0 B 70 3 91 3 19 8 A9 1 8E C 5C A0 0 1 2C 3 17 A9 8 1 30 0 0 1 7E B F6 3 AC 0 2 40
308ms
 82 11 F1 21 1 A6
1595ms
 82 11 F1 21 1 A6
356ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B1 1 7A C 76 0 0 2 B1 0 0 12 6 4 3A 0 0 3 1F B
112ms
 A6 3 AD 4 2E 3 20 F0 20 0 0 0 0 B 71 3 89 3 1D 8 AA 1 8F C 5C A0 0 1 2C 3 1F AD 8 1 30 0 0 1 7E B F6 3 AD 0 2 B4
307ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B0 1 7A C 76 0 0 2 B4 0 0 11 EC 4 37 0 0 3 1F
111ms
 B B0 3 AC 4 2F 3 20 F0 75 0 0 0 0 B 71 3 8E 3 2D 8 AB 1 90 C 5C A0 0 1 2C 3 A7 AD 8 1 30 0 0 1 7E B F6 3 AC 0 2 95
304ms
 82 11 F1 21 1 A6
1580ms
 82 11 F1 21 1 A6
277ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B2 1 7B C 77 0 0 2 B4 0 0 12 5F
110ms
 4 3A 0 0 3 1F B AD 3 AC 4 2F 3 20 F0 5A 0 0 0 0 B 2F 3 97 3 28 8 AB 1 8F C 5C A0 0 1 2C 3 98 A9 8 1 30 0 0 1 7E B F5 3 AC 0 2 9F
293ms
 82 11 F1 21 1 A6
1580ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B2 1 87 C 79 0 0 2 B3 0 0 11 E6 4 39 0 0 3 1D B AD 3 AD 4
113ms
 2F 3 20 F0 8A 0 0 0 0 B 2C 2 BB 3 33 8 AA 1 8E C 5C A0 0 1 2C 3 4E A9 8 1 30 0 0 1 7E B F5 3 AC 0 2 3F
703ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B2 1 84 C 77 0 0 2 B5 0 0 12 34 4
111ms
 3E 0 0 3 21 B A7 3 AD 4 2E 3 20 EF FB 0 0 0 0 B 73 3 78 3 16 8 A8 1 91 C 5C A0 0 1 2C 3 89 A9 8 1 30 0 0 1 7E B F5 3 AD 0 2 22
1100ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B4 1 84 C 77 0 0 2 B4 0 0 12 6A 4 3A 0 0
112ms
 3 1F B A6 3 AD 4 2E 3 20 F0 1B 0 0 0 0 B 71 3 80 3 1C 8 AA 1 8E C 5C A0 0 1 2C 3 41 A9 8 1 30 0 0 1 7E B F5 3 AD 0 2 36
298ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B4 1 7A C 79 0 0 2 B3 0 0 12 3F 4 3A 0 0 3 21 B A8 3 AC
111ms
 4 2E 3 20 F0 16 0 0 0 0 B 70 2 A0 3 17 8 A9 1 90 C 5C A0 0 1 2C 3 69 A9 8 1 30 0 0 1 7E B F5 3 AC 0 2 41
1087ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B4 1 82 C 79 0 0 2 B2 0 0 12 25 4 3E
109ms
 0 0 3 20 B A6 3 AD 4 2E 3 20 F0 0 0 0 0 0 B 71 3 7E 3 17 8 A9 1 8F C 5C A0 0 1 2C 3 69 A9 8 1 30 0 0 1 7E B F5 3 AD 0 2 FA
525ms
 82 11 F1 21 1 A6 80 F1 11 4C 61 1 0 0 0 0 0 0 0 0 C B4 1 7A C 79 0 0 2 B2 0 0 12 B 4 3A 0
111ms
 0 3 22 B A6 3 AC 4 2E 3 20 EF DB 0 0 0 0 B 73

 

MaksVV
Offline
Зарегистрирован: 06.08.2015

вот ттут может задержки 113мс раскоментиовать, в середине сообщений. Так же как в снифе мы видим

viki13viki
Offline
Зарегистрирован: 14.11.2016

чета я туплю, где ты имеешь в виду? рвать отвте 21 00 на две чатси и между ними задержку 113 м/с? на определеннном байте сделать задержку?

MaksVV
Offline
Зарегистрирован: 06.08.2015

да

viki13viki
Offline
Зарегистрирован: 14.11.2016

щас попробуем

MaksVV
Offline
Зарегистрирован: 06.08.2015

может буфер у прогаммы опком не успевает нормально байты принимать, хотя сомневаюсь конечно. А что делать, кому щас легко

viki13viki
Offline
Зарегистрирован: 14.11.2016

тут ты прав. кому щас легко :)

viki13viki
Offline
Зарегистрирован: 14.11.2016

Да черт побери, это сработало, все стабильно

mySerial.write(messagePIDS[i]);
    if (i==31){  delay (113);Serial.println ("");}
сделал задержку на 31 байте. ДА ДА ДА ДА. MaksVV ТЫ ВЕЛИКИЙ ИЗ ВЕЛИКИХ. начинаю штудировать байты. Напомни мне работу кнопки, щас подцеплю и буду штудировать байты. 
вот скетч
class BUTTON {
public:
//================================================================
static const byte bounce_              =   50; // длительность отслеживания дребезга.
static const byte doubleclick_         =  200; // длительность отслеживания двойного клика.
static const unsigned long timer_      = 1200000; // длительность отслеживания неактивности.
static const unsigned int retention_   = 1600; // длительность отслеживания нажатия и удержания.
//================================================================
boolean click_down;
boolean click_up;
boolean doubleclick;
boolean timer;
boolean retention;
//=================================
unsigned long m;
boolean  p;
boolean  b;
boolean dc;
byte     c;
boolean  t;
boolean  r;
//=================================
byte _pb;
//=================================
BUTTON(byte pb) {
_pb = pb;
pinMode(_pb, INPUT);
digitalWrite(_pb, 1);
//====
click_down      = 0;
click_up        = 0;
doubleclick     = 0;
timer           = 0;
retention       = 0;
//====
m  =      millis();
p  = digitalRead(_pb);
b  =                0;
dc =                0;
c  =                0;
t  =                0;
r  =                0;
//====
}

void read() {
//=======================================================
unsigned long nm =      millis();
boolean       np = digitalRead(_pb);
//=================
boolean nb  = 0;
boolean ndc = 0;
boolean nt  = 0;
boolean nr  = 0;
//================
click_down  = 0;
click_up    = 0;
doubleclick = 0;
timer       = 0;
retention   = 0;
//=================
if (np != p) {p = np; m = nm; }
//=======================================================
if (nm - m > bounce_) {nb = 1;}
if (nm - m > doubleclick_) {ndc = 1;}
if (ndc != dc) {dc = ndc; if (dc == 1) {c = 0;}}
if (nb != b) {b = nb;
if (p == 0 && b == 0) {click_down = 1;
++c;      if (c == 2) {c = 0; doubleclick = 1;}
}
if (p == 1 && b == 1) {click_up = 1;}
}
//=======================================================
if (nm - m > timer_) {nt = 1;}
if (nt != t) {t = nt;
if (p == 1 && t == 1) {timer = 1;}
}
//=======================================================
if (nm - m > retention_) {nr = 1;}
if (nr != r) {r = nr;
if (p == 0 && r == 1) {retention = 1;}
}
//=======================================================
}
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~






BUTTON button(12); // вход кнопки (digital pin arduino)

int bytenumber = 0;


///////////////////////////////////////////////////////////////////////
// Всё что выше для считывания кнопки 
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); //R,T
unsigned long prevTimedelay = 0; 

int length5 = 5;
int length7 = 7;
byte MessageRx[110] = {0};  // массив байтов принимаемого сообщения

byte messageCOMUN[7] = {0x83, 0xF1, 0x11, 0xC1, 0x6B, 0x8F, 0x40};
byte messagePRES[5] = {0x81, 0xF1, 0x11, 0x7E, 0x01};

int length44 = 44;
byte messageIDEN1[44] = {0xA8, 0xF1, 0x11, 0x5A, 0x81, 0x04, 0x90, 0x6F, 0x62, 0x03, 0x91, 0x6B, 0x03,
0x92, 0x6B, 0x03, 0x93, 0x01, 0x03, 0x94, 0x6A, 0x03, 0x95, 0x02, 0x03, 0x96, 0x66, 0x03, 0x97, 0x69, 
0x03, 0x98, 0x6A, 0x03, 0x99, 0x44, 0x03, 0x9A, 0x02, 0x03, 0x9F, 0x6A, 0xFF, 0xAC};
                       //  A8 F1 11 5A 81 04 90 6F 62 03 91 6B 03
                       //  92 6B 03 93 01 03 94 6A 03 95 02 03 96 66 03 97 69 
                       //  03 98 6A 03 99 44 03 9A 02 03 9F 6A FF AC 

int length100 = 100;

byte messageIDEN2[100] = {0x80, 0xF1, 0x11, 0x5F, 0x5A, 0x80, 0x57, 0x30, 0x4C, 0x30, 0x54, 0x47, 0x46, 0x37,
0x35, 0x31, 0x32, 0x32, 0x33, 0x33, 0x37, 0x31, 0x34, 0x32, 0x34, 0x34, 0x31, 0x37, 0x31, 0x36, 0x39, 0x20,
0x50, 0x44, 0x42, 0x4F, 0x53, 0x20, 0x20, 0x30, 0x31, 0x30, 0x35, 0x30, 0x35, 0xFF, 0x4B, 0x4D, 0x37, 0x4D,
0x33, 0x30, 0x34, 0x30, 0x5F, 0x53, 0x00, 0x06, 0x42, 0x30, 0x31, 0x30, 0x31, 0x35, 0x59, 0x32, 0x30, 0x44,
0x54, 0x48, 0x20, 0x44, 0x33, 0x53, 0x30, 0x30, 0x31, 0x30, 0x30, 0x36, 0x39, 0x34, 0x30, 0x20, 0x07, 0x07,
0x25, 0x05, 0x48, 0x30, 0x32, 0x38, 0x31, 0x30, 0x031, 0x30, 0x32, 0x36, 0x38, 0xFF};


int length83 = 82;
byte messagePIDS[82] = {0x80, 0xF1, 0x11, 0x4C, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x0C, 0x37, 0x01, 0x79, 0x0C, 0xEB, 0x00, 0x00, 0x02, 0xB3, 0x00, 0x00, 0x11, 0x89, 0x04, 0x30, 0x00, 0x00, 
0x03, 0x20, 0x0B, 0x55, 0x03, 0xA3, 0x04, 0x2D, 0x03, 0x20, 0xEE, 0xB9, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x35, 
0x03, 0x0A, 0x02, 0xD9, 0x08, 0xA3, 0x01, 0x90, 0x0C, 0x27, 0xA0, 0x00, 0x01, 0x2C, 0x02, 0x76, 0xAD, 0x08, 
0x01, 0x30, 0x00, 0x03, 0x01, 0x7B, 0x0B, 0xDB, 0x03, 0xA3, 0x00, 0x02, 0x1F};

int waitbyte=5;

unsigned long TimeLED, timerLED = 0;
bool timerenabledLED = 0;
#define TIMEREXPIRED_LED (TimeLED - timerLED)> 1200 // время включения светодиода если кнопка длительно нажата, мс

void setup() {
 Serial.begin (115200);
mySerial.begin (10400);
pinMode (13, OUTPUT);
digitalWrite (13,0);
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");
}

void loop() {
button.read();
TimeLED = millis ();

//////////////////////тут поменять на сообщение 21 00
if (button.click_down) { messagePIDS[bytenumber]++;  } // коротким нажатием на кнопку изменяем значение выбранного байта 
if (button.retention) { bytenumber++; digitalWrite (13,1) ; timerLED=TimeLED; timerenabledLED=1; 
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");} // длительным нажатием на кнопку изменяем номер байта, который будем менять

if (timerenabledLED){ if (TIMEREXPIRED_LED) {timerenabledLED=0;digitalWrite (13,0);}}



if (mySerial.available()) {
      delay(100);
     int k=0;
     byte inbyte=0;
     
  while( mySerial.available() && k < 100) {
     inbyte = mySerial.read();
    MessageRx[k] = inbyte;
    k++;   }

      Serial.print ("Recieve:   ");

    for (int i = 0; i < k; i++) {
    Serial.print(MessageRx[i],HEX); Serial.print (" ");} 
    Serial.println ("");

if ((MessageRx[1]==0x81 && MessageRx[2]==0x11 && MessageRx[3]==0xF1 && MessageRx[4]==0x81 && MessageRx[5]==0x04)|| (MessageRx[0]==0x81 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x81 && MessageRx[4]==0x04)) {
  Serial.println ("Prinyat zapros init!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length7; i++) {
    mySerial.write(messageCOMUN[i]);
    Serial.print(messageCOMUN[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
if (MessageRx[0]==0x81 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x3E && MessageRx[4]==0xC1) {
  Serial.println ("Prinyat zapros prisutstvia!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length5; i++) {
    mySerial.write(messagePRES[i]);
    Serial.print(messagePRES[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x81 && MessageRx[5]==0x1F) {
  Serial.println ("Prinyat zapros identificacion 1!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length44; i++) {
    mySerial.write(messageIDEN1[i]);
    Serial.print(messageIDEN1[i],HEX); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
   Serial.print ("Otvechayu DEC:    ");
    for (int i = 0; i < length44; i++) {
   
    Serial.print(messageIDEN1[i]); Serial.print ("  ");
   //delay (waitbyte); 
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x80 && MessageRx[5]==0x1E) {
  Serial.println ("Prinyat zapros identificacion 2!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length100; i++) {
    mySerial.write(messageIDEN2[i]);
    Serial.print(messageIDEN2[i],HEX); Serial.print ("  ");
 //   if (i==31){  delay (113);Serial.println ("");}
 //   if (i==92){  delay (113);Serial.println ("");}
     //delay (waitbyte); 
   } 
    Serial.println("");
  Serial.print ("Otvechayu DEC:    ");
 for (int i = 0; i < length100; i++) {
    
    Serial.print(messageIDEN2[i]); Serial.print ("  ");
    
     //delay (waitbyte); 
   } 
   Serial.println("");
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x21 && MessageRx[4]==0x01 && MessageRx[5]==0xA6) {
  Serial.println ("Prinyat zapros datos!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length83; i++) {
    mySerial.write(messagePIDS[i]);
    if (i==31){  delay (113);Serial.println ("");}
    Serial.print(messagePIDS[i],HEX); Serial.print ("  ");
//   /delay (waitbyte); 
   } 
    Serial.println("");
 
   }
}
}

 

 

viki13viki
Offline
Зарегистрирован: 14.11.2016

чета кнопочка не там гле нужно меняет, то заголовки исчезаю то кусок интерфейса.

MaksVV
Offline
Зарегистрирован: 06.08.2015

Короче нужно изенять байты, начиная с 3-го. Поставь в строке 95

int bytenubmer =3;  если не прокатит 4 пробуй

MaksVV
Offline
Зарегистрирован: 06.08.2015

Крутяк что заработало

MaksVV
Offline
Зарегистрирован: 06.08.2015

приду домой попробую написать скетч чтобы не через кнопку, а с компа можно было байты изменять, т.е. дуня будет получать команды на изменение байта по Serial. 

viki13viki
Offline
Зарегистрирован: 14.11.2016

я без кнопки менял в скетче , загружал и опком на ходу мне выдает изменение. почти закончил, щас выложу, это кртяк из крутяков. 

viki13viki
Offline
Зарегистрирован: 14.11.2016

вот расшифровка. начинаю работать над скетчем.

int length83 = 82;
byte messagePIDS[82] = {0x80, 0xF1, 0x11, 0x4C, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x0C, //Coolant Temperature
0x37, //Coolant Temperature
0x01, //Actual injection start
0x92, //Actual injection start
0x0C, //Engine Oil Temperature
0xEB, //Engine Oil Temperature
0x00, //Accelerator Position Sensor Signal
0x00, //Accelerator Position Sensor Signal
0x02, //System Voltage
0xB3, //System Voltage
0x00, //High Pressure Diagnosis 1
0x00, //High Pressure Diagnosis 1
0x11, //Mass Air Flow Sensor
0x89, //Mass Air Flow Sensor
0x04, //Boost Pressure
0x30, //Boost Pressure
0x00, //High Pressure Diagnosis 2
0x00, //High Pressure Diagnosis 2
0x03, //Engine Speed
0x20, //Engine Speed
0x0B, //EGR Command (Exhaust-Gas Recirculation Command)
0x55, //EGR Command (Exhaust-Gas Recirculation Command)
0x03, //Barometer Sensor
0xA3, //Barometer Sensor
0x04, //Boost Pressure Command
0x2D, //Boost Pressure Command
0x03, //Desired Engine Idle Speed
0x20, //Desired Engine Idle Speed
0xEE, 
0xB9, 
0x00, //Vehicle Speed
0x00, //Vehicle Speed
0x00, //Vehicle Speed Command
0x00, //Vehicle Speed Command
0x0C, 
0x35, 
0x03, //Desired Injection Quantity
0x0A, //Desired Injection Quantity
0x02, //Injection Quantity
0xD9, //Injection Quantity
0x08, //Start of Delivery
0xA3, //Start of Delivery
0x01, //Pump Speed
0x90, //Pump Speed
0x0C, //Fuel Temperature
0x27, //Fuel Temperature
0xA0, 
0x00, 
0x01, //EGR Pulse Ratio (Exhaust Gas Recirculation)
0x5C, //EGR Pulse Ratio (Exhaust Gas Recirculation)
0x02, //Swirl Level Control Solenoid Valve Pulse Ratio
0x76, //Swirl Level Control Solenoid Valve Pulse Ratio
0xAD, 
0x08, 
0x01, 
0x30, 
0x00, //Pulse Ratio Boost Pressure Solenoid Valve
0x03, //Pulse Ratio Boost Pressure Solenoid Valve
0x01, //Desired Injection Start
0x7B, //Desired Injection Start
0x0B, //Intake Air Temperature
0xDB, //Intake Air Temperature
0x03, 
0xA3, 
0x00, 
0x02, 
0x1F};

каждый второй байт это десятичный байт, после запятой

MaksVV
Offline
Зарегистрирован: 06.08.2015

KWP капитулировал. Хакнули мы этот протокол, е-ее!!!

viki13viki
Offline
Зарегистрирован: 14.11.2016

точняк. с потрохами блин на... 

MaksVV
Offline
Зарегистрирован: 06.08.2015

а ты когда опком цепляешь к эмулятору 12В подаешь?

viki13viki
Offline
Зарегистрирован: 14.11.2016

щас схемку нарисую

MaksVV
Offline
Зарегистрирован: 06.08.2015

и нарисуй или сфоткай ещё распиновку L9637D а то я не могу ключик найти откуда считать ноги. Такто распиноквка у меня есть из даташита. Я подозреваю что у меня не робит, потому что на китайском бредборде собираю, там блин контакнты везде плохие. Надо плату разводить

viki13viki
Offline
Зарегистрирован: 14.11.2016

с ключиком просто. ставь надписью к себе и срез с твоей сторы должен быть, левая нижняя нога это 1. щас может сфоткаю.

viki13viki
Offline
Зарегистрирован: 14.11.2016

нарисовал как смог. фотка выходит г.... по этому там же нарисовал L9637D и диод для оринтеровки, схема адаптера из моего 8-го поста. СХЕМА ПОДКЛЮЧЕНИЯ ОП КОМ +АРДУИНО+АДАПТЕР К-ЛИНЕ+БЛОК ПИТАНИЯ 12В

так же выкладываю рабочий скетч, как говорится EMUL.MaksVV vercion final

class BUTTON {
public:
//================================================================
static const byte bounce_              =   50; // длительность отслеживания дребезга.
static const byte doubleclick_         =  200; // длительность отслеживания двойного клика.
static const unsigned long timer_      = 1200000; // длительность отслеживания неактивности.
static const unsigned int retention_   = 1600; // длительность отслеживания нажатия и удержания.
//================================================================
boolean click_down;
boolean click_up;
boolean doubleclick;
boolean timer;
boolean retention;
//=================================
unsigned long m;
boolean  p;
boolean  b;
boolean dc;
byte     c;
boolean  t;
boolean  r;
//=================================
byte _pb;
//=================================
BUTTON(byte pb) {
_pb = pb;
pinMode(_pb, INPUT);
digitalWrite(_pb, 1);
//====
click_down      = 0;
click_up        = 0;
doubleclick     = 0;
timer           = 0;
retention       = 0;
//====
m  =      millis();
p  = digitalRead(_pb);
b  =                0;
dc =                0;
c  =                0;
t  =                0;
r  =                0;
//====
}

void read() {
//=======================================================
unsigned long nm =      millis();
boolean       np = digitalRead(_pb);
//=================
boolean nb  = 0;
boolean ndc = 0;
boolean nt  = 0;
boolean nr  = 0;
//================
click_down  = 0;
click_up    = 0;
doubleclick = 0;
timer       = 0;
retention   = 0;
//=================
if (np != p) {p = np; m = nm; }
//=======================================================
if (nm - m > bounce_) {nb = 1;}
if (nm - m > doubleclick_) {ndc = 1;}
if (ndc != dc) {dc = ndc; if (dc == 1) {c = 0;}}
if (nb != b) {b = nb;
if (p == 0 && b == 0) {click_down = 1;
++c;      if (c == 2) {c = 0; doubleclick = 1;}
}
if (p == 1 && b == 1) {click_up = 1;}
}
//=======================================================
if (nm - m > timer_) {nt = 1;}
if (nt != t) {t = nt;
if (p == 1 && t == 1) {timer = 1;}
}
//=======================================================
if (nm - m > retention_) {nr = 1;}
if (nr != r) {r = nr;
if (p == 0 && r == 1) {retention = 1;}
}
//=======================================================
}
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~






BUTTON button(12); // вход кнопки (digital pin arduino)

int bytenumber = 0;


///////////////////////////////////////////////////////////////////////
// Всё что выше для считывания кнопки 
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); //R,T
unsigned long prevTimedelay = 0; 

int length5 = 5;
int length7 = 7;
byte MessageRx[110] = {0};  // массив байтов принимаемого сообщения

byte messageCOMUN[7] = {0x83, 0xF1, 0x11, 0xC1, 0x6B, 0x8F, 0x40};
byte messagePRES[5] = {0x81, 0xF1, 0x11, 0x7E, 0x01};

int length44 = 44;
byte messageIDEN1[44] = {0xA8, 0xF1, 0x11, 0x5A, 0x81, 0x04, 0x90, 0x6F, 0x62, 0x03, 0x91, 0x6B, 0x03,
0x92, 0x6B, 0x03, 0x93, 0x01, 0x03, 0x94, 0x6A, 0x03, 0x95, 0x02, 0x03, 0x96, 0x66, 0x03, 0x97, 0x69, 
0x03, 0x98, 0x6A, 0x03, 0x99, 0x44, 0x03, 0x9A, 0x02, 0x03, 0x9F, 0x6A, 0xFF, 0xAC};
                       //  A8 F1 11 5A 81 04 90 6F 62 03 91 6B 03
                       //  92 6B 03 93 01 03 94 6A 03 95 02 03 96 66 03 97 69 
                       //  03 98 6A 03 99 44 03 9A 02 03 9F 6A FF AC 

int length100 = 100;

byte messageIDEN2[100] = {0x80, 0xF1, 0x11, 0x5F, 0x5A, 0x80, 0x57, 0x30, 0x4C, 0x30, 0x54, 0x47, 0x46, 0x37,
0x35, 0x31, 0x32, 0x32, 0x33, 0x33, 0x37, 0x31, 0x34, 0x32, 0x34, 0x34, 0x31, 0x37, 0x31, 0x36, 0x39, 0x20,
0x50, 0x44, 0x42, 0x4F, 0x53, 0x20, 0x20, 0x30, 0x31, 0x30, 0x35, 0x30, 0x35, 0xFF, 0x4B, 0x4D, 0x37, 0x4D,
0x33, 0x30, 0x34, 0x30, 0x5F, 0x53, 0x00, 0x06, 0x42, 0x30, 0x31, 0x30, 0x31, 0x35, 0x59, 0x32, 0x30, 0x44,
0x54, 0x48, 0x20, 0x44, 0x33, 0x53, 0x30, 0x30, 0x31, 0x30, 0x30, 0x36, 0x39, 0x34, 0x30, 0x20, 0x07, 0x07,
0x25, 0x05, 0x48, 0x30, 0x32, 0x38, 0x31, 0x30, 0x031, 0x30, 0x32, 0x36, 0x38, 0xFF};


int length81 = 81;
byte messagePIDS[81] = {0x80, 0xF1, 0x11, 0x4C, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x0C, //Coolant Temperature
0x37, //Coolant Temperature
0x01, //Actual injection start
0x92, //Actual injection start
0x0C, //Engine Oil Temperature
0xEB, //Engine Oil Temperature
0x00, //Accelerator Position Sensor Signal
0x00, //Accelerator Position Sensor Signal
0x02, //System Voltage
0xB3, //System Voltage
0x00, //High Pressure Diagnosis 1
0x00, //High Pressure Diagnosis 1
0x11, //Mass Air Flow Sensor
0x89, //Mass Air Flow Sensor
0x04, //Boost Pressure
0x30, //Boost Pressure
0x00, //High Pressure Diagnosis 2
0x00, //High Pressure Diagnosis 2
0x03, //Engine Speed
0x20, //Engine Speed
0x0B, //EGR Command (Exhaust-Gas Recirculation Command)
0x55, //EGR Command (Exhaust-Gas Recirculation Command)
0x03, //Barometer Sensor
0xA3, //Barometer Sensor
0x04, //Boost Pressure Command
0x2D, //Boost Pressure Command
0x03, //Desired Engine Idle Speed
0x20, //Desired Engine Idle Speed
0xEE, 
0xB9, 
0x00, //Vehicle Speed
0x00, //Vehicle Speed
0x00, //Vehicle Speed Command
0x00, //Vehicle Speed Command
0x0C, 
0x35, 
0x03, //Desired Injection Quantity
0x0A, //Desired Injection Quantity
0x02, //Injection Quantity
0xD9, //Injection Quantity
0x08, //Start of Delivery
0xA3, //Start of Delivery
0x01, //Pump Speed
0x90, //Pump Speed
0x0C, //Fuel Temperature
0x27, //Fuel Temperature
0xA0, 
0x00, 
0x01, //EGR Pulse Ratio (Exhaust Gas Recirculation)
0x5C, //EGR Pulse Ratio (Exhaust Gas Recirculation)
0x02, //Swirl Level Control Solenoid Valve Pulse Ratio
0x76, //Swirl Level Control Solenoid Valve Pulse Ratio
0xAD, 
0x08, 
0x01, 
0x30, 
0x00, //Pulse Ratio Boost Pressure Solenoid Valve
0x03, //Pulse Ratio Boost Pressure Solenoid Valve
0x01, //Desired Injection Start
0x7B, //Desired Injection Start
0x0B, //Intake Air Temperature
0xDB, //Intake Air Temperature
0x03, 
0xA3, 
0x00, 
0x02, 
0x1F};

int waitbyte=5;

unsigned long TimeLED, timerLED = 0;
bool timerenabledLED = 0;
#define TIMEREXPIRED_LED (TimeLED - timerLED)> 1200 // время включения светодиода если кнопка длительно нажата, мс

void setup() {
 Serial.begin (115200);
mySerial.begin (10400);
pinMode (13, OUTPUT);
digitalWrite (13,0);
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");
}

void loop() {
button.read();
TimeLED = millis ();

if (button.click_down) { messagePIDS[bytenumber]++;  } // коротким нажатием на кнопку изменяем значение выбранного байта 
if (button.retention) { bytenumber++; digitalWrite (13,1) ; timerLED=TimeLED; timerenabledLED=1; 
Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println ("");} // длительным нажатием на кнопку изменяем номер байта, который будем менять

if (timerenabledLED){ if (TIMEREXPIRED_LED) {timerenabledLED=0;digitalWrite (13,0);}}



if (mySerial.available()) {
      delay(100);
     int k=0;
     byte inbyte=0;
     
  while( mySerial.available() && k < 100) {
     inbyte = mySerial.read();
    MessageRx[k] = inbyte;
    k++;   }

      Serial.print ("Recieve:   ");

    for (int i = 0; i < k; i++) {
    Serial.print(MessageRx[i],HEX); Serial.print (" ");} 
    Serial.println ("");

if ((MessageRx[1]==0x81 && MessageRx[2]==0x11 && MessageRx[3]==0xF1 && MessageRx[4]==0x81 && MessageRx[5]==0x04)|| (MessageRx[0]==0x81 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x81 && MessageRx[4]==0x04)) {
  Serial.println ("Prinyat zapros init!  "); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length7; i++) {
    mySerial.write(messageCOMUN[i]);
    Serial.print(messageCOMUN[i],HEX); Serial.print ("  ");
   } 
    Serial.println("");
 
   }
if (MessageRx[0]==0x81 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x3E && MessageRx[4]==0xC1) {
  Serial.println ("Prinyat zapros prisutstvia!  "); Serial.println (""); 
 //   Serial.print ("Tekuchiy Nomer Byte dlya izmeneniya:   "); Serial.println (bytenumber); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length5; i++) {
    mySerial.write(messagePRES[i]);
    Serial.print(messagePRES[i],HEX); Serial.print ("  ");
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x81 && MessageRx[5]==0x1F) {
  Serial.println ("Prinyat zapros identificacion 1!  "); Serial.println ("");  
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length44; i++) {
    mySerial.write(messageIDEN1[i]);
    Serial.print(messageIDEN1[i],HEX); Serial.print ("  ");
   } 
    Serial.println("");
   Serial.print ("Otvechayu DEC:    ");
    for (int i = 0; i < length44; i++) {
   
    Serial.print(messageIDEN1[i]); Serial.print ("  ");
   } 
    Serial.println("");
 
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x1A && MessageRx[4]==0x80 && MessageRx[5]==0x1E) {
  Serial.println ("Prinyat zapros identificacion 2!  "); Serial.println ("");  
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length100; i++) {
    mySerial.write(messageIDEN2[i]);
    Serial.print(messageIDEN2[i],HEX); Serial.print ("  ");
   } 
    Serial.println("");
  Serial.print ("Otvechayu DEC:    ");
 for (int i = 0; i < length100; i++) {
    
    Serial.print(messageIDEN2[i]); Serial.print ("  ");
    
   } 
   Serial.println("");
   }
   if (MessageRx[0]==0x82 && MessageRx[1]==0x11 && MessageRx[2]==0xF1 && MessageRx[3]==0x21 && MessageRx[4]==0x01 && MessageRx[5]==0xA6) {
  Serial.println ("Prinyat zapros datos!  "); Serial.println (""); 
    Serial.print ("Otvechayu:    ");
  for (int i = 0; i < length81; i++) {
    mySerial.write(messagePIDS[i]);
    if (i==31){  delay (113);Serial.println ("");}
    Serial.print(messagePIDS[i],HEX); Serial.print ("  ");
   } 
    Serial.println("");
 
   }
}
}

работаем дальше.

MaksVV
Offline
Зарегистрирован: 06.08.2015

спасибо за схему, я всё также подключал и распиновку в принципе так же делал. Единственное сопротивление в адаптере у меня не 510 Ом а где то 660 чтоли ,но я думаю это пофиг. Где-то видать не контакт. Я добился только, что в монитор одни FF приходят от диагностики и всё. ладно спаяю получше , должно заработать. Ну как у тебя выводятся формулы ? Если какое то число будет представлено двумя байтами, например обороты двигла, то забить их в переменную можно как в сообщении 25. 

MaksVV
Offline
Зарегистрирован: 06.08.2015

А блин в натуре срез же есть на микрухе)) чето я сразу его не увидел. Выемку с торца искал, а тут срез, Ну всё равно я правильно подключил.

viki13viki
Offline
Зарегистрирован: 14.11.2016

Щас с формулами сяду разберутся. Есть значения из опком, по ним и буду ориентироваться. А потом скетч

viki13viki
Offline
Зарегистрирован: 14.11.2016

А пробовал менять RX TX местами? Глупый вопрос, но все же.... и прозванивал ли тестером напряжение на микрухе.

MaksVV
Offline
Зарегистрирован: 06.08.2015

Да , пробовал и не раз. но правильно RX дуни (пин 10 по нашему скетчу) к RX адаптера. короче кое как добился чтоб между дунями (подключены через к-лайн адаптеры). летала инфа. Но летает в одну сторону. потом подключил опком, выбрал твой двс, короче он шлет такой инит 0 01 11 01 F1 04.   почему то не 81 а 01. Ну я ему ответил на инит, а опком молчи грит нет связи, видать адаптер только принимает сообщения но не отсылает. Надо паять явно контакта нет

MaksVV
Offline
Зарегистрирован: 06.08.2015

сел рисовать плату K-line CAN сниффера

viki13viki
Offline
Зарегистрирован: 14.11.2016

прикольно. ты гений у тебя все получится, я даже не сомневаюсь.

viki13viki
Offline
Зарегистрирован: 14.11.2016

по формулам, тут другая спецификация, стандартные формулы не канают, тут на каждый пид 2 байта. здесь в пидах 1 байт это целое число а 2 байт это десятичное. единственное что смог прощитать это RPM. стандартная формула это (A*256)+B/4 а здесь (A*256)+B, без деления на четыре. например температура имеет два байт

0x0C, //Coolant Temperature       
0x37, //Coolant Temperature

значение 39 градусов      

0x0С =DEC 12 а 0x37=DEC 55     нужно получить 39   //Coolant Temperature

или вот

0x03, //Desired Injection Quantity                       
0x0A, //Desired Injection Quantity

значение 7,8  mg/strk , как видишь сдесь есть десятичное число

0x03=DEC 3 ,0x0A=DEC 10, как получить это.......

блин.... может есть какието калькуляторы, забить две цыфры и желаемый результат? или подскажи схему подбора расчета. чет я совсем туплю.

 

MaksVV
Offline
Зарегистрирован: 06.08.2015

нужно тенденцию изменения улавливать, надо две температуры, например байты для значения 39 и для зачения 40. так будет проще. для остальных параметров соответсвенно также хотябы по два замера делать

viki13viki
Offline
Зарегистрирован: 14.11.2016

Ок. Завтра сделаю по второму измерения

MaksVV
Offline
Зарегистрирован: 06.08.2015

наверное по формулам пидов надо сюда спрашивать http://www.pccar.ru/showthread.php?t=16704

viki13viki
Offline
Зарегистрирован: 14.11.2016

MaksVV,  почти подобрал все формулы, последнее это *C ,*CA, никак не потдаются.

(A*100)/255
A-40
((A-128)*100)/128
A*3
((A*256)+B)/4
A/2-64
((A*256)+B)/100
(A*256)+B
((A*256)+B)*0,079
((A*256)+B)*10
((A*256)+B)/4
((A*256)+B)*0.05
A-125
(A*50)/100
A-B-40
(((A*256)+B)/100)-4

int length83 = 82;
byte messagePIDS[82] = {0x80, 0xF1, 0x11, 0x4C, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
оригенал   //меняем байт 1//меняем байт 2//название     номер байта    /значение  /формула
--------------------------------------------------------------------------------------------------------------------- 
0x0C, 39   // 0x0F, 116  // 0x0C, 40    //Coolant Temperature   14 байт /*C  
0x37,      // 0X37,      // 0x3A,       //Coolant Temperature 
---------------------------------------------------------------------------------------------------------------------            
0x01, 4,7  // 0x04, 13,7 // 0x01, 4,8   //Actual injection start  16 байт /*CA
0x92,      // 0x92       // 0x99,       //Actual injection start
---------------------------------------------------------------------------------------------------------------------
0x0C, 57   // 0x0F, 134  // 0x0F, 58    //Engine Oil Temperature   18 байт/ *C 
0xEB,      // 0xEB       // 0xEE,       //Engine Oil Temperature
---------------------------------------------------------------------------------------------------------------------
0x00, 0    // 0x0A, 25,6 // 0x00, 0,1   //Accelerator Position Sensor Signal 20 байт /% /((256*A)+B)/100 0k
0x00,      // 0x00       // 0x0A,       //Accelerator Position Sensor Signal
---------------------------------------------------------------------------------------------------------------------
0x02, 14,1 //System Voltage                       
0xB3,      //System Voltage
---------------------------------------------------------------------------------------------------------------------
0x00, //High Pressure Diagnosis 1
0x00, //High Pressure Diagnosis 1
---------------------------------------------------------------------------------------------------------------------
0x11, 499  // 0x14, 526  // 0x11, 450    //Mass Air Flow Sensor  26 байт/ mg/strk/ ((256*A)+B)/10 0k
0x89,      // 0x89,      // 0x99         //Mass Air Flow Sensor
---------------------------------------------------------------------------------------------------------------------
0x04, 1,1  // 0x07, 1,8  // 0x04, 1,2    //Boost Pressure   28 байт/ bar/ ((256*A)+B)/1000 0k
0x30,      // 0x30       // 0x80         //Boost Pressure
---------------------------------------------------------------------------------------------------------------------
0x00, //High Pressure Diagnosis 2
0x00, //High Pressure Diagnosis 2
---------------------------------------------------------------------------------------------------------------------
0x03, 800  //Engine Speed     32 байт/ RPM / (256*A)+B  ok
0x20,      //Engine Speed
---------------------------------------------------------------------------------------------------------------------
0x0B, 290  // 0x0E, 367  // 0x0E, 296    //EGR Command (Exhaust-Gas Recirculation Command)34 байт/  mg/strk /((256*A)+B)/10 0k
0x55,      // 0x55,      // 0x90,        //EGR Command (Exhaust-Gas Recirculation Command)
---------------------------------------------------------------------------------------------------------------------
0x03, 0,9  // 0x06, 1,7  // 0x03, 0,8    //Barometer Sensor  36 байт/ bar /((256*A)+B)/1000 0k
0xA3,      // 0xA3       // 0x13,        //Barometer Sensor
---------------------------------------------------------------------------------------------------------------------
0x04, 1,1  // 0x07, 1,8  // 0x04, 1,2    //Boost Pressure Command  38 байт/ bar/ ((256*A)+B)/1000 0k
0x2D,      // 0x2D       // 0x8D         //Boost Pressure Command
---------------------------------------------------------------------------------------------------------------------
0x03, 800  //Desired Engine Idle Speed    40 байт/ RPM / (256*A)+B  ok
0x20,      //Desired Engine Idle Speed
---------------------------------------------------------------------------------------------------------------------
0xEE, 
0xB9, 
---------------------------------------------------------------------------------------------------------------------
0x00, 0    //Vehicle Speed   44 km/h  / A ok
0x00,      //Vehicle Speed
---------------------------------------------------------------------------------------------------------------------
0x00,      //Vehicle Speed Command    46 km/h   / A ok
0x00,      //Vehicle Speed Command
---------------------------------------------------------------------------------------------------------------------
0x0C, 
0x35, 
0x03, 7,8  // 0x07, 18,0 // 0x03, 8,6    //Desired Injection Quantity  50 байт/ mg/strk/ ((256*A)+B)/100 0k
0x0A,      // 0x0A,      // 0x5A         //Desired Injection Quantity
---------------------------------------------------------------------------------------------------------------------
0x02, 7,3  // 0x07, 20,1 // 0x03, 5,9    //Injection Quantity  52 байт/ mg/strk/ ((256*A)+B)/100 0k
0xD9,      // 0xD9,      // 0x49         //Injection Quantity
---------------------------------------------------------------------------------------------------------------------
0x08, 22,1 // 0x11, 45,1 // 0x08, 21,1   //Start of Delivery     54 байт/ *CA/ ((256*A)+B)/100 0k
0xA3,      // 0xA3,      // 0x43         //Start of Delivery
---------------------------------------------------------------------------------------------------------------------
0x01, 400  //Pump Speed     56 байт/ RPM/  (A*255)+B   ok
0x90,      //Pump Speed
---------------------------------------------------------------------------------------------------------------------
0x0C, 38   // 0x0E, 89   // 0x0c, 47     //Fuel Temperature    58 байт /*C    
0x27,      // 0x27,      // 0x87,        //Fuel Temperature
---------------------------------------------------------------------------------------------------------------------
0xA0, 
0x00, 
---------------------------------------------------------------------------------------------------------------------
0x01, 3    // 0x04, 11   // 0x01, 4      //EGR Pulse Ratio (Exhaust Gas Recirculation)  62 байт/ %/ ((256*A)+B)/100 0k 
0x5C,      // 0x5C       // 0x8C         //EGR Pulse Ratio (Exhaust Gas Recirculation)
---------------------------------------------------------------------------------------------------------------------
0x02, 6,3  // 0x06, 16,5 // 0x02, 6,7    //Swirl Level Control Solenoid Valve Pulse Ratio 64 байт/ %/ ((256*A)+B)/100 0k
0x76,      // 0x76       // 0x99,        //Swirl Level Control Solenoid Valve Pulse Ratio
---------------------------------------------------------------------------------------------------------------------
0xAD, 
0x08, 
0x01, 
0x30, 
---------------------------------------------------------------------------------------------------------------------
0x12, 46,1 // 0x0A, 25,6 // 0x12, 46,9   //Pulse Ratio Boost Pressure Solenoid Valve  70 байт/ %/ ((256*A)+B)/100 0k
0x03,      // 0x03       // 0x53,        //Pulse Ratio Boost Pressure Solenoid Valve
---------------------------------------------------------------------------------------------------------------------
0x01, 4,4  // 0x04, 13,4 // 0x01, 4,8    //Desired Injection Start                          72 байт/ *CA
0x7B,      // 0x7B       // 0x9C,        //Desired Injection Start
---------------------------------------------------------------------------------------------------------------------
0x0B, 30   // 0x0D, 82   // 0x0B, 14     //Intake Air Temperature                           74 байт /*C
0xDB,      // 0xDB,      // 0x3B,        //Intake Air Temperature
---------------------------------------------------------------------------------------------------------------------
0x03, 
0xA3, 
0x00, 
0x02, 
0x1F};

в температуре заметил что 0x0B это 8гр, 0x0C это 34гр, 0x0D это 59. получается шаг в 25гр. второй байт это шаг в десять градусов . вот примеи.........

0x0C(DEC=12)(34гр), 0x10(DEC=16)(+1гр)= 35гр,  

0x0C(DEC=12)(34гр), 0x15(DEC=21)(+2гр)= 36гр

0x0C(DEC=12)(34гр), 0x20(DEC=32)(+3гр)= 37гр

0x0C(DEC=12)(34гр), 0x25(DEC=37)(+4гр)= 38гр  , получается 0х05 это 1 градус.

формула темературы ("A" что то сделать с первым байтом)+(B/5). второй байт надо делить на пять, это точно. а вот что сделать с первым байтом?

0x0C(DEC=12)(34гр) как получить 34 из этого 0x0C(DEC=12)?

0x0D(DEC=13)(59гр) или из этого 59гр?

 

 

MaksVV
Offline
Зарегистрирован: 06.08.2015

поставь второй байт температуры 0х00 и поизменяй первый байт, потом наоборот первый байт 0. и почему ты говоришь второй байт шаг в десять градусов? вроде как в один градус

viki13viki
Offline
Зарегистрирован: 14.11.2016

уже делал. я понял примерно формула темературы ("A" что то сделать с первым байтом)+(B/5). не могу просчитать

0C =34гр,  0D =59гр,  0E =85гр. шаг в 26гр.  второй байт добавляет единицы. не могу найти как первый байты превратить в его температуры

viki13viki
Offline
Зарегистрирован: 14.11.2016

как DEC 12 сделать 34, DEC 13 в 59, DEC 14 в 85. пробовал так 1 шаг это 26, значит (12-10)*26)+B/5. но не выходит

viki13viki
Offline
Зарегистрирован: 14.11.2016

выше исправил. было по два градуса лишних.