📄 lcd_1621.c
字号:
// Demo Program (HT1621)
//*****************************************************
//连线表: CPU=89C51 System Clock = 12Mhz *
// CS=P3.0 WR=P3.1 DATA=P3.2 *
//*****************************************************
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define DAT 1
#define COM 0
sbit CS = P3^2;
sbit RW = P3^3;
sbit DA = P3^5;
sbit Key= P3^4;
unsigned char code HT1621[];
void Write1Bit( void )
{
RW = 0;
_nop_();_nop_();
_nop_();_nop_();
RW = 1;
_nop_();_nop_();
_nop_();_nop_();
}
void WriteMode(unsigned char MODE)
{
DA = 1;
Write1Bit();
DA = 0;
Write1Bit();
DA = MODE;
Write1Bit();
}
void WriteCommand(unsigned char Cbyte)
{
unsigned char i;
for(i=0;i<9;i++)
{
Cbyte = Cbyte<<1;
DA = CY;
Write1Bit();
}
}
void WriteAddress(unsigned char Abyte)
{
unsigned char i;
Abyte = Abyte<<2;
for(i=0;i<6;i++)
{
Abyte = Abyte<<1;
DA = CY;
Write1Bit();
}
}
void WriteData(unsigned char Dbyte)
{
unsigned char i;
for(i=0;i<8;i++)
{
Dbyte = Dbyte<<1;
DA = CY;
Write1Bit();
}
}
void Delay(unsigned int MS)
{
unsigned char us,usn;
while(MS!=0)
{
usn = 2;
while(usn!=0)
{
us=0xf2;
while (us!=0){us--;};
usn--;
}
MS--;
}
}
void DelayKey(unsigned int HalfSecond)
{
unsigned int i;
for(i=0;i<20*HalfSecond;i++)
{
if(Key==0)
{
Delay(20);
while(Key==0) {Delay(20);}
break;
}
Delay(10);
}
}
void LcdInit( void )
{
CS = 0;
WriteMode(COM);
WriteCommand(0x01);
WriteCommand(0x03);
WriteCommand(0x04);
WriteCommand(0x05);
WriteCommand(0x08);
WriteCommand(0x18);
WriteCommand(0x29);
WriteCommand(0x80);
WriteCommand(0x40);
WriteCommand(0xE3);
CS = 1;
}
void FullRAM(unsigned char *puts,unsigned char n)
{
unsigned char i;
CS = 0;
WriteMode(DAT);
WriteAddress(0);
for(i=0;i<16;i++)
WriteData(puts[16*n+i]);
CS = 1;
}
void main( void )
{
unsigned char i;
Delay(20);
LcdInit();
while(1)
{
for(i=0;i<9;i++)
{
FullRAM(HT1621,i);
DelayKey(100);
}
DelayKey(1000);
}
}
unsigned char code HT1621[]={
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,
0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,
0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -