📄 lcd.h
字号:
/* */
/****************************************************************************
Title : HD44780 LCD library 六线驱动
Authors:
Software: ICCAVR6.31A
Target: M8
Copyright:
*****************************************************************************/
#ifndef LCD_H
#define LCD_H
#include <macros.h>
typedef unsigned char uchar;
typedef unsigned int uint;
/* LCD显示属性的设定 */
#define LCD_LINES 2 /* 显示的行数 */
#define LCD_LINE_LENGTH 20 /* 每行显示的字符长度 */
#define LCD_START_LINE1 0x80 /* 第一行字符显示的地址 */
#define LCD_START_LINE2 0xc0 /* 第二行字符显示的地址 */
#define LCD_CGRAM_START 0x40 /* LCD字符自定义区CGRAM的首地址 */
/* LCD显示属性的设定 end*/
/* 硬件接口设置-------------------------
*可根据实际应用调节接口
----------------------------------------*/
#define LCD_DATA_PIN_D7 3 /*PB5 arbitrary pin for LCD data line D7 */
#define LCD_DATA_PIN_D6 4 /*PB4 arbitrary pin for LCD data line D7 */
#define LCD_DATA_PIN_D5 0 /*PB3 arbitrary pin for LCD data line D5 */
#define LCD_DATA_PIN_D4 5 /*PB0 arbitrary pin for LCD data line D4 */
#define LCD_DATA_DDR_D7 DDRB /* ddr for LCD data line D7 */
#define LCD_DATA_DDR_D6 DDRB /* ddr for LCD data line D6 */
#define LCD_DATA_DDR_D5 DDRB /* ddr for LCD data line D5 */
#define LCD_DATA_DDR_D4 DDRB /* ddr for LCD data line D4 */
#define LCD_DATA_PORT_D7 PORTB /* port for LCD data line D7 */
#define LCD_DATA_PORT_D6 PORTB /* port for LCD data line D6 */
#define LCD_DATA_PORT_D5 PORTB /* port for LCD data line D5 */
#define LCD_DATA_PORT_D4 PORTB /* port for LCD data line D4 */
#define LCD_RS_DDR DDRD /* ddr for RS line */
#define LCD_RS_PORT PORTD /* port for RS line */
#define LCD_RS_PIN 6 /* PD7 */
#define LCD_EN_DDR DDRD /* ddr for Enable line */
#define LCD_EN_PORT PORTD /* port for Enable line */
#define LCD_EN_PIN 7 /* PB6 */
/* 硬件接口设置 end*/
/*-------------------------
Public function prototypes
---------------------------*/
void lcd_init (void); //LCD初始化
void lcd_write_char (unsigned command,unsigned data);//英文字符串显示函数
void lcd_write_half_char (unsigned data);
void lcd_set_xy (unsigned char x, unsigned char y);//设置LCD显示的起始位置
void lcd_write_string (unsigned char X,unsigned char Y,unsigned char *s);//英文字符串显示函数
void lcd_write_nchar (unsigned char X,unsigned char Y,unsigned char *s,unsigned int n);//英文n个字符串显示函数
void lcd_clear (void); // 显示清屏函数
void lcd_4BIT_enable (void); // 四位数据接口设定函数
void lcd_set_char (void); // 自定义字符函数
#endif //LCD_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -