单片机教程网

电脑版
提示:原网页已由神马搜索转码, 内容由www.51hei.com提供.
查看:1988|回复:13
打印上一主题下一主题

MCU+LCD12864读不出数据,预先把12864RAM清空了,读出来的值是0xff

 [复制链接]
跳转到指定楼层
楼主
ID:901339发表于 2021-4-7 11:59|只看该作者|只看大图回帖奖励
我想从12864读出当前地址的数据,按照网上说的,先把数据端口置高,然后读12864RAM的值。我预先把12864RAM清空了,但是读出来的值是0xff。我又试了一下不预先置高数据端,都是它读的数据都是我上一次写入的命令,麻烦大佬解答一下。


沙发
ID:390416发表于 2021-4-7 16:51|只看该作者
为何要读出来呢?有这种必要性吗?
板凳
ID:584814发表于 2021-4-7 17:03|只看该作者
研究是可以的但不实用,还有就是并口的可以读出其他的要看说明书。
显示器主要用于写,比如1602为省一个I/O就直接将某脚接地。
显示的数据是你自己发送的,如果真的需要可以自建数据缓冲区速度上要快。
以上是建议,不是解决问题的回答,供参考。

评分

黑币 +20
收起理由
+ 20
回帖助人的奖励!

查看全部评分

地板
ID:901339发表于 2021-4-7 17:29|只看该作者
man1234567 发表于 2021-4-7 17:03
研究是可以的但不实用,还有就是并口的可以读出其他的要看说明书。
显示器主要用于写,比如1602为省一个I/ ...

谢谢你的回复。我要实现的是在lcd上面打点画成一条曲线,如果不读出前一状态的RAM值,因为12864一次要写入16位,下一个点则会覆盖掉上一个点,我只能想到将之前的值读出,然后再重新写入。如果有更好的方案请不吝赐教。
5#
ID:160500发表于 2021-4-7 20:34|只看该作者
人家都说了可以建立缓存区
6#
ID:901339发表于 2021-4-7 23:36|只看该作者
liuzx66 发表于 2021-4-7 20:34
人家都说了可以建立缓存区

还是不太明白,我再研究一下。
7#
ID:901339发表于 2021-4-7 23:38|只看该作者
人人学会单片机 发表于 2021-4-7 16:51
为何要读出来呢?有这种必要性吗?

因为12864一次写入两个字节,在同一行后面的点会覆盖掉前面的点,所以把上一次状态读出,我根据网上的程序理解的,不知道对不对。
8#
ID:1063391发表于 2023-4-28 11:52|只看该作者
楼主解决了这个问题吗,我遇到了相同的问题;无法读取当前地址的数据
9#
ID:69038发表于 2023-4-28 14:03|只看该作者
3485910187 发表于 2023-4-28 11:52
楼主解决了这个问题吗,我遇到了相同的问题;无法读取当前地址的数据

12864单色屏,只需要1K(128*64/8=1024)的显示缓存,然后你就可以在缓存操作,随便折腾,搞完了,再刷新显示了。
10#
ID:384109发表于 2023-4-28 15:46|只看该作者
记得好像是可以的,读取数据再写回去,对于只需要更改少量的显示点是比较方便的
11#
ID:1074628发表于 2023-4-28 22:01|只看该作者
这个意义真不大,显示就可以了
12#
ID:879348发表于 2023-4-29 07:56|只看该作者
在程序中开辟一块RAM,映射到屏幕,这样就只需要处理内存数据,速度快还操作方便
13#
ID:1116366发表于 2024-4-24 11:20|只看该作者
楼主,请问你这个问题最后是怎么解决的
14#
ID:192020发表于 2024-4-24 13:37|只看该作者
afhyf 发表于 2021-4-7 23:36
还是不太明白,我再研究一下。

你要读上一次的值其实就是你上一次写的值,既然这样就没必要读了。建立1024字节的数组,写入时写数组进去,数组里的值就是你要读的值

手机版|小黑屋|51黑电子论坛|51黑电子论坛6群QQ管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网