使用室内全彩led显示屏时的注意事项
在使用此方法时,应注意计数器和RAM芯片的读写速度必须与SPSCK相匹配。SPI模式的速度相对较高。电路器件的读取速度越高,数据错误的概率就越小。此外,还有其他原因也会导致阅读数据时的错误。如果软件编写不当导致数据地址超过RAM空间,电路设计不注意计数器高速工作时加热对周围设备和布线的影响。
当使用SPSCK信号读取外部存储器时,SPI主也会从模式下产生溢出错误,即当多个数据连续传输时,后一个数据覆盖了前一个数据所产生的错误。造成这种错误的原因是,与主设备相比,SPIF从设备的传输标志到SPIF的传输标志都有一定的滞后。当主设备连续发送数据时,从设备的传输标志与主设备下一个数据的传输标志重叠,用SPSCK触发计数器将地址增加读取数据,第一个收到的数据也会被覆盖。这种传输错误可以通过软硬件来改进。在本文的设计中,软件编写采用了以下解决方案:先启动SPI模式,再进入计数器读取并行RAM,浪费一个时间序列。或者在RAM中存储数据时,全部存储在后一个地址单元上,然后通过SPI产生的脉冲读取RAM,就可以得到正确的数据。理论上,这种方法可以使显示数据的输出速度高达FOSC的1/
然而,在实际应用中,RAM、锁定器等输出电路器件的参数受到限制。SPSCK的速度设置应根据所选RAM的参数来确定,即满足RAM最小地址有效时间和数据有效时间的要求。在P3全彩led显示屏的显示过程中,读取数据频繁,随着显示面积的增加和色彩变化的丰富,对数据输出速度的要求越来越高。以普通方式读取一个字节的RAM数据至少需要两个机器周期,即24T(时钟周期)。使用SPI,数据的输出速度由SPSCK(最高可设置为FOSC的1/4)决定,而以普通方式读取RAM的速度只有1/24FOSC,即在SPI模式下,LED大屏幕电路的数据输出速度可以提高6倍。通过这种方法改造输出电路,原有的控制系统可以极大地满足数据高速输出的要求。本文给出的例子是基于P3室内高清全彩led显示屏的,但在LCD或其他对数据输出要求的系统中也具有参考意义。