图 1 系统结构框图
主要的模块如下:
1.可编程定时/计数器 8253
定时/计数器 8253 主要是用于定时 20ms,触发中断进行键盘扫描。电路连线是
CLOCK0 接 Q6 , 分 频 后 频 率 为 46875Hz , OUT0 接 中 断 IRQ2 , 每 20ms 中 断 一 次
GATE0 接 5v。计数器的初值应该是 3A9H。
2.8255 并行接口单元
8255 主要是用于键盘的扫描和发光二极管的数据输出。所以用 8255A 口的低 5 位接 5
个发光二极管,B 口低 4 位接非编码键盘的列线,高 4 位接键盘的行线。
3
. LED 显示系统
虽然只用了 1 格 LED 显示器,但为了数字更新更方便,主程序更加简单,故此系统
选用动态显示方式。由于系统的软件部分的运行时的核心程序是一直循环的,因此显示程
序也是在循环过程中一直被调用,从而实时地被显示出来。
4.非编码键盘
本系统采用的是行反转法来扫描键盘的,调用键盘扫描的程序 TESTKEY 后,程序
中的变量 KEY 的值就是按下的键的值,如果 KEY 为 0FFH 则表示无键盘输入,为 0~15
则按照上往下从左往右的顺序分别代表每一个按键按下的信息。不过此扫描程序没有考虑
到多个按键同时按下的情况。又因为模拟电梯的按键一般不会有两个按键同时按下的情况,
所以,多个按键的情况可以不予考虑。
Q6
IRQ2
5V
clk0
GATE0
OUT0
A 口
8255
B 口
C 口
LED 显示
模块
CS0
CS1
CS2
CS3
5 个发光二
极管
非编码键盘
片选