单片机用来驱动发光矩阵,可以驱动8x8,16x16,32x32,到底一个单片机可以驱动多少个发光矩阵,是不是无限的?回答肯定是否定的,实际上,单片机驱动发光矩阵的能力并不强,因为单片机驱动发光矩阵是用扫描的方法实现的,在同一时间只有一行发光二极管发光,所有发光二极管按八个一组分时发光,而我们的眼睛特点要求这种扫描的频率要达到每秒25帧以上才能比较好的显示,每帧的时间是40毫秒,在这40毫秒的时间里,单片机要对每一组发光的二极管进行四步操作:选址,点亮,维持一段时间(延迟),熄灭发光二极管(消隐)。在这四步操作中,延迟时间决定发光二极管的亮度,不能太短,否则严重影响显示效果,再加上其他的操作也要花费时间,所以单片机驱动发光矩阵的能力非常有限,根据点亮发光二极管的方式不同,可以分为并行点亮和串行点亮,并行点亮是八位数据传送,串行点亮是用595芯片串行传送数据,速度比并行传送慢。根据这两种情况,本人各做了一个单片机驱动发光矩阵能力的测试装置,方法是单片机驱动最多16个发光矩阵的装置,测试单片机在点亮发光二极管达到必要亮度的情况且每秒扫描25帧以上速度时,可以驱动几个发光矩阵。根据测试,串行传送数据可以驱动8个发光矩阵,并行传送数据可以驱动14个发光矩阵。这就说明单片机驱动32x32以上的装置意义不大。下面是测试方案仿真图,实际测试与仿真不太一样,但结果差不多。下面是两个方案的测试图。完整方案和程序在附件中。
并行测试方案:
串行测试方案
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
全部资料51hei下载地址(含单片机源程序):
驱动能力分析.zip
(394.55 KB, 下载次数: 9)
|