Библиотека iarduino_I2C_Track позволяет работать с модулями Дорожные знаки, Светофор и Шлагбаум линейки «Дорожное движение». Определять модули, задавать режим их работы, управлять подсветкой знаков, цветами светофора или положением шлагбаума, передавать данные о модулях по ИК каналу и выбирать ИК протокол передачи данных.
Данная библиотека может использовать как аппаратную, так и программную реализацию шины I2C.
О том как выбрать тип шины I2C рассказано в статье Wiki - расширенные возможности библиотек iarduino для шины I2C.
Подробное описание работы с библиотекой, находится в разделах Wiki - Дорожный знак и Wiki - Светофор и шлагбаум.
#include <iarduino_I2C_Track.h> // Подключаем библиотеку iarduino_I2C_Track для работы с модулем.
iarduino_I2C_Track ОБЪЕКТ; // Создаём объект для работы с методами библиотеки без указания адреса модуля на шине I2C.
iarduino_I2C_Track ОБЪЕКТ( АДРЕС ); // Создаём объект для работы с методами библиотеки указывая адрес модуля на шине I2C.
Функции инициализации:
begin( [&ШИНА], МОДУЛЬ, ГРУППА, НОМЕР [, ПУНКТ] [,ТАБЛИЧКА] ); // знака.
begin( [&ШИНА], МОДУЛЬ, ПЕРЕКРЁСТОК [, СЕКЦИИ] ); // светофора.
Функция changeAddress( АДРЕС ); // Изменение адреса модуля на шине I2C.
Функция reset(); // Перезагрузка модуля.
Функция getAddress(); // Получение текущего адреса модуля на шине I2C.
Функция getVersion(); // Получение версии прошивки модуля.
Функция setPullI2C( [ФЛАГ] ); // Управление внутрисхемной подтяжкой линий I2C.
Функция getPullI2C(); // Запрос состояния внутрисхемной подтяжки линий I2C.
Функция backlight( РЕЖИМ [, РЕЖИМ] ); // Управление подсветкой дорожного знака.
Функция indicator( ФЛАГ ); // Разрешение работы индикатора передачи ИК данных.
Функция irProtocol( ПРОТОКОЛ ); // Установка ИК протокола передачи данных.
Функция irSend(); // Однократная отправка пакета данных по ИК-каналу.
Функция irWait(); // Ожидание завершения отправки данных по ИК-каналу.
Функция irAutoSend( [ИНТЕРВАЛ] ); // Автоматическая отправка ИК пакетов данных.
Функция irStop(); // Остановка автоматической отправки пакетов по ИК-каналу.
Функция offline( ФЛАГ ); // Разрешение работы модуля в автономном режиме.
Функция timing( ЗЕЛЁНЫЙ, ЖЁЛТЫЙ, КРАСНЫЙ ); // Установка времени свечения.
Функция set( ЦВЕТ, ЗНАЧЕНИЕ ); // Управление светофором в ручном режиме.
Функция set( ДЕЙСТВИЕ [,ДЕЙСТВИЕ [,ДЕЙСТВИЕ]]] ); // Управление полуавтомат.
Функция gateSpeed( СКОРОСТЬ ); // Установка скорости работы шлагбаума.
Функция gateWidth( ШИРИНА ); // Управление шлагбаумом при помощи ШИМ.
Функция gateWidthOpen( ШИРИНА ); // ШИМ для полностью открытого шлагбаума.
Функция gateWidthClose( ШИРИНА ); // ШИМ для полностью закрытого шлагбаума.