📄 12864.c
字号:
#include "12864.h"
#include <reg52.h>
void WriteInstruction(uchar cmd)//写指令
{
Delay(5000);
LCD_CE=0;
LCD_RW=0;
LCD_RS=0;
LCD_CE=1;
LCDData=cmd;
Delay(50);
LCD_CE=0;
}
void WriteData(uchar dat)//写数据
{
Delay(5000);
LCD_CE=0;
LCD_RW=0;
LCD_RS=1;
LCD_CE=1;
LCDData=dat;
Delay(50);
LCD_CE=0;
}
void LCDInit(void)//初始化LCD
{
Delay(60000);
Delay(60000);
Delay(60000);
LCD_CE=0;
LCD_RW=0;
LCD_RS=0;
LCD_CE=1;
LCDData=0x30;
Delay(50);
LCD_CE=0;
Delay(50000);
LCD_CE=1;
LCDData=0x30;
Delay(50);
LCD_CE=0;
Delay(5000);
LCD_CE=1;
LCDData=0x30;
Delay(50);
LCD_CE=0;
Delay(5000);
LCD_CE=1;
LCDData=0x0c;
Delay(50);
LCD_CE=0;
Delay(2000);
LCD_CE=1;
LCDData=0x01;
Delay(50);
LCD_CE=0;
Delay(2000);
LCD_CE=1;
LCDData=0x06;
Delay(50);
LCD_CE=0;
Delay(2000);
}
/*void CLS(void)//清屏指令
{
WriteInstruction(0x1);
}*/
void ShowSingle(uchar x,uchar y,uchar z)//X表示第几个字,Y表示第几行,Z表示字符;
{
switch (y)
{
case 1:WriteInstruction(0x80+x-1);break;
case 2:WriteInstruction(0x90+x-1);break;
case 3:WriteInstruction(0x88+x-1);break;
case 4:WriteInstruction(0x98+x-1);break;
default:break;
}
WriteData(z);
}
//show_group()显示一行字或字符程序;X:从第几个字开始显示(1~8);Y:第几行(1~4);n:一行有几个字符
void ShowGroup(uchar x,uchar y,uchar *p)
{
switch (y)
{
case 1:WriteInstruction(0x80+x-1);break;
case 2:WriteInstruction(0x90+x-1);break;
case 3:WriteInstruction(0x88+x-1);break;
case 4:WriteInstruction(0x98+x-1);break;
default:break;
}
while(*p)
{
WriteData(*p++);
}
}
//延时
void Delay(uint i)
{
while(i--);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -