Библиотека Pineapple для arduino используется для вывода информации на 7-ми сегментный индикатор через сдвиговый регистр 74HC595.
Скачать библиотеку Pineapple
#include "Pineapple.h"
Подключение файла библиотеки.
Pineapple pineapple;
Инициализация объекта класса Pineapple.
uint8_t registerPins(int SER_Pin, int RCLK_Pin, int SRCLK_Pin, int Number_of_Registers)
Определяет контакты ардуино, подключенные к сдвиговому регистру 74HC595.
Пример
int serial = 4; // Контакт 4 ардуины подключен к контакту 14 (SER) регистра int registerClock = 3; // Контакт 3 ардуины подключен к контакту 12 (RCLK) регистра int serialClock = 2; // Контакт 2 ардуины подключен к контакту 11 (SRCLK) регистра int numberofRegisters = 1; // Количество регистров сдвига void setup() { // Определяем пины методом registerPins pineapple.registerPins(serial, registerClock, serialClock, numberofRegisters); }
void update()
Обновляет отображение на индикаторе.
pineapple.update();
void setPin(int index, boolean val)
Этот метод устанавливает высокий (HIGH) или низкий (LOW) уровень val
указанного контакта index
регистра ( от 0 до 7 ).
pineapple.setPin(0, HIGH); //Установить на 15 контакте регистра высокий уровень pineapple.setPin(4, LOW); //Установить на 4 контакте регистра низкий уровень
void setAll(boolean val)
Устанавливает все выходные контакты регистра в высокий или низкий уровень.
pineapple.setAll(LOW); // Установить все контакты в логический ноль delay(1000); pineapple.setAll(HIGH); // Установить все контакты в логическую единицу delay(1000);
void clear()
Очищает индикатор. Другими словами, устанавливает все выходные контакты регистра в низкий уровень (LOW) или в высокий (HIGH), в зависимости от индикатора ( с общим анодом или с общим катодом).
pineapple.clear(); // Установить все контакты в логический ноль delay(1000); pineapple.setAll(HIGH); // Установить все контакты в логическую единицу delay(1000);
uint8_t segmentPins(int a, int b, int c, int d, int e, int f, int g, int dp, boolean common)
Определяет контакты подключенные к индикатору (от a до g, точку dp и common — если индикатор с общим катодом, тогда LOW
, если с общим анодом, тогда HIGH
.
pineapple.segmentPins(0, 1, 2, 3, 4, 5, 6, 7, LOW);
void write(int number)
Отображает переданное число на индикаторе.
void loop() { // Поочередно выводит на индикатор цифры от 0 до 9 for(int i=0; i<10; i++) { pineapple.write(i); delay(500); } }