东北大学接口核心技术优秀课程设计(2)
接口技术课程设计 --8路抢答器 一. 试验功效 1.试验要求 设计一个含有8路抢答抢答器,利用并行接口和开关键。逻辑开关K1---K8代表抢答按钮,当某个逻辑开关闭合时,相当于抢答按钮按下,此时在七段数码管上将其号码显示出来,并使喇叭响一声(或以发光二极管替换)。 2、实现过程 开启计算机,计算机自动为系统各芯片进行初始化,抢答器开始工作。 比赛开始,在主持人按下开始键,绿灯亮后,选手才可开始抢答,不然违规。若选手抢答成功,LED显示器显示选手号码,扬声器鸣叫。若选手抢答违规(主持人未按开妈键),LED显示器显示违规选手号码,红灯亮,扬声器报警,并依据比赛规则进行对该选手进行扣分。 若系统提醒某号选手抢答违规,主持人仍未按开始键,此时该号选手又按下抢答键,LED显示器显示该选手号码。本系统开机后,若主持人既未按复位键又未按开始键,此时有选手按下抢答键,系统提醒红灯亮,并报警。 注 1、抢答成功,置8253通道2计数值为1000,扬声器鸣叫声音频率为1MHz/10001KHz。 2、抢答失败,置8253通道2计数值为,扬声器鸣叫声音频率为1MHz/0.5KHz。 3、扬声器鸣叫或报警时间为12s。 二.试验原理 1.芯片控制字要求 (1)中止优先级管理器8259A控制字要求 芯片控制字采取边缘触发,单片8259,要写入ICW4控制字 中止类型码控制字设置IR0IR7中止类型码依次为08H、09H、、0FH 方法控制字优先级设置方法为全嵌套方法即固定优先级方法,主片工作在缓冲方法下,中止结束方法采取中止非自动结束方法,8259工作在80X86系统上。 (2)可编程并行接口芯片8255A控制字要求 A口工作在方法0,做为输入端口用于连接选手按键(PA7PA0依次对应按键18);B口工作在方法0,做为输出端口,经驱动器1连接LED显示器(PB7PB0依次对应连接LED显示器dp、g、f、e、d、c、b、a七段数码管管脚);C口也必需工作在方法0,高4 位做输入端口(此次设计中只用PC4、PC5,分别用于连接复位键和开始键),低4位做输出端口(PC3PC0,经驱动器2后PC1、PC2、PC3分别用于连接黄、红、绿三个发光二极管,PC0连接到8253GATE1端,以控制通道1计数)。 (3)可编程定时器/计数器8253控制字要求 通道0操作类型为先读写低字节再读写高字节,工作在方法3即方波发生器,计数格式为BCD码,计数初值为4000。 通道1操作类型为先读写低字节再读写高字节,工作在方法1即可重触发单稳态触发器,计数格式为BCD码,计数初值为3000。 通道2操作类型为先读写低字节再读写高字节,工作在方法3即方波发生器,计数格式为BCD码,计数初值为0。 2.总体设计框图 因为此次试验要用到数码显示、中止控制、倒计时等功效,故初步分析,需要8255、8259、8253等芯片。 经过分析,试验关键是正确判定出最先抢答者信号并锁存,而同时不理会其它抢答者信号。为此,可将8个抢答按钮信号经过一个8位并行输入口接至微机中。当主持人开启抢答过程后,微机经过该并行输入口循环对8路抢答信号进行采样。当采样到那一组抢答信号已经发出,则立即停止采样,并统计下该组组号,每路抢答按钮电路能够参考图2.1进行设计。 5V 1 图2.1抢答按钮电路 由图可知,当8组均未按下抢答按钮时,送入到并行接口8位抢答状态全部是0,而当微机采样到这8位数据不为0时,则表示有一组取得了抢答机会,然后经过逐位查询个位状态,即可判定出哪一组抢答成功,最终利用并行输出接口将抢答成功组号现实出来.在试验中,能够仅用一位7段数码管来显示抢答选手组号. 为了对抢答后回复时间进行计时控制,能够利用一个可编程定时计时器,先置计数初值,再计时,当计时时间到后,由并行接口输出一个响铃信号提醒抢答选手回复时间已到。 因为本系统要求对犯规组亮红灯警告,所以要设置一个开启按键,在主持人按下开启按键之前,假如有抢答钮被按下,则该抢答选手犯规,能够经过并行接口输出一个信号使该组红色发光二级管点亮以示该组选手犯规。 总而言之,本试验硬件电路设计图2.2。 微机扩展总线插孔 AB 译码电路 并行接口 定时器 驱动器 七段数码显示器 犯规指示LED 抢答按钮电路 时钟电路 开启按钮及电路 8因为本系统要求对犯规组亮红灯警告,所以要设置一个开启按键,在主持人按下开启按键之前,假如有抢答钮被按下,则该抢答选手犯规,能够经过并行接口输出一个信号使该组红色发光二级管点亮以示该组选手犯规。在设计中能够采取中止方法输入开启按键状态,为此能够将开启按键信号直接接到微机某根中止请求线上。 总而言之,本试验硬件电路可参考下图1示硬件结构示意图进行设计。 图2.2 硬件结构示意图 其中8255和8086连接图以下图2.3 图2.3 8086和8255连接图 3. 硬件总体设计 (1)系统方案 该抢答器所要器件中止优先级管理器8259A、可编程并行接口芯片8255、可编程定时器/计数器8253,三个一样驱动器,黄、红、绿三个发光二极管,十三个电阻,一个8输入和非门,一个非门,一个扬声器,一个LED显示器,10个按键。 (2)内存单元编址 ①中止优先级管理器8259A端口地址为20H、21H ②可编程并行接口接口芯片8255A端口地址为80H、81H、82H、83H ③ 可编程定时器/计数器8253端口地址为40H、41H、42H、43H (3)键盘、扬声器及显示功效定义 10个按键中,一个开始键一个复位键,另外8个用做8位选手抢答按键。扬声器用和黄、红、绿三个发光二极管配合使用,黄灯亮扬声器鸣叫表示抢答成功,红灯亮扬声报警表示抢答违规报警,绿灯亮扬声器不鸣则表示主持人已按下开始键。LED显示器显示内容和选手号对应,抢答成功或违规全部要显示。 4. 软件总体设计 (1)存放单元分配、标志位含义 ① 定义一个TAB变量用来存放19字形码信息,以下表 LED管脚 对应字形 对应存放在内存 单元字形码 dp、g、f、e 、d、c、b、a 0 0 0 0 0 1 1 0 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 2 3 4 5 6 7 8 9 06H 5BH 4FH 66H 6DH 7CH 07H 7FH 6FH ② 定义一个BZ变量作为标志位,用来选手抢答是