klialex 0 27 ноября, 2016 Опубликовано 27 ноября, 2016 (изменено) · Жалоба Достался задаром полуразобраный, полусломаный аппарат Hundai H-CMMD4046, вернее дисплей от оного. Схема: selection.pdf Задался целью подключить сей девайс в качестве домофонного дисплея в связке с камерой (композитный видеосигнал). Подключил все питания, на сам дисп + подсветка. Осталась настройка самого скалера. Происходит по i2c. Подключил анализатор saleae logic (кЕтай) на шину. Дамп: 2_MHz__60_M_Samples.7z Согласно даташита:DSA00103441.pdf на TW8806 нашел в дампе обращения к основным регистрам. На ардуинке (ничего под рукой больше нет) побыстренькому набросал сначала сканер квадратной шины, подключил к соответствующим пинам дисплея, шина ответила наличием на ней устройства 0x45, что соответствует наблюдениям в логическом анализаторе.(7бит адрес) Затем все найденные пары основные регистры+значения залил в eeprom arduino:eeprom.7z и скетчем #include <Wire.h> #include <EEPROM.h> void setup() { Wire.begin(); // join i2c bus (address optional for master) } void loop() { delay(1000); for (int i=0; i<=265; i=i+2){ //266 bytes in eeprom Wire.beginTransmission(69); // transmit to device #69 (0x45) // device address is specified in datasheet Wire.write(EEPROM[i]); // sends adress (нечетная ячейка памяти) Wire.write(EEPROM[i+1]); // sends value byte (четная ячейка памяти) Wire.endTransmission(); // stop transmitting } while(1); } выстрелил в шину. Вроде бы что-то дисплей ответил, картинка поменялась, начала мерцать и все, я в ступоре. Кто работал с таким скалером, что и куда минимально запихать в его регистры, чтобы осуществить мою мечту? Правильно ли отрабатывает ардуинка по сигналам с таким скетчем? Не понравились мне ACK и NACK на шине. Вроде на анализаторе с родной головой - кругом одни nack, но все работает; у меня все ack в конце переданного байта, но херня какаято... Изменено 27 ноября, 2016 пользователем klialex Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 26 29 ноября, 2016 Опубликовано 29 ноября, 2016 · Жалоба . . . . Не понравились мне ACK и NACK на шине. Вроде на анализаторе с родной головой - кругом одни nack, но все работает; у меня все ack в конце переданного байта, но херня какаято... 1. Проверяйте режимы обращения мастер-слейв, а именно бит R/W. 2. Бит ACK/NACK, в зависимости от R/W, выставляет или мастер или слейв. Взглядом "со стороны" Вы не определите, кто его выставил. Кроме того может быть мультимастерный режим (что там еще на шине навешано). Почитайте спецификацию протокола I2C Philips. 3. В зависимости от того, что представляет из себя слейв, ОНО может предоставлять не просто запись в регистры, а работать с последовательностью-пакетом команд вполне определенного для данного девайса формата. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться