搜索
bottom↓
回复: 10

LCD1602读忙检测的问题~?

[复制链接]

出0入0汤圆

发表于 2010-11-25 13:14:56 | 显示全部楼层 |阅读模式
刚接触LCD显示的问题..对LCD1602的忙检测不是很理解..看一些相关的例子这部分的程序基本都是这样写的
uchar LCD_Check_Busy(void)
{
  LCD_DATA=0xFF;  //LCD_DATA 为P0口.接LCD的D0~D7   ??这里为什么要给赋一个FF呢.?
  LCD_RS=0;            //LCD_RS 对应接LCD的RS
  LCD_RW=1;          //LCD_RW对接到LCD的R/W
  LCD_E=0;             //LCD_E对应接到LCD的使能端E
  LCD_Delay(5);
  LCD_E=1;
  while(LCD_DATA & 0x80);//这里LCD_DATA不是等于刚刚赋值的0xFF么?
  return(LCD_DATA);      //我查了很多资料,人家说赋值后会从LCD里读出新的值,但是读值的时候要在E的下降沿才能读啊..
}
以上是我的两个疑问..谁可以给我解答一下么?若能再介绍一下相关的.更加感谢!~

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

 楼主| 发表于 2010-11-25 15:58:51 | 显示全部楼层
怎么没人帮忙啊。。。

出0入0汤圆

 楼主| 发表于 2010-11-26 10:27:23 | 显示全部楼层
....

出0入0汤圆

发表于 2011-7-23 21:18:09 | 显示全部楼层
我也很困惑啊~~help~~~

出0入0汤圆

发表于 2011-7-23 22:53:51 | 显示全部楼层
LCD_DATA=0xFF;  //LCD_DATA 为P0口.接LCD的D0~D7   ??这里为什么要给赋一个FF呢.?
你现在用P0口输入,写FF这样P0口就是IO输入口而不是数据口,这样才可以去读引脚
另外说的“ //我查了很多资料,人家说赋值后会从LCD里读出新的值,但是读值的时候要在E的下降沿才能读”不对吧?
写是E下降,读是E高电平。

出0入0汤圆

发表于 2011-7-24 15:13:32 | 显示全部楼层
LCD_DATA=0xFF;  //LCD_DATA 为P0口.接LCD的D0~D7   ??这里为什么要给赋一个FF呢.?
答:这句我也不知道为什么这样写。
while(LCD_DATA & 0x80);//这里LCD_DATA不是等于刚刚赋值的0xFF么
答:这句的意思是当LCD_DATA的最高位等于1时就不停的等待,只有等于0时才跳到下一步。而LCD_DATA的最高位就是忙状态字即STA7,STA7=1表示忙,0表示空闲
return(LCD_DATA);      //我查了很多资料,人家说赋值后会从LCD里读出新的值,但是读值的时候要在E的下降沿才能读啊..  
答:我查了一下资料,确实是E的下降沿才读的,这个我也不明白。
另附一程序
uchar BUSY_CHECK()
{
    uchar lcd_status;
    RS=0;
    RW=1;
    EN=1;
    delayms(1);
    lcd_status=P0;
    EN=0;
    return lcd_status;
}
小弟新手,欢迎指教

出0入0汤圆

发表于 2011-7-26 01:39:00 | 显示全部楼层
P0口作为I/O时, 系统自动关闭内部的上拉场效应管,内部多路开关使得内部锁存器的负Q端与下拉场效应管接通, 因此,当P0口作为输入口使用时,应先向口地址写入1,使得内部内部负Q端输出低电平,以截至下拉场效应管,保证外部高电平能够输入到P0引脚上,从而程序能读到外部器件输出的高电平. 这就是为什么要读1602的状态需先输出0FF的原因. 不仅P0口,所有其它3个口,在作为输入口使用时,都应先输出1(可以在程序初始化部分设置一次,只要那个口不是交替做为输入和输出口就可以).

出0入0汤圆

发表于 2011-12-12 12:45:59 | 显示全部楼层
碰到类似问题,1602一直忙,怎么回事

出0入0汤圆

发表于 2013-8-20 12:32:25 | 显示全部楼层
liaozy 发表于 2011-12-12 12:45
碰到类似问题,1602一直忙,怎么回事

同问?????????
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 16:10

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表