如何快速刷新LCD,调节UNO R3的时钟?
2013-04-271.1万
AI 快速预览详细
本文讨论了如何提高UNO R3控制LCD12864的刷新速度。通过调整时钟频率至1MHz以上,并使用并行控制方法同时设置8个数据端口电平,可以显著提高刷新速度。文章还探讨了清屏时出现的问题及其解决方案。
|
刚刚开始接触,求指点,编了一个程序,并行的控制LCD12864,但是出现了问题,发现LCD切换图片的时间太慢了,用示波器测量了一下,大概一张图片扫描显示出来需要300ms,UNO R3的一行程序的时钟大概在4us,也就是250KHZ,如何可以切换成更快的时钟?也就是可以使得LCD一秒钟切换60次以上?现在才切换3次,太慢了。 1、有1MHZ或者以上的时钟吗?如何调节? 2、还有就是并行控制的时候有无一种程序指令可以像51那样可以同时控制8个数据端的电平,而不是一个管脚一个管脚的用digitalWrite去设置,这样应该会让LCD快几倍吧,不然并行的速度和串行的也没啥区别。。。。。 3、为什么我LCD刷新的时候有一些点一直不变,清屏的时候又消失了,是因为我扫描太快了吗?。。。如何改进?因为我读手册好像每个命令LCD的反应时间都在240ns以上,所以每个点设置数据的时候都没有等待,但是这样都扫描了300ms了,是哪里有问题了吗?。。。 |




每个端口都有三个I/O 存储器地址:
数据寄存器 – PORTx
数据方向寄存器 – DDRx
端口输入引脚 – PINx
数据寄存器PORTx和数据方向寄存器DDRx为读/ 写寄存器,而端口输入引脚PINx为只读寄存器。
上电默认DDRx=0x00,PORTx=0x00 输入,无上拉电阻
假设PA口驱动LED的负极,低电平灯亮
初始化方法1:
PORTA=0xFF; //内部上拉,高电平
DDRA=0xFF; //输出高电平---------灯一直是灭的
PINx是读并口引脚。