完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
`近日在用proteus仿真,依据书里的知识,对照着连接了电路。并且自认为理解了程序,写了下来。但是,最终还是无法达到预期的目的。求各位大神帮帮忙!~ 电路图: 相对应的程序: #include #define uint unsigned int #define uchar unsigned char ***it RS=P2^0; ***it RW=P2^1; ***it EN=P2^2;//LCD的三个控制端 void delay(uint n) //延时函数 { uint i; uchar j; for(i=n;i>0;i--) for(j=0;j<100;j++); } void write_LCD_command(uchar value)//写命令函数 { //Read_busy(); RS=0; RW=0; EN=1; P0 = value; delay(haha);//采用了“haha”作为延时时间量,方便调整,下同 EN=0; delay(haha); } void write_LCD_data(uchar value)//写命令函数 { RS=1; RW=0; EN=1; P0 = value; delay(haha); EN=0; delay(haha); } void init_LCD() //初始化 { write_LCD_command(0x38); //8位,2行,5x7 write_LCD_command(0x0c);//开显示,不显示光标,且不闪烁 write_LCD_command(0x06);//每次写入数据后地址指针加1 write_LCD_command(0x01);//清屏 } //*******显示字符函数********* void LCD_disp_char(uchar x,uchar y,uchar dat) { uchar address; if(y==1) address=0x80+x; else address=0xc0+x; LCD_write_command(address); LCD_write_data(dat); } void main()//主函数 { int haha; haha=10; P0 = 0x00;//意图是清零 P2 = 0x00;// init_LCD(); while(1) { LCD_disp_char(0,1,'A');//在第一行显示字符“A” } } 以上就是我的设计以及遇到的问题。望各位大神们解答一下~~ ` |
|
相关推荐
2个回答
|
|
回帖奖励 +1 分积分
看完程序先
|
|
|
|
你确定程序是正确的吗?少了两个文件头:
#include #include 其他的也有错误。参考下别人的文章吧,,https://bbs.elecfans.com/jishu_406700_1_5.html |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
7798 浏览 3 评论
9050 浏览 1 评论
9269 浏览 0 评论
Protues中自己封装的芯片元件无Program File、Clock Frequency选项怎么解决,求求大神了!
11154 浏览 1 评论
基于51单片机的车辆倒车雷达报警系统,HC-SR04超声波测距,全套资料
1334 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-26 04:33 , Processed in 0.408007 second(s), Total 64, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号