1、 - 1 - 摘摘 要要 本系统是基于 AT89S52 单片机设计的,由 2 片 74HC138 八位地址锁存驱动 LED 的行 信号,由 2 片 74HC595 八位串入并出驱动 LED 的列信号。16*16LED 的点阵由 4 块 8*8 的 SZ41288K 点阵拼接成。在本次的设计中主要是思路是通过定时器定时行扫描时间为 1ms,这样人眼由于延时看到的显示就是连续的。在进行扫描的时候,是先送每行的列 信号,然后选中当前需要扫描的行。每完成一次行的信号扫描,就跳出定时中断,定时 一秒后又重复下一行的扫描。当一个字的 16 行都扫描完后,延时一段时间,然后对下 一个字进行上述的重复扫描。
2、关键词关键词:16*16LED 点阵;AT89S52;74HC138 驱动行;74HC595 驱动列 1.设计任务及要求 题目题目9:1616 LED点阵显示汉字 设计要求:通过单片机利用 1616 LED 点阵循环显示汉字“我爱单片机” 。 2.方案选择: 1、采用 32 个 IO 口分为两组 16 个 IO 口,分别驱动行和列。这种方法需要注意 P0 口外接上拉电阻,并且全部 IO 都占用,不能使 LED 电路模块化。 2、使用锁存器驱动行信号,串入并出移位寄存器驱动列信号,这种方法能够使 IO 的使用减少,只需要 8 个 IO 口,可以实现 LED 部分的模块化。 本次课程设计采用的是方
3、案 2 2.1 总体设计方案 用两片片74HC138控制行信号,在对进行片选控制的时候保证,每当第一片74HC138 的Y0-Y7扫描完毕 (点阵的第一至八行的扫描) , 进入下一片74HC138进行Y0-Y7的扫描 (点 阵的第九行至十六行的扫描) 。用两片74HC595采用级联的方式,保证一次输出16列的字 码信号。整体通过定时器定时1ms产生中断,每1ms就扫描一行,当一个字16行扫描完毕 后,重复扫描一段时间,用于延时。直到扫描完“我爱单片机”五个字后程序重复执行, - 2 - 这样就能实现“我爱单片机”循环显示。 图2.1 整体设计 3.硬件电路设计 整体原理图见仿真图附件 (在仿真
4、中单片机最小系统没有接复位电路, 和晶振电路, 三极管开关电路用非门代替以及电阻未接)其实际硬件细化模块如下: 3.1单片机最小系统模块 图3.1 单片机最小系统 - 3 - 最小系统主要包括复位电路,晶振电路,但注意单片机的EA端必须接高电平,否则 在做实体时,不会读片内的程序。 图3.2晶振电路 图3.3复位电路 3.2 16*16LED驱动模块: 整个设计,抛开单片机最小系统,剩下部分作为一个整体LED点阵模块。其整体硬 件原理如图。 图3.4 16*16点阵模块 - 4 - 3.3.2 2. .1 1 行信号驱动 74HC138译码器的管脚图 : 图3.5 74HC138管脚图 其工作功能表如下: 图3.6 74HC138真值表 E1、E2、E3用于74HC138的信号使能端。只有当E1、E2为低电平,E3为高电平的时候, 片选才能被选中,通过A2-A0的组合,可以选择性的控制Y0-Y7的某一个口输出低电平。 - 5 - 本次课程设计行驱动的方式及原理 图中的线上的标号A,B,C,D,EN分别 与P2口的P2.0