串行12864显示

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint  unsigned int


sbit CS=P2^5;
sbit SID=P2^6;
sbit SCLK=P2^7;
sbit RST=P2^2;
sbit CH = P2^4;



void delay(unsigned int t)
{
unsigned int i,j;
for(i=0; i<t;  i++)
    for(j=0; j<10; j++);
}

void sendbyte(unsigned char zdata)
{
unsigned int i;
for(i=0; i<8; i++)
{
if((zdata << i) & 0x80)
{
SID = 1;
}
else 
{
SID = 0;
}
SCLK = 0;
SCLK = 1;
}
}



void write_com(unsigned char cmdcode)
{
CS = 1;
sendbyte(0xf8);
sendbyte(cmdcode & 0xf0);
sendbyte((cmdcode << 4) & 0xf0);
delay(2);
}


void write_data(unsigned char Dispdata)
{
CS = 1;
sendbyte(0xfa);
sendbyte(Dispdata & 0xf0);
sendbyte((Dispdata << 4) & 0xf0);
delay(2);
}


void lcdinit()
{  
RST = 0;
delay(100);
RST = 1;
delay(20000);
write_com(0x30);
delay(50);
write_com(0x0c);
delay(50);
}


void hzkdis(unsigned char code *s)
{  
while(*s > 0)
    { 
write_data(*s);
s++;
delay(50);
    }
}



void Test()
{  
write_com(0x03);
delay(50);    
write_com(0x81);
hzkdis("   HOT-51");
write_com(0x91);
hzkdis("µ¥Æ¬»ú¿ª·¢°å");
write_com(0x89);
hzkdis("          ");
write_com(0x98);
hzkdis("    ¶«Á÷µç×Ó");
}





void Main()

CH = 0;
delay(1);
lcdinit();
delay(10);
while(1)
{
Test();
delay(5000);
}
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值