EasyManua.ls Logo

STMicroelectronics STM8 - Page 46

STMicroelectronics STM8
126 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
lcd.c
#include "lcd.h"
void LCD_GPIO_init(void)
{
GPIO_Init(LCD_PORT, LCD_RS, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(LCD_PORT, LCD_EN, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(LCD_PORT, LCD_DB4, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(LCD_PORT, LCD_DB5, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(LCD_PORT, LCD_DB6, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(LCD_PORT, LCD_DB7, GPIO_MODE_OUT_PP_HIGH_FAST);
delay_ms(10);
}
void LCD_init(void)
{
LCD_GPIO_init();
toggle_EN_pin();
GPIO_WriteLow(LCD_PORT, LCD_RS);
GPIO_WriteLow(LCD_PORT, LCD_DB7);
GPIO_WriteLow(LCD_PORT, LCD_DB6);
GPIO_WriteHigh(LCD_PORT, LCD_DB5);
GPIO_WriteHigh(LCD_PORT, LCD_DB4);
toggle_EN_pin();
GPIO_WriteLow(LCD_PORT, LCD_DB7);
GPIO_WriteLow(LCD_PORT, LCD_DB6);
GPIO_WriteHigh(LCD_PORT, LCD_DB5);
GPIO_WriteHigh(LCD_PORT, LCD_DB4);
toggle_EN_pin();
GPIO_WriteLow(LCD_PORT, LCD_DB7);
GPIO_WriteLow(LCD_PORT, LCD_DB6);
GPIO_WriteHigh(LCD_PORT, LCD_DB5);
GPIO_WriteHigh(LCD_PORT, LCD_DB4);
toggle_EN_pin();
GPIO_WriteLow(LCD_PORT, LCD_DB7);
GPIO_WriteLow(LCD_PORT, LCD_DB6);
GPIO_WriteHigh(LCD_PORT, LCD_DB5);
GPIO_WriteLow(LCD_PORT, LCD_DB4);
toggle_EN_pin();
LCD_send((_4_pin_interface | _2_row_display | _5x7_dots), CMD);
LCD_send((display_on | cursor_off | blink_off), CMD);
LCD_send(clear_display, CMD);
LCD_send((cursor_direction_inc | display_no_shift), CMD);
}
void LCD_send(unsigned char value, unsigned char mode)
{
switch(mode)
{
case DAT:
{
GPIO_WriteHigh(LCD_PORT, LCD_RS);
break;
}
case CMD:
{
GPIO_WriteLow(LCD_PORT, LCD_RS);

Related product manuals