Views: 9615
Символьная библиотека. Вывод на дисплей символов и псевдографики, национальные шрифты.
Функции библиотеки, версия 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
665 downloads
Библиотека для OLED драйвера SSD1306 интерфейс I2C,...
Библиотека для OLED драйвера SSD1306 интерфейс I2C - схема подключения
11.28 KB
171 downloads
Библиотека для OLED драйвера SSD1306 интерфейс I2C...
Это может быть интересно
Проект с использованием MCC часть 07Views: 1250 Модуль PWM – широтно импульсная модуляция (ШИМ). ПИК контроллеры часто на борту имеют модули ШИМ. На их основе строятся многие узлы управления электро приводами. В нашем варианте мы …
MCC – K42 – настройка модуля DMAViews: 1020 MCC – в версии v.3.95.0 и начиная ядра 4.85.0 конфигуратор предоставляет графический интерфейс для настройки модуля DMA. Для начала: Посмотреть какая версия МСС можно в закладке версии, если …
Acquaintance with audio-bluetooth modules F-6888 (BK3254).Views: 2434 Для проектов появилось необходимость познакомиться с недорогими модулями китайского производства, которые можно приобрести у нас в Украине и у китацев, на алиэкспрессе. Так как меня интересует не просто, …
Мультизоновый индикатор-терморегулятор ch-c3010Views: 1386 Часто возникает необходимость получить информацию по температуре с множества точек контроля. Вам необходимо знать температуру в комнате, в коридоре, температуру на улице, а в погребе (или на балконе) …
MCC PIC24 – модуль REAL-TIME CLOCK AND CALENDAR (RTCC)Views: 690 RTCC предоставляет пользователю часы реального времени и функция календаря (RTCC), точность “хода” может быть откалибрована. Основные особенности модуля RTCC: • Работает в режиме глубокого сна. • Возможность выбора источника …
Мониторинг температурыViews: 1488 Настоящий проект создан как обучающий с применением библиотек ds18b20 и LCDHD44780 и компилятора Microchip MPLAB XC8 C Compiler V1.12. Если необходимо иметь информацию по состоянию температуры в помещении или в здании, с количеством до 6 точек (16), то …
Просто о внешних переменныхViews: 950 Часто возникает задача когда необходимо предавать данные между модулями программы. Например, передать данные между файлами, или управлять работой модулей. Для этого создаем заголовочный файл и описываем наши переменные как …
MAX7219/21 и 8х8 LED дисплеиViews: 1105 MAX7219, MAX7221 предназначены для вывода информации на 8 разрядов семисегментного индикатора, но на нем легко организовать вывод на светодиодные индикаторы 8х8. продолжение следует…. Это может быть интересно
Счетчики посетителейViews: 1310 Вас сосчитали!? или счетчики посетителей. Для чего нужны счетчики посетителей? Какие они бывают? ТОРГОВЛЯ. Подсчитайте, сколько ваш магазин посещает человек за день. Кок много человек приходит утром, какое …
Индикатор кода – RC-5 Protocol PhilipsViews: 1176 Индикатор кода – RC-5 Protocol Philips При конструировании дистанционного управления на инфракрасных лучах для контроля удобно иметь индикатор кодов передаваемых пультом. Плата ch-c3000 позволяет изготавливать устройства с возможностью …





