⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.h

📁 基于MEGA16的LCD128x64(ks0108)显示程序
💻 H
字号:
#ifndef	__LCD__H
#define	__LCD__H

/*KS0108 128*64 LCD C语言驱动
LCD引脚定义
1---GND 
2---VCC
3---VLCD
4---D/I
5---R/W
6---E
7到14 D0-D7
15--CS1
16--CS2
17--RESET
18--VEE
19--SW
20--NC*/

/* 定义颜色数据类型(可以是数据结构) */
#define  TCOLOR			unsigned char 

/* 定义LCM像素数宏 */
#define  GUI_LCM_XMAX		128	//   定义液晶x轴的像素数 *
#define  GUI_LCM_YMAX		64	//   定义液晶y轴的像素数 *

/*  常量定义  */
#define  LCD_STATUS_BUSY 0x80
#define  START_LINE0   0xc0
#define  DISPLAY_ON    0x3f
#define  DISPLAY_OFF   0x3e
#define  PARA1         0x40
#define  LEFT  0
#define  RIGHT 1
#define  CMD   0
#define  DATA  1

//定义MCU与LCD的接口
#define  LCD_OP_PORT    PORTA
#define  LCD_DIR_PORT   DDRA
#define  LCD_IP_PORT    PINA

#define  LCD_EN_DDR     DDRB
#define  LCD_EN_PORT    PORTB
#define  LCD_EN_BIT     (1<<PB0)
#define  LCD_RW_DDR     DDRB
#define  LCD_RW_PORT    PORTB
#define  LCD_RW_BIT     (1<<PB1)
#define  LCD_DI_DDR     DDRB
#define  LCD_DI_PORT    PORTB
#define  LCD_DI_BIT     (1<<PB2)
#define  LCD_CS1_DDR    DDRB
#define  LCD_CS1_PORT   PORTB
#define  LCD_CS1_BIT    (1<<PB4)
#define  LCD_CS2_DDR    DDRB
#define  LCD_CS2_PORT   PORTB
#define  LCD_CS2_BIT    (1<<PB3)

#define  SET_LCD_E          LCD_EN_PORT |= LCD_EN_BIT     //LCD使能
#define  CLEAR_LCD_E        LCD_EN_PORT &= ~LCD_EN_BIT    //LCD禁止
#define  SET_LCD_DATA       LCD_DI_PORT |= LCD_DI_BIT     //选择指令端口
#define  SET_LCD_CMD        LCD_DI_PORT &= ~LCD_DI_BIT    //选择数据端口
#define  SET_LCD_READ       LCD_RW_PORT |= LCD_RW_BIT     //读模式
#define  SET_LCD_WRITE      LCD_RW_PORT &= ~LCD_RW_BIT    //写模式
#define  SET_LCD_CS2      	LCD_CS2_PORT |= LCD_CS2_BIT   //左屏选择禁止
#define  CLEAR_LCD_CS2      LCD_CS2_PORT &= ~LCD_CS2_BIT  //左屏选择使能
#define  SET_LCD_CS1      	LCD_CS1_PORT |= LCD_CS1_BIT   //左屏选择禁止
#define  CLEAR_LCD_CS1      LCD_CS1_PORT &= ~LCD_CS1_BIT  //左屏选择使能

void LCD_Init(void); /*初始化函数*/
void LCD_clr(void) ; /*清屏函数*/
void SetRowCol(unsigned char urow, unsigned char ucol); /* 设置当前显示的页和列 */
void disp_char(unsigned char c);
void disp_hz(unsigned char *hz);
void disp_str(unsigned char *p);
void GUI_Point(unsigned char xx,unsigned char yy,unsigned char flag);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -