📄 1602.h
字号:
#include <reg52.h>
sbit LCD_CS = P1^4;
sbit LCD_RS = P1^3;
sbit LCD_A0 = P1^2;
sbit LCD_CLK = P1^1;
sbit LCD_SDI = P1^0;
//========================================================================
// 函数: void LCD_DataWrite(unsigned int Data)
// 描述: 写一个字节的显示数据至LCD中的显示缓冲RAM当中
// 参数: Data 写入的数据
// 返回: 无
// 备注: 无
// 版本:
// 2007/05/17 First version
//========================================================================
void LCD_DataWrite(unsigned char Dat)//,_Fill_Dot_LCD
{
unsigned char Num;
LCD_CS = 0;
LCD_A0 = 1;
for(Num=0;Num<8;Num++)
{
if((Dat&0x80) == 0) LCD_SDI = 0;
else LCD_SDI = 1;
Dat = Dat << 1;
LCD_CLK = 0;
LCD_CLK = 1;
}
LCD_CS = 1;
}
//========================================================================
// 函数: void LCD_RegWrite(unsigned char Command)
// 描述: 写一个字节的数据至LCD中的控制寄存器当中
// 参数: Command 写入的数据
// 返回: 无
// 备注:
// 版本:
// 2007/05/17 First version
//========================================================================
void LCD_RegWrite(unsigned char Command)
{
unsigned char Num;
LCD_CS = 0;
LCD_A0 = 0;
for(Num=0;Num<8;Num++)
{
if((Command&0x80) == 0) LCD_SDI = 0;
else LCD_SDI = 1;
Command = Command << 1;
LCD_CLK = 0;
LCD_CLK = 1;
}
LCD_CS = 1;
}
//========================================================================
// 函数: void LCD_Init(void)
// 描述: LCD初始化程序,在里面会完成LCD初始所需要设置的许多寄存器,具体如果
// 用户想了解,建议查看DataSheet 当中各个寄存器的意义
// 参数: 无
// 返回: 无
// 备注:
// 版本:
// 2006/10/15 First version
// 2007/01/09 V1.2
//========================================================================
//延时程序
void TimeDelay(int Time)
{
int i;
if(Time > 0)
{
for(i = 0;i < 800;i++)
{
}
Time --;
}
}
void LCD_Init(void)
{
//LCD驱动所使用到的端口的初始化(如果有必要的话)
// LCD_PortInit();
TimeDelay(200);
LCD_RS = 0;
TimeDelay(200);
LCD_RS = 1;
LCD_RegWrite(0xaf); //LCD On
LCD_RegWrite(0x2f); //设置上电控制模式
LCD_RegWrite(0x81); //电量设置模式(显示亮度)
LCD_RegWrite(0x1f); //指令数据0x0000~0x003f
LCD_RegWrite(0x27); //V5内部电压调节电阻设置
LCD_RegWrite(0xa2); //LCD偏压设置
LCD_RegWrite(0xc8); //Com 扫描方式设置,反向
LCD_RegWrite(0xa0); //Segment方向选择,正常
LCD_RegWrite(0xa4); //全屏点亮/变暗指令
LCD_RegWrite(0xa6); //正向反向显示控制指令
LCD_RegWrite(0xac); //关闭静态指示器
LCD_RegWrite(0x00); //指令数据
LCD_RegWrite(0x40 +0); //设置显示起始行对应RAM
LCD_RegWrite(0xe0); //设置读写改模式
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -