Схема подключения как здесь: http://greenoakst.blogspot.com/2011/11/arduino-7-spi.html.
Единственное, но COM семисегментника подаем землю а не плюс.
Скетч будет для 7-мисегментные индикатор с общим катодом такой:
#include <SPI.h> // подключаем библиотеку SPI
enum { reg = 8 }; // провод CS подсоединяем к 8-му пину Arduino
void setup()
{
SPI.begin(); // инициализируем SPI
pinMode(reg, OUTPUT); // настраиваем 8-й пин как выход
}
void loop()
{
// храним в массиве все цифры
static uint8_t digit[16] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
// выводим цифры по одной
for (int i=0;i<16;i++){
digitalWrite(reg, LOW); // притягиваем CS к земле - начало передачи
SPI.transfer(digit[i]); // передаем байт
digitalWrite(reg, HIGH); // отпускаем CS - конец передачи
delay(1000); // ждем секунду
}
//очистим дисплей на секунду
digitalWrite(reg, LOW);
SPI.transfer(0xFF);
digitalWrite(reg, HIGH);
delay(1000);
}
Комментариев нет:
Отправить комментарий