已经查了很多资料都不知道怎么回事关于液晶读取数据

2019-03-24 18:57发布

我的写的一个函数:这是12864液晶画点时要读取数据的函数
static char st7920_read()
{
    set_lcdr(RS);
    set_lcdr(RW);
    LCD_DATA = 0xff;//LCD_DATA是通过英特尔总线的液晶八位数据接口对应的锁存器的变量  代表了八位数据接口
    lcd_data = LCD_DATA;//读出数据    但是通过仿真每次经过这一步之后返回的lcd_data都是0xff,这是什么原因呢  
    set_lcdr(EN);
    clr_lcdr(EN);
   return lcd_data;
}   

求高手解答一下 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
yuxuanwang0725
1楼-- · 2019-03-25 01:15
LCD_DATA = 0xff; 你把0xff 赋值给了LCD_DATA ,然后又将LCD_DATA 的值付给了 lcd_data ,最后每次出来的 lcd_data 值肯定都是0xff了啊。
不知道是不是这个原因,,呵呵
fu563048951
2楼-- · 2019-03-25 06:36
那不是赋值   是读引脚前的写1操作。但是把这个写1操作去掉后 每次执行到这个函数,返回的数值都是0XFF,真是伤透脑筋了……
Li_Lei
3楼-- · 2019-03-25 06:53
lcd_data = LCD_DATA;
这句在en之后

另外第一次读的数据作废
fu563048951
4楼-- · 2019-03-25 07:11
 精彩回答 2  元偷偷看……
Li_Lei
5楼-- · 2019-03-25 11:23
仿真?你怎么仿真的?
lancelod
6楼-- · 2019-03-25 12:12
不要仿真 仿真都是扯淡

一周热门 更多>