GND – земля;
DS – последовательный ввод. Должен подключаться к проводу MOSI шины SPI;
Q0-Q7 – параллельные выходы;
SHCP – тактовый вход. Должен подключаться к проводу SCK шины SPI;
STCP – защелкивание выводов. Должен подключаться к проводу CS шины SPI;
OE – разрешение работы выходов. При низком уровне выходы работают;
Q7S – последовательный вывод;
MR – общий сброс. Если притянуть его к земле – входы обнулятся.
Скетч для двух регистров 74HC595 и семисегментным 4хразрядным дисплеем с общим катодом:
// подключаем библиотеку SPI#include <SPI.h>// провод CS подсоединяем к 8-му пину Arduinoenum { reg = 8 };void setup(){Serial.begin(9600);Serial.println("Started");// инициализируем SPISPI.begin();Serial.println("SPI");// настраиваем 8-й пин как выходpinMode(reg, OUTPUT);}// храним в массиве все цифрыstatic uint8_t digit[11] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00};void loop(){for (int i=0;i<11;i++){// притягиваем CS к земле - начало передачиSerial.println(digit[i]);digitalWrite(reg, LOW);// передаем катодный байтSPI.transfer(digit[i]);// передаем анодный байтSPI.transfer(0xFF);// отпускаем CS - конец передачиdigitalWrite(reg, HIGH);// ждем секундуdelay(1000);}}
Комментариев нет:
Отправить комментарий