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 совсем не знаю. она достаточные напряжения сигналов выдает?