完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
void LCD_check_busy(void) //检测LCD1602状态,看它是不是还在忙呢
{ while(1) { LCD_EN=0; LCD_RS=0; LCD_RW=1; LCD_DATA=0xff; //这里为什么需要赋值? LCD_EN=1; if(!LCD_BUSY)break; } 求高人指点 |
|
相关推荐
4个回答
|
|
你如果对51系统的IO结构了解到话,这个问题就不会问了;
51的P1,P2,P3都是准双向口,通过端口引脚的上拉电阻实现,因此不会出现电平竞争; 在数据口输出0xFF,是为了将IO口释放,确保能够接收到由外设驱动的电平信号,最后才能对数据口的位7检测LCD_BUSY; 当然,从代码效率来说,这一句可以放在循环外面。
最佳答案
|
|
|
|
补充说明:
#ifndef __HARDWAR_H__ #define __HARDWAR_H__ #include /*--------------------------------------------------------- LCD数据、控制口定义 ---------------------------------------------------------*/ #define LCD_DATA P1 //LCD的数据口 ***it LCD_BUSY=LCD_DATA^7; //LCD忙信号位 ***it LCD_RW=P2^0; //LCD读写控制 ***it LCD_RS=P2^1; //LCD寄存器选择 ***it LCD_EN=P2^2; //LCD使能信号 #endif |
|
|
|
|
|
|
|
还是先好好学学51方面的知识吧,上来就想编程序是不行的
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2024年上海海思MCU开发者体验官招募,手机/MatePad大奖等你拿!
1306 浏览 0 评论
【xG24 Matter开发套件试用体验】蓝牙控制板载LED
953 浏览 0 评论
1178 浏览 0 评论
电赛:mspm0l1306的开发板可以烧录程序,但是程序运行不了,怎么解决这个问题?
1223 浏览 1 评论
【xG24 Matter开发套件试用体验】Silicon Labs 基于 EFR32MG24 Explorer Kit 开发板 开箱试用体验
937 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
10554 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-9 11:16 , Processed in 1.436590 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号