Библиотека написанна в CoIDE.
Библиотека состоит из файлов: lcd.h,lcd.c,Delay.h,Delay.с
Функции библиотеки.
Lcd_init(); - инициализация дисплея
Lcd_write_str(x,y,”строка”); - Вывод строки в произвольной координате. x – начало строки по высоте, y – начало строки по ширине.
Lcd_line(x1,y1,x2,y2); -Вывод линии. x1y1 – начало лини, x2y2 – конец линии
Lcd_circle(x,y,r); - Вывод окружности. x1y1- координаты центра окружности, r – радиус окружности.
Lcd_write(mode,data,cs); - Запись данных или комманд в дисплей. mode вид данных = cmd - команды управления, dat - данные.data = данные. cs = выбор чипа для записи cs1- первый чип,cs2-второй чип,cstwo-оба чипа.
Lcd_out(x,y,buffer); - Запись данных изображения в массив видеобуфера uint8_t Video_buffer[8][128]; x = координата 0...63.y = координата 0...127. buffer = массив с изображением. Масив изображения готовится с помощью программы GLCDFontCreator2 от библиотеки для работы с дисплеем от arduino. Массив изображения имеет формат: static unsigned char image[]={,размер изображения, размер изображения, далее распологаются данные изображения}
Lcd_write_buffer(); - Вывод видеобуфера(содержимого uint8_t Video_buffer[8][128]) на экран.
Lcd_xy(x,y,cs); - Выбор строки и колонны для записи данных в дисплей, x = номер строки 0...7, y = номер колонны, cs = выбор чипа для записи cs1- первый чип,cs2-второй чип, cstwo-оба чипа.
Lcd_clear(); - Очитска выдеобуфера(зануление массива uint8_t Video_buffer[8][128])
Lcd_set_pixel(x, y); - Вывод пикселя на экран. x = координата 0...63, y = координата 0...127.
Подключения дисплея
В библиотеки вывод изображения организован через видео буфер Lcd_write_buffer();
Пины управления дисплея подключаются к старшим разрядом порта 8..15.
Выбор пинов осущетсявляется c помощью изменения настроек control_MODE_pin и control_CNF_pin путём выбора GPIO_CRH_MODEx где x = пины порта от 8 до 15.
Пины порта данных и команд подключаются к младшим пина порта от 0 до 7.
Например, пин дисплея DB7 подключается к 7 выводу порта микроконтроллера, пин дисплея DB6 подключается к 6 выводу порта микроконтроллера и.т.д.
Пример вывода алфавита русского языка.
#include "stm32f10x.h"
#include "lcd.h"
int main(void)
{
Lcd_init();
while(1)
{
Lcd_write_str(0,0,"Аа Бб Вв Гг Дд Ее Ёё Жж Зз Ии Йй Кк Лл Мм Нн Оо Пп Рр Сс Тт Уу Фф Хх Цц Чч Шш Щщ Ъъ Ыы Ьь Ээ Юю Яя");
Lcd_write_buffer();
}
}