完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
本人新手,求大神解救。附上所编程序,以及液晶显示状况,求帮助。。。
#include #define uchar unsigned char #define uint unsigned int ***it dula=P2^6; ***it wela=P2^7; ***it lcden=P1^6; ***it lcdrs=P2^1; ***it lcdrw=P1^5; void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void write_com(uchar com) { lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; } void write_data(uchar dat) { lcdrs=1; P0=dat; delay(5); lcden=1; delay(5); lcden=0; } void init() { dula=0; wela=0; lcden=0; lcdrw=0; write_com(0x38); write_com(0x0e); write_com(0x06); write_com(0x01); } void main() { init(); write_data('a'); while(1); } |
|
相关推荐
7个回答
|
|
|
在写数据前,要先确定是在哪个位置上写。
你应该封装一个显示函数。 void lcd_dispchar(uchar x, uchar y, uchar a) { if(y == 1) //在第一行显示 x = 0x80 + x; else if(y == 2) //在第二行显示 x = 0xc0 + x; else return; lcd_wcom(x); lcd_wdat(a); } lcdrw=0; 这个最好放入在写数据和写命令语句里面。自己在看下时序图,调试下,应该可以的。 |
|
|
|
|
|
我也是新手,感觉可能是开发板上的跳线帽没接好。
|
|
|
|
|
|
出现这种情况一般是硬件电路没有连接好,比如是p0口没接上拉电阻
|
|
|
|
|
|
应该先写命令 再写数据
|
|
|
|
|
|
先定位再写数据
|
|
|
|
|
|
没什么问题,应该是别的地方有问题吧
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
234 浏览 0 评论
514 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
826 浏览 0 评论
1366 浏览 2 评论
814 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16910 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 22:50 , Processed in 0.696795 second(s), Total 88, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2133