Views: 9251
Символьная библиотека. Вывод на дисплей символов и псевдографики, национальные шрифты.
Функции библиотеки, версия 1.0.0.
Библиотека написана для шины I2C для 8 разрядных микроконтроллеров Microchip.
Компилятор – Microchip MPLAB MPLAB XC8 v1.12, среда – MPLAB® X
Встроенные функции для работы с I2C
(Для модуля MSSP PIC18 (тестирование проводилось на PIC18F25K20), замените их для своего контроллера)
Настройка MSSP модуля для режима I2C
void I2C_Open (unsigned int FCLOCK);
FCLOCK – 100 -700… задает частоту шины.
Проверка на готовность I2C к работе
void i2c_idle (void); // проверка на готовность I2C к работе
void i2c_stop (void); // формирование стоп
char i2c_start (char adres, char R_W); // адрес устройства и бит
// adres = полные 8 бит например: 011110 SA0 R/W#, записать (если SA0=0) 0b01111000 =0x78
Следующие функции в библиотеки не используются (оставление для использования для другого назначения)
char i2c_restart (char adres, char R_W);
char i2c_write (char data); //запись байта
char i2c_read_ack (void); //чтение с подтверждением
char i2c_read_noack (void); //чтение без подтверждения
void ENAB_VCC (char enable_disable); // выключение/включение внешнего DC/DC преобразователя/off / on the external DC / DC converter
Функции для работы с индикатором
void int_OLED (void); // инициализация драйвера SSD1306
void clear_OLED (char tip); // очистка всего дисплея
tip-положение по Y 0-2, 0- черный, 1- белый, 2-серый.
Схема подключения примененная для работы библиотеки.
Регулировка контрастности
void contrast_OLED (char Y);
Y-положение по Y 0-255.
Установка курсора
void curcor_OLED (char X,char Y);
X – положение по X 0-127,
Y-положение по Y 0-7.
Вывод строк (текстовых сообщений)
void String_OLED(const char *str,char inv,char width,char height,char X,char Y);// , char строка, ширина, высота, центрирование (22 символа в строке)
void Stringp_OLED(const char *str,char inv,char width,char height);
*str – строка должна быть не более 255 символов,
inv – 0 нормальная прорисовка, 1 – инверсное,
width – ширина символа 0 – 7 (0-1 –>0),
height – высота 0 – 7 (0-1 –>0),
X – положение по X 0-127,
Y-положение по Y 0-7.
Вывод символа на дисплей в позиции курсора
void symbol_OLED (unsigned char cod,unsigned char tip,unsigned char inv,unsigned char shi,unsigned char vis);
cod – символ
tip – функция 0-делать один пробел между символами 1 – не делать для рисования псевдографики
inv – инверсия
shi – ширина символа
vis – высота символа
Бегущие строки
void ticker_OLED (const char *str,char start,char ends,char Y); //с ПЗУ
вывод строк – сообщений сохраненных в ПЗУ
void tickerB_OLED (char dlinok,char start,char Y);// с озу
вывод строк массив которых сохранено в ОЗУ и могут динамически менять свое содержание.
Библиотека содержит полный знакогенератор со псевдографикой и национальным шрифтом (русский – по умолчанию). Символы псевдографики можно изменить на необходимые символы размером 5х8. Драйвер устойчиво работает даже на частоте шинs I2C 700 кГц !!! Выше не тестировал, не потянул контроллер, хотя рекомендую использовать стандартную тактовую 400 или 100 кГц.
Библиотека + демопример
Библиотека для OLED драйвера SSD1306 интерфейс I2C
627.77 KB
603 downloads
Библиотека для OLED драйвера SSD1306 интерфейс I2C,...
Библиотека для OLED драйвера SSD1306 интерфейс I2C - схема подключения
11.28 KB
170 downloads
Библиотека для OLED драйвера SSD1306 интерфейс I2C...
Это может быть интересно
- Проект с использованием MCC часть 10Views: 823 Алгоритм управления освещением от нажатия кнопки. Обработка удержания кнопки: Мы должны проверить кнопка в настоящий момент нажата и флаг удержания установлен, если да Проверить таймер удержания “отработал” – …
- Development of temperature control and management systemsViews: 88 Catcatcat Electronics Пошта для контакту e-mail: catcatcat.electronics@gmail.com
- PIC18F25K42 – v. A001 – выявленные баги.Views: 604 Модуль I2C Не работает при использовании в стандартной конфигурации MCC. Требует особой нестандартной конфигурации и управления для нормальной работы. Обойти Обход проблемы возможен библиотека см статью. Модуль ADC2 На …
- Мониторинг температурыViews: 1378 Настоящий проект создан как обучающий с применением библиотек ds18b20 и LCDHD44780 и компилятора Microchip MPLAB XC8 C Compiler V1.12. Если необходимо иметь информацию по состоянию температуры в помещении или в здании, с количеством до 6 точек (16), то …
- CLUBBEST – reasoning on the visualization of music.Views: 124 ВІД ЗАХОДУ ДО СВІТАНКУ АБО ПОБАЧИТИ МУЗИКУ. Час доби, коли почуття людини загострюються, – це час від заходу до світанку. В цей час людина відкрита для …
- Стробоскоп для автомобиляViews: 2166 Одним из популярных решений светового тюнинга автомобиля, мотоцикла или скутера стал эффект – “полицейский стробоскоп“. На база платы ch-c0050 реализовано несколько проектов. В этой статье приводятся две версии …
- TDA7294 part 2Views: 340 Це друга частина проекту TDA7294, початок дивись тут. Тут ви знайдете повністю проект високоякісного підсилювача на TDA7294, схема, 3D моделі, гербер файли для виготовлення друкованої плати. І звичайно …
- LCD индикаторы на драйвере ML1001Views: 1870 ML1001 – статический LCD GOG (чип в стекле) драйвер для 40-сегментного LCD в позолоченном противоударном исполнении. На них можно каскадно строить цельные из 80 или 120 сегментов LCD индикаторы. …
- Светодиоды со встроенным драйвером WS2812BViews: 924 Производитель http://www.world-semi.com Краткое описание продукции фирмы Каталог продукции” catcatcat_ws_19 catcatcat_ws_15 catcatcat_ws_11 catcatcat_ws_07 catcatcat_ws_03 catcatcat_ws_18 catcatcat_ws_14 catcatcat_ws_10 catcatcat_ws_06 catcatcat_ws_02 catcatcat_ws_05 catcatcat_ws_09 catcatcat_ws_13 catcatcat_ws_17 catcatcat_ws_16 catcatcat_ws_12 catcatcat_ws_08 catcatcat_ws_04 catcatcat_ws_01 This jQuery …
- Модуль CAN в микроконтроллерах PIC18Views: 5720 Введение CAN последовательный интерфейс связи, который эффективно поддерживает распределенное управление в реальном масштабе времени с высокой помехозащищенностью. Протокол связи полностью определен Robert Bosch GmbH, в спецификации требований …