中易网

c51单片机怎样让液晶显示数字999

答案:3  悬赏:0  
解决时间 2021-02-10 19:47
c51单片机怎样让液晶显示数字999
最佳答案
这是我的程序,不过 不同的板子程序是不一样的,具体要看你的I/O口了
#include<reg52.h>
#define uchar unsigned char
sbit lcden=P3^4;
sbit lcdrs=P3^5;
sbit dula=P2^6;
sbit wela=P2^7;
void write_com(uchar);
void write_date(uchar);
void init();
void delay(uchar z)
{
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
init();
write_date('999');
while(1);
}
void init()
{
dula=0;
wela=0;
lcdrs=0;
lcden=0;
write_com(0x38);
write_com(0x0e);
write_com(0x06);
write_com(0x01);

}
void write_com(uchar com)
{
lcdrs=0;
P0=com;
delay(5);
lcden=0;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void write_date(uchar date)
{
lcdrs=1;
P0=date;
delay(5);
lcden=0;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
全部回答
#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.你要写一个液晶的驱动. 之前你要明白你液晶的型号,接口. 怎么与单片机相连. 2.写完上面的,显示你也就会了. 查一下你液晶的型号,然后网上搜一下程序就可以了.
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
阿瓦提农场二队怎么去啊,有知道地址的么
找一部电影!主角会自由穿梭时间和空间的!
张喜超市地址有知道的么?有点事想过去
千颗万颗,照样子写词语
安装vb6.0企业版,最后说注册 D:vb\tools\VS-
外国电影兵哥猪场轮流···是真的跟猪?
吉他按品技巧
男生对有男朋友的女生说:不喜欢我就好!最怕
小猪佩奇朋友都叫什么,带图的那种,在线等,
宅基地是父亲名下我盖房子其他子女有权要
广州自由工作者如何办理医保社保
2010NBA季后赛5月18日湖人vs太阳高清录像下载
哪家航空公司头等舱最好
南桃元村村我想知道这个在什么地方
我是一个新手振动盘业务员。打电话怎么说。
推荐资讯
请问工厂用现金购泥砖修厂房3800应该怎样做记
买了个surface pro3,求助怎么分区
一九七一年,公历12月18号,农历是几?
有探测器能在山上找到蛇
新做的窗帘有油墨味,会对身体有害吗?
天猫超市缺货多久补货
{3x-2y=8 y+4x=7的解
求解这个书法落款和印章内容
莱茵半岛西一门(人行门)地址有知道的么?有点
列式计算(1)25和40的积是163与87的和的多少
皂角冲地址有知道的么?有点事想过去
工作去大理市还是大理镇好
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?