STM32F4. Урок 34 — Подключение символьного LCD-дисплея 16х2 (HD44780)

Данная библиотека используется для управления символьным ЖК-дисплеем с размером 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-2×16-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 2×16 STM32F4″);

// Печать текста в первой строке
UB_LCD_2x16_String(3,1,»Discovery»);

while(1)
{

}
}

В приложении проект CooCox и отдельная библиотека для использования в других проектах. Автор оригинала статьи просит задавать вопросы на его сайте на немецком или английских языках.

Оригинал статьи

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.