Данная библиотека используется для управления символьным ЖК-дисплеем с размером 16х2 символов. Программный код совместим с чипами: ST7066U, HD44780, SED1278, KS0066U и S6A0069X.
Дисплей работает в 4-х битном режиме. Для передачи данных используются 6 GPIO-выводов. В C-файле, по желанию, могут быть установлены любые свободные выводы (автор использовал PE5-PE10).
Пример работы:
Используемые пины:
PE5 -> LCD_RS
PE6 -> LCD_E
PE7 -> LCD_DB4
PE8 -> LCD_DB5
PE9 -> LCD_DB6
PE10 -> LCD_DB7
Требуемые библиотеки:
Подключаемые модули CooCox-IDE: GPIO
Поддерживаемые библиотеки: отсутствуют
Перечисления:
typedef enum { TLCD_OFF =0, // Дисплей=off, Курсор=off, Мигание=off TLCD_ON, // Дисплей=on, Курсор=off, Мигание=off TLCD_Cursor, // Дисплей=on, Курсор=on, Мигание=off TLCD_BLINK // Дисплей=on, Курсор=on, Мигание=on }TLCD_MODE_t;
Функции:
void UB_LCD_2x16_Init(void); // инициализация дисплея void UB_LCD_2x16_Clear(void); // очистка дисплея void UB_LCD_2x16_SetMode(TLCD_MODE_t mode); // установка режима работы дисплея void UB_LCD_2x16_String(uint8_t x, uint8_t y, char *ptr); // вывод строки на дисплей с координатами x,y
Пример использования:
//-------------------------------------------------------------- // File : main.c // Datum : 17.04.2013 // Version : 1.0 // Autor : UB // EMail : mc-4u(@)t-online.de // Web : www.mikrocontroller-4u.de // CPU : STM32F4 // IDE : CooCox CoIDE 1.7.0 // Module : CMSIS_BOOT, M4_CMSIS_CORE // Funktion : Demo der LCD-2x16-Library // Hinweis : Diese zwei Files muessen auf 8MHz stehen // "cmsis_boot/stm32f4xx.h" // "cmsis_boot/system_stm32f4xx.c" //-------------------------------------------------------------- #include "main.h" #include "stm32_ub_lcd_2x16.h" int main(void) { SystemInit(); // Инициализация настроек кварца // Инициализация ЖК-дисплея UB_LCD_2x16_Init(); // Печать текста в первой строке UB_LCD_2x16_String(0,0,"LCD 2x16 STM32F4"); // Печать текста в первой строке UB_LCD_2x16_String(3,1,"Discovery"); while(1) { } }
В приложении проект CooCox и отдельная библиотека для использования в других проектах. Автор оригинала статьи просит задавать вопросы на его сайте на немецком или английских языках.
Прикрепленные файлы:
- ub_stm32f4_lcd_2x16_rus.rar (4 Кб)
- Demo_34_LCD_2x16_rus.rar (148 Кб)
Комментарии (2) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
Я уже молчу про такие ошибки как TLCD_PoffE вместо TLCD_PAUSE и т. д.