应该用一个显示缓冲数组,把时间先送到数组,再送到595。
想要显示黑屏,就把黑屏的代码,送到数组。
间隔0.5秒,把时间数据和黑屏代码,轮流送到数组,再送到595,即可看到闪烁的效果。
没说是什么问题!【1】HC595输出不对头?...解决办法:选择了某位八段,要要延迟一段时间,大约1us这样的,以便保证SPI输出的数据的前沿在SPI_CS之后。另外一个产生错误的可能是“不断检测SPI_READY位”!建议不要接着检测,而是估计发送一个字节所花的时间,再考虑一个延迟。例如,发送一个字节为10us,则检测之前先延迟6us左右,再检测SPI_READY标志,不影响你的发送速率。这样做的原因是很多SPI核设计不是很好,还有可能是ARM7的IO速率与指令速率匹配。一个IO_R/W周期很长,而一个指令周期很短;
【2】位码不对?...................解决办法:严格检查PORT_DIR,保证引脚配置正确。
--------
长时间不鼓捣这东西了,具体还得请你自己细致测验。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)