竞赛抢答器的设计与制作硬件课程设计报告包含电气原理图、流程图、模块分析、源代码设计背景完整报告等内容内容摘要:

,这时输出端 OUT进入初始态。 (2)当初始值写入计数器以后,要经过一个时钟周期,减法计数器才开始工 作,时钟脉冲的下降沿使计数器进行减 1 计数。 计数器的最大初始值是 0,用二进制计数时 0 相当于 216,用 BCD 码时, 0 相当于 104。 计算机学院 2020 级硬件课程设计 10 (3)对于一般情况下,在时钟脉冲 CLK 的上升沿时,采样门控信号。 对门控信号 (GATE)的触发方式是有具体规定的: 门控信号为电平触发的有:方式 0,方式 4。 门控信号为上升沿触发的有:方式 1,方式 5。 门控信号可为电平触发也可为上升沿触发的有:方式 2,方式 3。 计数方式 的有:方式 0,方式 1,方式 4,方式 5 定时方式的有:方式 2,方式 3。 322 8253A 的工作方式 对 8253A 的工作方式只介绍本实验中用到的两种: ( 1)方式 0(计数结束产生中断的计数器 ) 写入方式控制字后,输出端 OUT 为低电平;写入计数常数后,开始计数。 计数器减为 0 之前,输出端 OUT 维持低电平。 当计数值为 0 时,输出端 OUT 才变为高电平,向 CPU 发出中断请求,直到 CPU 写入新的控制字或者写入新的计 数值为止。 方式 0 可由门控信号控制暂停, GATE 为低电平时,计数器暂停, GATE 信号变高后,就接着计数。 计算机学院 2020 级硬件课程设计 11 ( 2)方式 3 (方波发生器 ) 写入方式 3 的控制字后, OUT 变高,设 GATE 为高先到,计数器对 CLK计数,设计数初值为 N。 当写入的计数初值为偶数,则计数时,每输入一个计数脉冲,均使计数值减 2。 计数值减为 0 时, OUT 由高变低,同时自动装入计数初值,继续进行计数。 当计数值尖为 0 时, OUT 又回到高电平,同时再次装入计数值,开始下一轮循环计数。 如果写入的计数值为奇数,则当输出端为高电平时,第一个输出脉冲使计数器减 1,以后来的每一个时钟脉冲,都使计数器减 2, 计数值为 0 时, OUT 由高电平变为低电平,同时自动重新装入计数初值进行计数。 这时第一个时钟脉冲使计数器减 3,以后每个计数脉冲都使计数器减 2,计数值为 0 时, OUT 端又回到高电平,并重新装入计数初值,开始下一轮循环计数。 323 8253 控制字格式 D7SC1D6SC0D5R W 1D4RW 0D3M2D2M1D1M0D0BCD00: 计数器 001: 计数器 110: 计数器 211 :无定义00 :锁存计数值 000 :方式 001 :读 / 写低八位 001 :方式 110 :读 / 写高八位 10 :方式 211 :先读 / 写低八位 11 :方式 3后读 / 写高八位 100 :方式 4 101 :方式 5 8253 控制字的格式00 :计数器 001 : 计数器 110 :计数器 211 :无定义0 :二进制1 : BCD 码 软件主要模块流程图 计算机学院 2020 级硬件课程设计 12 411 主流程图 检测 PC0是否为 1 进入抢答定时 20 秒 判断是否有键按下 否 是 确定第一个按下的键号 同时按下 出错,输出 0 延时,判断键号 送入数码管显示 超过 20s 抢答结束 口令未完有键按下 犯规灯亮 开始 “开始”口令落下 是 计算机学院 2020 级硬件课程设计 13 412 8255A 流程图 413 函数 WAIT1: 开 始 初始化 8255A C 口低四位读列, PB0,PB1 送行, A 口输出 读键盘 WAIT_1 检测是否所有键都松开 WAIT_2 检测是否有键按下 若均松开 有按下 延时 20ms,消抖动 仍按着 仍被压着,确定哪一个键被压下,查表确定按键编码 转换成数码管显示编码 显示该按键 结 束 若有被按下 ,继续检测 若没有则继续等待 若松开则继续检测 计算机学院 2020 级硬件课程设计 14 说明 : 检测是否有键仍被按下 ,若仍有键按下 ,继续等待该键被松开 ,若未检测到有键按下 ,继续进行检测是否有键被按下转到 WAIT2.。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。