打印

怎样节省液晶显示等待时间

[复制链接]
1673|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snakeemail|  楼主 | 2011-8-29 19:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
液晶是一个慢速设备,每次写液晶都要等待。有什么方法把液晶等待的时间省出来
沙发
virtualtryon| | 2011-8-29 22:39 | 只看该作者
液晶显示分页刷新,刷新完一页以后跑一次主程序,再回来刷新下一页,类似于把MCU的时间分为时间片。分时运行液晶显示程序以及其它主程序。

使用特权

评论回复
板凳
兰天白云| | 2011-8-30 10:26 | 只看该作者
用中断

使用特权

评论回复
地板
virtualtryon| | 2011-8-30 12:22 | 只看该作者
用中断是非常不好的方法,因为中断会涉及到中断负载率的问题,比如中断周期是T,中断运行时间是t,那么中断负载率就是t/T,而写液晶的page,是对寄存器的操作,有时序要求,用中断的话,中断运行时间会比较长.
一般来说中断的负载率必须小于30%,如果太大,就会影响主程序的运行.
中断要求短,平,快.
对于LCD显示,实时性要求不高,在200ms以内刷新完,人眼应该是没感觉的.

使用特权

评论回复
5
yewuyi| | 2011-8-30 13:26 | 只看该作者
用中断是非常不好的方法,因为中断会涉及到中断负载率的问题,比如中断周期是T,中断运行时间是t,那么中断负载率就是t/T,而写液晶的page,是对寄存器的操作,有时序要求,用中断的话,中断运行时间会比较长.
一般来说中断的 ...
virtualtryon 发表于 2011-8-30 12:22



影不影响,要看主程序执行的是什么。

使用特权

评论回复
6
yewuyi| | 2011-8-30 13:30 | 只看该作者
把写LCD的程序打包成一个任务函数,执行完写后就退出来去执行别的任务,定时执行LCD刷新任务即可。

如果你的代码中的任务都是长时间独占CPU的函数,那就没什么好办法了。

刷新LCD显示和EEPROM中写入一串数值是一样的道理,你总不能写入一个死等10MS,然后再写吧。。。

那个10MS内可以去做完N多的事情。

使用特权

评论回复
7
snakeemail|  楼主 | 2011-8-30 20:52 | 只看该作者
对于LCD显示,实时性要求不高,在200ms以内刷新完,人眼应该是没感觉的.
这个有什么依据?

使用特权

评论回复
8
virtualtryon| | 2011-8-30 21:39 | 只看该作者
7# snakeemail
这个是靠人的主观感觉出来的,可以实际试一下.可以肯定的是,LCD显示肯定不需要前后帧连续,所以不需要做到至少24fps.

使用特权

评论回复
9
yewuyi| | 2011-8-31 08:40 | 只看该作者
对于LCD显示,实时性要求不高,在200ms以内刷新完,人眼应该是没感觉的.
这个有什么依据?
snakeemail 发表于 2011-8-30 20:52



LCD显示刷新有两个时间,一个是多长时间刷新一次LCD显示缓冲,一个是向显示缓冲中送入数值的代码执行时间。

LZ的问题应当是第二个问题。

第一点不是问题,慢一点没关系,反而是太快了容易出现显示抖动。
第二点需要看你的程序结构,程序结构的关键是写出一个无阻塞的任务调度程序。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:提供500W线性 交流电源。0~300VAC,45~500Hz 提供10KW,0-330V直流电源,具体见http://blog.21ic.com/user1/3639/archives/2012/88528.html

547

主题

1910

帖子

8

粉丝