ESP8266 + 74HC595
- Войдите на сайт для отправки комментариев
Вс, 20/03/2022 - 19:29
Всем привет!
Не получается подружить сабж. Все делаю по примерам из интернета. Но напряжения на выводах 74HC595 нет.
Скетч тоже из инета, заменены только номера пинов:
#include <Arduino.h> int clockPin = D8; // -> SH_CP (11) int latchPin = D7; // -> ST_CP (12) int dataPin = D5; // -> DS (14) void registerWrite(int whichPin, int whichState); void setup() { pinMode(LED_BUILTIN, OUTPUT); Serial.begin(115200); pinMode(latchPin, OUTPUT); pinMode(clockPin, OUTPUT); pinMode(dataPin, OUTPUT); } void loop() { // проходим циклом по всем 16 выходам двух регистров for (int thisLed = 0; thisLed < 16; thisLed++) { // записываем сигнал в регистр для очередного светодиода registerWrite(thisLed, HIGH); // если это не первый светодиод, то отключаем предыдущий if (thisLed > 0) { registerWrite(thisLed - 1, LOW); } else { // если это первый светодиод, то отключаем последний registerWrite(15, LOW); } // делаем паузу перед следующией итерацией delay(250); } } // этот метод отсылает бит на сдвиговый регистр void registerWrite(int whichPin, int whichState) { // для хранения 16 битов используем unsigned int unsigned int bitsToSend = 0; // выключаем светодиоды на время передачи битов digitalWrite(latchPin, LOW); // устанавливаем HIGH в соответствующий бит bitWrite(bitsToSend, whichPin, whichState); // разбиваем наши 16 бит на два байта // для записи в первый и второй регистр byte registerOne = highByte(bitsToSend); byte registerTwo = lowByte(bitsToSend); // "проталкиваем" байты в регистры shiftOut(dataPin, clockPin, MSBFIRST, registerTwo); shiftOut(dataPin, clockPin, MSBFIRST, registerOne); // "защелкиваем" регистр, чтобы биты появились на выходах регистра digitalWrite(latchPin, HIGH); }
Подскажите, что не так? Почему не работает?
Ошибка в монтаже, плохой контакт. Возможно косяк в скетче. для начала выведите в монитор отладочную информацию , а потом думайте.
Подскажите, что не так? Почему не работает?
Первое - что значит "не работает"?
Второе "не так" - отсутствие схемы. Разбираться по картинке, что там накоммутировано, желания нет.
Третье - "ачотенада?" Два байта переслать? так это в строках 43, 54, 55 и 58. Зачем всё остальное народное творчество, неясно.
Четвертое - в комментарии стр. 42 чушь написана
Добавлено пятое: Я 8266 совсем не знаю. она достаточные напряжения сигналов выдает?