Доброго времени суток, уважаемые! Дано : TFT-экран (http://amperka.ru/collection/display/product/tft-lcd-160x128) Входной сдвиговый регистр 74HC165 На регистре собраны кнопки как в этой статье. Проблема в следующем: пока линия MISO соединена с экраном кнопки не работают. Подключение: #define TFT_CS 9 #define TFT_DC 5 #define TFT_RST 6 #define BUTTONS_SPI 8 Для работы с экраном использую библиотеку TFT Код (Text): TFT MyScreen = TFT(TFT_CS, TFT_DC, TFT_RST); void setup() { ScreenInit(); // SPI.begin(); pinMode(BUTTONS_SPI, OUTPUT); digitalWrite(BUTTONS_SPI, HIGH); UpdateScreen(); Serial.begin(9600); } void loop() { digitalWrite(BUTTONS_SPI, LOW); uint8_t dState = SPI.transfer(0); digitalWrite(BUTTONS_SPI, HIGH); Serial.println(dState); } void ScreenInit() { MyScreen.begin(); MyScreen.background(0, 0, 0); MyScreen.stroke(255, 255, 255); MyScreen.setTextSize(1); MyScreen.setRotation(2); } В UpdateScreen() ничего интересного - вывод строки "test" на экран. Кто может подсказать в чем проблема?
Не знаю в чем косяк, но поразмыслив я пришел к выводу, что дисплей - это устройство вывода. Следовательно слать на ардуину он ничего не должен. Раз так, то и MISO ему теоретически не нужна. Оторвал - все работает... пока... Может так и должно быть... Остается вопрос по распиновке дисплея: Зачем ему линии D/C и RESET? Ну что такое RESET вроде понятно из названия. Но зачем на него пин тратить? Нельзя ли его прицепить на RESET МК? И как тогда вызывать конструктор класса?
DC (D/C) может быть сокращением от "постоянный ток" и обозначать либо электропитание, либо управление оным.
Относительно MISO - у меня все больше складывается впечатление, что он тупо всегда к земле притянут. Кто бы сказал наверняка...
Перейдя по Вашей же ссылке, наткнулся на вот это И дальше в том же духе. Там еще примеры есть. MISO нигде не упоминается, не надо никуда притягивать.
Э-э-э-э. Как Вам сказать... В том-то и проблема, что ни где не упоминается. Я не спрашиваю, куда его притянуть. Вопрос в том, что подключение MISO мешает читать с других устройств на SPI. Всегда 0 получается.