河南城建学院本科毕业设计论文 系统的硬件设计与实现
2.2.4 数码显示模块电路的设计
图2.4 数码显示模块
如图2.4 所示,该模块主要由74LS47 译码器,74LS138 译码器和6 个8 段数码显示管组成,如图所示,从编码器输送过来的数据经过两片74LS47 芯片和74LS138 蕊片译码后,传送到8 段数码显示管,显示管根据接收到数据电平的高低来显示不同的数据。
从图中可以看到单片机P2 口低4 位连接一片74LS47 七段译码器,由于74LS47 是共阳极数码管的七段译码器,因此要选用共阳极的数码管。单片机P2.0-P21.3 的输出信号经过74LS47 译码后就可以驱动数码管的段码显示相应的数字,另外在74LS47 的输出与数码管之间还要接上7 个470 欧姆的限流电阻,以防止有过大的电流流过时烧坏数码管。P2.4-P2.6 口接于3-8 译码器74LS138 的三个输入端,而74LS138 的输出端通过三极管分别接于八个数码管的公共极。通过由P1.4-P1.6 口的输出量来控制74LS138 选择点亮某一个数码管。由于74LS138 是低电位有效,所以应该采用PNP 型的三极管来驱动数码管,在此三极管相当于一个开关的作用依靠这两块芯片就可以控制数码管实现动态扫描显示。
9
河南城建学院本科毕业设计论文 系统的硬件设计与实现
例如:使六个数码管显示123456。在第一时刻输出“0001”给74LS47,让数码管显示“1”,同时输出“000” 给74LS138,选择第一个数码管工作,其余数码管不工作,这样第一时刻就只有第一个数码管显示“1”,其余数码管均不显示。同理第二时刻也只有第二个数码管显示“2”,依次类推第N 时刻就只有第N 个数码管显示“N”。人的肉眼只能分辨0.1 秒内的变化,所以如果以每一时刻0.01 秒的频率循环变化,看起来就感觉每一个数码管都被点亮了,显示“123456”。
10
河南城建学院本科毕业设计论文 系统的软件设计
第3章. 系统的软件设计
3.1 系统软件概述
3.1.1 软件系统分析
本系统的工作流程为:通过键盘扫描来实现三种不同的功能,刚开始是设置的初始密码123456 通过数码管来显示,用10 个按键来输入0 到9 这从右到左依次输入,还用三个按键来显示密码,修改密码,开锁等。当开锁按钮被按下时,如果数码管与当前显示值相同,则点亮LED1;当数码管值不同时,则点亮LED2,并且立刻发出报警声音。
11
河南城建学院本科毕业设计论文 系统的软件设计
3.1.2 主程序流程图:
开始 初始化 自检子程序 键盘扫描子程序 有按键按下 相应子程序 显示子程序 循环
图3.1 主程序流程图
主程序说明:单片机复位后进入初始化把初始密码“123456”依次存放到40H 到45H六个单元中,把30H 到35H 六个单设置为六位数码管显示数据的存放地址,设置完毕调用自检子程序进入自检状态,自检完毕调用扫描子程序对键盘进行扫描,如果有按键被按下则跳转到相应的子程序,再调用显示子程序把30H 到35H 六个单元的数据给六个数码管显示出来。显示完毕就跳加扫描子程序继续对键盘进行扫描,如此循环。
12