24.02.2016, 23:36 | #191 |
Старший Пользователь
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
|
У меня на столе собрана магнитола и дисплей. При включении они выплёвывают по одному Id. На картинке такой id для дисплея указан. При этом есть циклический id который очень похож на тот который единожды проходит.
Короче я понял- Ща с глюком перекодировки разбирусь, доделаю менюшки не требующие эмуляции дисплея и с машины сниму свой строчечный дисплей чтоб на столе запустить и посмотреть отличия. |
25.02.2016, 10:25 | #192 |
Пользователь
Регистрация: 10.12.2013
Регион: 63, 163
Сообщений: 53
|
Так у вас в машине другой тип дисплея?
Скорее всего при телекодировании в магнитоле прописывается тип дисплея и от этого зависит как она передаёт данные на дисплей. Последний раз редактировалось Dmitry8; 25.02.2016 в 11:01. |
25.02.2016, 15:56 | #193 |
Старший Пользователь
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
|
Народ- дурацкий вопрос. Передаю из ардуины дройду два байта
DATA[9] = 0x09; DATA[10] = 0xA0; принимаю на стороне дройда нормально, а теперь пытаюсь их склеить и получаю чушь! (Arbyte[9] << 8) + Arbyte[10]) Arbyte[9] равно -91 и поэтому заполняется еденицами, а нужно чтоб нолями. Как это сделать? |
25.02.2016, 22:41 | #194 |
Старший Пользователь
Регистрация: 01.04.2010
Регион: 35
Сообщений: 697
|
А так (Arbyte[9] * 256 ) + Arbyte[10] не пробовали?
|
25.02.2016, 23:42 | #195 |
Старший Пользователь
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
|
Пробовал- тоже самое.
Помогла маска 0хff. Там дело в том, что он про арбайт 10 думает что оно-90, а оно на самом деле 160. Тоесть 160 это 16 бит и старшим забиты нулями. Если обрезать до 8 бит, то получится как раз -90 |
26.02.2016, 10:43 | #196 |
Старший Пользователь
Регистрация: 01.04.2010
Регион: 35
Сообщений: 697
|
|
26.02.2016, 11:43 | #197 |
Старший Пользователь
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
|
|
26.02.2016, 13:17 | #198 |
Старший Пользователь
Регистрация: 01.04.2010
Регион: 35
Сообщений: 697
|
Даже не знаю что сказать
00001001(09)*00000001 00000000(256)=00001001 00000000(09 00) 00001001 00000000(09 00) + 10100000(А0) = 00001001 10100000(09 A0) 01011010(90) это еще можно объяснить, но это 01100000(96) откуда вы взяли, даже понять не могу. |
26.02.2016, 13:30 | #199 | |
Старший Пользователь
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
|
Цитата:
8 бит и 16 бит дают разный результат. |
|
26.02.2016, 15:43 | #200 |
Пользователь
Регистрация: 29.07.2015
Регион: 64
Машина: VW Tiguan
Сообщений: 89
|
Я так понимаю вся беда в том, что ява не поддерживает беззнаковый тип данных, отсюда и косяки. Либо надо работать с более вместительными типами, либо как сделал T_r_D, обрезать маской.
|
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
|
|