单片机ALE 脚或是利用串行口工作方式也会产生一定频率的脉冲,但没有SPI 方式下产生的脉冲频率高,且这两种方式的使用均有一定的限制,而启动SPI 方式比较方便。串行外围接口(Serial Perip heral Interface , SPI) 总线系统是一种同步串行外设接口,是Motorola 首先在其MC68HCXX 系列处理器上定义的。SPI 系统有4 个I/ O 脚,它们是串行时钟SPSCK、主机输入/从机输出数据线MISO、主机输出/ 从机输入数据线MOSI 和低位有效的从机选择数据线SS.SP2SCK用于同步数据从MOSI 输入和MISO 的输出传送。通过对SPI 控制寄存器SPCR 的设置,SPSCK的频率最高可以达到振荡器频率( fOSC )的1/ 4。

因为SPI 模式可方便产生出较高频率脉冲的优点,即采用SPSCK作为计数器的脉冲,利用计数器对存储器产生连续变化的地址,实现对数据的高速读出。并且SPSCK 信号经过变换与延时处理,可同时供给LED做SCK移位信号使用。

LED大屏幕的控制电路优化设计

图2 SPI 在读取存储器的运用

3 SPI 运用的实现过程

从上文可以得到这样的启示:在LED控制电路的设计中,可借助于SPI 模式读取数据,即增加一块SPI 模式的FLASH 存储器,一方面可以保存重要文档,另一方面可以利用SPSCK 产生的信号,通过计数器电路实现对存储器高速读数据,并且复用此信号产生屏幕显示的控制信号。在给定了输出数据的首地址并启动SPI 后,此方式使数据的读出到屏幕显示这一过程自动进行,同一信号源的全硬件方式大大减少了以往分别产生各控制信号方式时的衔接延时。图3 为SPI 在LED大屏幕控制电路中的运用示例。

LED大屏幕的控制电路优化设计

图3 SPI 模式下的LED大屏幕控制电路图

级联计数器的个数根据RAM 的容量大小,即地址线的数目来确定。微处理器通过驱动器连接SPI 串行存储器, 驱动器可以选择7407 或7417 的型号。RM_MODE 用来区别不同的读写操作方式。当RM_MODE = 1 时,是普通读写外部存储器的方式,当RM_MODE = 0 时,就可以让主机作为主器件,串行FLASH 存储器作为从器件,两者以SPI 方式进行通信,利用此时产生的SPSCK信号对存储器进行高速读数据操作。同时SPSCK信号经过变换与延时处理,可以供给LED做SCK 移位信号用。在计数脉冲的输入端,可以使用跳线做加、减方式的选择处理。当脉冲接于计数器UP 端时, 为加计数方式, 接于DOWN 时,为减计数方式。图3 也可扩展并接多组计数器,多组RAM.