请教1602液晶读“忙”

[复制链接]
 楼主| 182006 发表于 2007-10-22 21:06 | 显示全部楼层 |阅读模式
很多资料里有介绍1602在送指令或数据之前需要检测“忙”状态,资料上是这样讲的:<br /><br />BF为忙碌信号(Busy&nbsp;Flag,简称BF),当BF为1时,不接收微机送来的数据或指令;当BR为0时,接收外部数据或指令,所以,在写数据或指令到LCD之前,必须查看BF是否为0;<br /><br />请教大侠们:这个检测“忙”状态要掌握怎样的时序啊?下面的这种写法对吗?<br />DELAY:&nbsp;&nbsp;MOV&nbsp;P1,#0FFH&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;P1为D0-D7数据端口。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLR&nbsp;RS<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SETB&nbsp;RW<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLR&nbsp;E<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NOP<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SETB&nbsp;E&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;A,P1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JZ&nbsp;&nbsp;DELAY<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RET&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />经调试,这种方式调不过。<br />我看过一些别人的程序,有些根本就不去检测“忙”,直接用个记数延时,请问真正的读“忙”是怎么样检测的呢?请给个子程序或完整的程序参考,谢谢!
sutie2008 发表于 2007-10-25 22:15 | 显示全部楼层

如果速度低,可以不读

但是需要注意,有些命令执行时间是ms级,延时一定要够,即使加了判忙。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

127

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部