完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
10个回答
|
|
我现在只是简单的想要上电后能够显示:“welcome”,我该怎么做?
|
|
|
|
显示应该是先查忙,后写入数据,你是先写如数据,后查忙,试试到过来看看如何
|
|
|
|
是不是调清晰度的那个电位器的问题,调一调?
|
|
|
|
只显示一行黑框说明液晶屏处于加电初始状态,没有写入指令。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
改成这样试试吧,写数据和写命令除了lcdrs不同外,其他都一样,不过液晶的初始化都是写命令,所以写命令调通了,写数据照着改就可以了
void sendd(uchar c) {//给lcd送数据 unsigned char lcd_data; SFRPAGE = 0x0f; EA=0; do { lcdcs=0; P5=0xff;//先置1,后读取 lcdrs=0; lcdrw=1; lcdcs=1; lcd_data = P5; lcdcs=0;} while(lcd_data & 0x80); lcdcs=0; P5=c; lcdrs=1; lcdrw=0; lcdcs=1; lcdcs=0; EA=1; } |
|
|
|
可以把程序内其他内容屏蔽,单独调试液晶屏驱动程序,如果开发板上RW端固定接地就不要设置RW端,只写不读,也不查忙。参考程序如下: /*******100us延时程序********/ void delay(uint x) { uint a,b; for(a=x;a>0;a--) for(b=10;b>0;b--); } /*******液晶写指令程序********/ void write_com(uchar com) { LCD_EN=0; //初始设置LCD_EN低电平 LCD_RS=0; //允许写指令 P0=com; //传递指令 delay(10); //延时1ms LCD_EN=1; //使能写入 delay(10); //延时1ms LCD_EN=0; //低跳变执行 } /*******液晶写数据程序********/ void write_date(uchar date) { LCD_EN=0; //初始设置LCD_EN低电平 LCD_RS=1; //允许写数据 P0 =date; //传递数据 delay(10); //延时1ms LCD_EN=1; //使能写入 delay(10); //延时1ms LCD_EN=0; //低跳变执行 } /*******液晶初始化程序********/ void init() //设置显示模式、 { write_com(0x38);//设置16*2显示,5*7点阵,8位数据接口 write_com(0x01);//显示清零,数据指针清零 // write_com(0x0f);//设置开显示,显示光标,光标闪烁 // write_com(0x0e);//设置开显示,显示光标,光标不闪 write_com(0x0c);//设置开显示,不显光标 write_com(0x06);//设置写一个字符后地址指针加1 // write_com(0x07);//设置写一个字符后整屏左移 write_com(0x80);//数据指针初始化,设置显示初始位置 } |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【每周推荐】采用11代Intel CPU,基于youyeetoo X1开发板搭建少儿AI智能STEAM积木平台
765 浏览 0 评论
2235 浏览 2 评论
【youyeetoo X1 windows 开发板体验】+ 影音处理和AI模型移植
2094 浏览 5 评论
I.MX6ULL-飞凌 ElfBoard ELF1板卡- 移植zbar的方法
1682 浏览 0 评论
2646 浏览 3 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
5478 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-18 17:44 , Processed in 0.629293 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号