书签 分享 收藏 举报 版权申诉 / 45
上传文档赚钱

类型八路数字抢答器微机原理及接口技术课程设计.docx

  • 上传人(卖家):唯美
  • 文档编号:4738717
  • 上传时间:2023-01-06
  • 格式:DOCX
  • 页数:45
  • 大小:460.01KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《八路数字抢答器微机原理及接口技术课程设计.docx》由用户(唯美)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    八路 数字 抢答 微机 原理 接口 技术 课程设计
    资源描述:

    1、 目录1. 微机原理及接口技术课程设计任务书P12. 八路数字抢答器 P52.1 功能介绍 P52.2 抢答器总体设计 P52.3 抢答器硬件设计 P62.4 抢答器软件设计 P112.5 实验结果 P192.6 程序优缺点 P232.7 收获和体会 P242.8 创新部分 P252.9 参考文献 P252.10 附录一 P262.11 附录二 P27 八路数字抢答器一 功能介绍 1、如果想调节抢答时间或答题时间,按抢答时间调节键或答题时间调节键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下加1s键,如果想减一秒按一下-1s键,时间LED上会显示改变后的时间,调整范围

    2、为0s99s, 0s时再减1s会跳到99,99s时再加1s会变到0s。 2、主持人按抢答开始键,会有提示音,并立刻进入抢答倒计时(预设30s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设60s抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。 3、如倒计时期间,主持人想停止倒计时可以随时按停止按键,系统会自动进入准备状态,等待主持人按抢答开始进入下次抢答计时。 4、如果主持人未按抢答开始键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下停止 键为止。 5、P3.0为开始抢答,P3.

    3、1为停止,p1.0-p1.7为八路抢答输入 数码管段选P0口,位选P2口低3位,蜂鸣器输出为P3.6口。P3.2抢答时间调整结,P3.3回答时间调整,P3.4为时间加1调整,P3.5为时间减1调整。二 抢答器总体设计1.1 抢答器的工作原理抢答器的工作原理是利用单片机的定时器T0、T1中断完成,其余状态循环调用显示子程序,用4个共阴极LED数码管来显示,用P0口作为数码管的八个段选,用P2口中的P2.0、P2.1、P2.2、作为4个数码管其中3个位选,P1口接8个按键,提供选手抢答,P3.0-P3.5四个接四个按键,提供开始、结束、答题时间调整、枪答时间调整,加1、减1调整之用。1.2 抢答器

    4、的总体设计 倒计时方案方面利用MCS-51的内部的定时/计时器进行中断计时,配合软件延时实现倒计时。该方案节省硬件成本,并且能够在定时器/计数器的使用、中断及程序设计方案方面得到锻炼与提高,显示方面采用穿行传输实现动态显示,该方案的硬件连接简单,但动态扫描的显示方式需占用CPU较多的时间,适用于单片机没有太多实时测控的任务场合三 抢答器硬件电路设计3.1芯片统计名称型号数量芯片89C511数码管7SEG-MPX4-CC1按钮BUTTON15电容CAP2电解电容CAP-ELEC1晶振CRYSTAL1电阻RES8喇叭SPEAKER(DEVICE)13.2硬件介绍3.2.1 芯片 89C51【1】【

    5、2】3.2.2 数码管其中DP为小数点 【3】数码管分共阳极和共阴极,都需要上拉电阻,以增加负载驱动能力。共阳极则每位低电平有效,共阴极则每位高电平有效单片机中共阳极段代码: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H 07 DB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH 8F单片机中共阴极段代码: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H 07 DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H 8F3.3 电路设计XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元

    6、件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。RST连接复位电路P0口控制数码管段代码P2口的低三位,控制数码管位选P3口:P3.0接开始按钮 P3.1接停止按钮 P3.2接抢答时间调整 P3.3接回答时间调整 P3.4接加1 P3.5接减1 P3.6接喇叭3.3.1芯片电路 芯片电路如图3.1 图3.13.3.2 复位电路复位电路如图3.2图3.2该复位电路采用上电自动复位和手动复位两种复位方式,图中网络标号所指9连接到单片机的复位引脚。要实现复位只需在,51系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与

    7、Vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为22F的电解电容和10k的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的。3.3.3 晶振电路晶振电路设计如图3.3图3.3MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。 单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和

    8、输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。 一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图2-2所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。3.3.4 数码管电路数码管电路如图3.4图3.4四 抢答器软件设计4.1 主程序设计此程序的及时采用定时器T0和T1中断完成,其余

    9、状态循环调用显示子程序。程序:START:MOV R5,#0BH MOV R4,#0BH MOV R3,#0BH ACALL DISPLAY;未开始抢答时候显示FFF JB P3.0,NEXT ACALL DELAY JB P3.0,NEXT;去抖动,如果“开始”按下就向下执行,否则跳到非法抢答查询 ACALL BARK;按键发声 MOV A,R1 MOV R6,A;送R1-R6,因为R1中保存了抢答时间 SETB OK;抢答标志位,勇于COUNT程序中半段是否查询抢答 MOV R7,#01H;读抢答键数据信号标志,这里表示只读一次有用信号 MOV R3,#0AH;抢答只显示计时,灭号数 AJ

    10、MP COUNT;进入倒计时程序,“查询有效抢答的程序”在COUNT里面4.2显示子程序的设计由于采用软件动态扫描实现数据显示,显示用十进制BCD码的数据对应段码存放在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查得对应的显示段码从P0口输出。P2口将对应的数码管选中,就能显示该地址单元的数据值。程序:DISPLAY: MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码输出/P2低三位做位选吗输出MOV A,R3MOVC A,A+DPTRMOV P2,#0FEHMOV P0,AACALL DELAY2MOV DPTR,#DAT2MOV A,R5MOVC A,A+DP

    11、TRMOV P2,#0FDHMOV P0,AACALL DELAY2MOV A,R4MOVC A,A+DPTRMOV P2,#0FBHMOV P0,AACALL DELAY2RETDAT1:DB 00H,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,71H;灭、1、2、3、4、5、6、7、8、9、灭、FDAT2:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,71H;0、1、2、3、4、5、6、7、8、9、灭、F4.3 定时器T0、T1中断服务程序的设计定时器T0用于响铃程序,定时器T1用于计时程序。当答题剩余5秒

    12、种时P3.6口不断取反使喇叭发出一定频率的声音,提示选手如图4.2图4.2 程序T0INT:MOV TH0,#0ECH MOV TL0,#0FFH JNB RING,OUT CPL P3.6;RING标志位为1时P3.6口不短取反使喇叭发出一定频率的声音OUT:RETI;=T1溢出中断(计时程序)=T1INT:MOV TH1,#3CH MOV TL1,#0B0H INC R0RETIINT0SUB:MOV A,R1 MOV B,#0AH DIV AB MOV R5,A MOV R4,B MOV R3,#0AH ACALL DISPLAY;现在两个时间LED上显示R1 JNB P3.4,INC0

    13、;P3.4为+1S键,如按下跳到INC0 JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DEC0 JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACK0 AJMP INT0SUBINC0:MOV A,R1 CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起 MOV R1,#00H ACALL DELAY1 AJMP INT0SUBADD0:INC R1 ACALL DELAY1 AJMP INT0SUBDEC0:MOV A,R1 JZ SETR1;如果R1为0,R1就置99 DEC R1 ACALL DELAY1 AJMP I

    14、NT0SUBSETR1:MOV R1,#63H ACALL DELAY1 AJMP INT0SUBBACK0:RETI;=INT1(回答时间R2调整程序)=INT1SUB:MOV A,R2 MOV B,#0AH DIV AB MOV R5,A MOV R4,B MOV R3,#0AH ACALL DISPLAY JNB P3.4,INC1 JNB P3.5,DEC1 JNB P3.1,BACK1 AJMP INT1SUB INC1:MOV A,R2 CJNE A,#63H,ADD1 MOV R2,#00H ACALL DELAY1 AJMP INT1SUBADD1:INC R2 ACALL D

    15、ELAY1 AJMP INT1SUBDEC1:MOV A,R2 JZ SETR2 DEC R2 ACALL DELAY1 AJMP INT1SUBSETR2:MOV R2,#63H ACALL DELAY1 AJMP INT1SUBBACK1:RETI4.4 抢答处理程序的设计当有选手第一个按下抢答器按扭时数码管显示选手号码,开始倒计时,并锁定抢答。当在此选手之后再有选手按下按扭时无效,数码管不变。REPEAT:MOV A,R2;使用锦囊时重新计时 MOV R6,A CLR RINGCOUNT:MOV R0,#00H;重置定时器中断次数 MOV TH1,#3CH MOV TL1,#0B0H;重

    16、置定时器RECOUNT:MOV A,R6;R6保存了倒计时间,之前应先将抢答或答题时间给R6 MOV B,#0AH DIV AB;除十分出个位/十位 MOV 30H,A;十位存于(30H) MOV 31H,B;个位存于(31H) MOV R5,30H;取十位 MOV R4,31H;取个位 MOV A,R6 SUBB A,#07H JNC LARGER;大于5s调到LARGER,小于等于5s会提醒 MOV A,R0 CJNE A,#0AH,FULL;1s中0.5s向下运行 CLR RING AJMP CHECKFULL:CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并请R0,

    17、重新计数 SETB RING MOV A,R6 JZ QUIT;计时完毕 MOV R0,#00H DEC R6;一秒标志减1 AJMP CHECKLARGER:MOV A,R0 CJNE A,#14H,CHECK;如果1s向下运行,否则跳到查“停/显示” DEC R6;计时一秒R6自动减1 MOV R0,#00HCHECK:JNB P3.1,QUIT;如按下停止键退出 JNB OK,CHECKK;只在回答倒计时才有效 AJMP NEXTTCHECKK:JNB P3.0,REPEAT;判断是否使用锦囊NEXTT:ACALL DISPLAY JB OK,ACOUNT;如果是抢答倒计时,如是则查询抢

    18、答,否则跳过查询继续倒数(这里起到锁抢答作用) AJMP RECOUNTACOUNT:MOV A,36H JNB ACC.0,TRUE1 JNB ACC.1,TRUE2 JNB ACC.2,TRUE3 JNB ACC.3,TRUE4 JNB ACC.4,TRUE5 JNB ACC.5,TRUE6 JNB ACC.6,TZ1 JNB ACC.7,TZ2 AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8QUIT:CLR OK;如果按下了“停止”执行的程序 CLR RING AJMP START;=正常抢答处理程序=TRUE1:ACALL BARK MOV A,R2 MO

    19、V R6,A;抢答时间R2送R6 MOV R3,#01H CLR OK;因为答题的计时不在查询抢答,所以就锁了抢答 AJMP COUNTTRUE2:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#02H CLR OK AJMP COUNTTRUE3:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#03H CLR OK AJMP COUNTTRUE4:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#04H CLR OK AJMP COUNTTRUE5:ACALL BARK MOV A,R2 MOV R6,A MOV R

    20、3,#05H CLR OK AJMP COUNTTRUE6:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#06H CLR OK AJMP COUNTTRUE7:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#07H CLR OK AJMP COUNTTRUE8:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#08H CLR OK AJMP COUNT;=犯规抢答程序=ERROR:MOV R0,#00H MOV TH1,#3CH MOV TL1,#0B0H MOV 34H,R3;犯规号数暂存与(34H)HERE:MO

    21、V A,R0 CJNE A,#06H,FLASH;0.3s向下运行-灭并停响 CLR RING MOV R3,#0AH MOV R4,#0AH MOV R5,#0AH;三灯全灭 AJMP CHECK1FLASH:CJNE A,#0CH,CHECK1;下面是0.8s的情况,响并显示号数并清R0,重新计 SETB RING MOV R0,#00H MOV R3,34H;取回号数 MOV R5,#0BH MOV R4,#0BH;显示FF和号数 AJMP CHECK1CHECK1:JNB P3.1,QUIT ACALL DISPLAY AJMP HEREQUIT1:CLR RING CLR OK AJ

    22、MP START五 实验结果5.1 非法抢答图5.1如图5.1所示,1号非法抢答,被锁定,数码管显示1号号码,并且一亮一暗的跳动,并伴有警告声。5.2 抢答或回答时间时间修改 如下图5.2所示,程序运行后点击“抢答时间调整”或“回答时间调整”,数码管显示初始倒计时时间30s,然后点击“加1”或者“减1”按钮,可根据自己需求调整抢答或回答时间。图5.25.3 正常倒计时 图5.3如图5.3所示,调整抢答时间为26s后,先按停止键,使数码管显示初始状态,接着按下“确定”键,这是会有蜂鸣声出现。抢答倒计时从26s开始,在26s内需要开始抢答,在最后5秒的时候,会发出警报声。若在26s内无人抢答,则如

    23、图5.4所示,回到初始状态。 图5.45.4 回答时间若有人抢答,在抢答键按下时,也会有蜂鸣声。则在数码管的第一位显示抢答者的号码,而且最后两位显示答题时间倒计时,如图5.5 图5.5此时,抢答区按键被锁,无人可以抢答。回答时间完结后,又出现如图5.4的现象。5.5 复位 按下复位键后,程序恢复初始状态。六 程序的优缺点优点: 此程序,较为简单明了,电路连接也不复杂,元器件使用也少,在硬件方面节省了材料。缺点:此程序较过简洁,若有时间可以更加拓展一下,而且,动态扫描的显示方式需占用CPU较多的时间,适用于单片机没有太多实时测控的任务场合。七 收获和体会通过此次课程设计,更加加深了对于单片机的了

    24、解,包括功能,芯片实现方式、结构,有哪些特殊规定。而且也明白了,虽然单片机的汇编语言虽然与微机很相似,但是也不尽相同,比如,微机中有比较代码CMP,而单片机中没有,又如寻址方式中,立即寻址方式,微机中如:MOV A,10H 而在单片机中为:MOV A,#10H。也知道了,复位电路,晶振电路的模样,且对CPU的89C51芯片有了更为深入的理解。也明白了,根据情况的不同,数码管可分为共阴极和共阳极,不同情况编写段代码也是不同的。还有一点就是,我知道了将C语言如何导入到单片机中,虽然此次实验,我并没有用到,但是在设计之初也有过尝试。步骤如下:1. 下载KEIL软件,然后再下载VDM51.dll插件,

    25、使得keil C51文件夹中Bin文件夹中出现此文件,然后再粘贴到PROTEUS文件夹下的MODELS文件夹下。2. 然后打开keil软件,project-new project,建立工程在PROTEUS所产生的DSN文件的同一个文件夹下,然后选择自己在PROTEUS中所选用的芯片3. 新建-保存为.C格式。右击如图所示中的SOURCE GROUP,选ADD FILES TO GROUPsource group , ,然后打开所设立的C文件,编辑后,用PROJECT-BUILD进行调制。然后打开project-option,点击target,改变晶振大小,然后点击output,选中Create

    26、 HEX file 4. 然后点击中的第一第二个图标,生成.hex文件。5. 然后双击proteus中的芯片,从中导入。八 创新部分 在抢答还未开始的时候,若是抢答键按下,则锁定,并有蜂鸣声 还可以对抢答时间或者回答时间进行调整。 按下复位键后,所有的都恢复到初始状态九 参考文献1. 89C51引脚图及功能 窝中【狼】 2. 89C51 广州周立功单片机发展有限公司(从CSDN上下载下来)3. led数码管介绍 4. 微机原理与接口技术 刘永华,王成端 ;清华大学出版社; 2006年出版 5. 微机原理及应用课程设计指导书 陈秋妹,黄静 ;浙江理工大学信息电子学院 2009年12月6. 单片机

    27、原理及应用 李全利,仲伟峰,许军;清华大学出版社;2006年2月第一版附录一附录二OK EQU 20HRING EQU 22HORG 0000HAJMP MAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN:MOV R1,#30;初设抢答时间为30s MOV R2,#60;初设答题时间为60s MOV TMOD,#11H;设置定时器工作于方式1 MOV TH0,#0FH MOV TL0,#0B1H;越高发声频率越高,越尖 MOV TH1,#3CH MOV

    28、 TL1,#0B0H;50ms为一次溢出中断 SETB EA SETB ET0 SETB ET1 SETB EX0 SETB EX1;允许4个中断,T0/T1/INT0/INT1 CLR OK CLR RING SETB TR1 SETB TR0;一开始就运行定时器,以开始显示FFF,若要重新计数,重置TH1/TL1就行;=查询程序=START:MOV R5,#0BH MOV R4,#0BH MOV R3,#0BH ACALL DISPLAY;未开始抢答时候显示FFF JB P3.0,NEXT ACALL DELAY JB P3.0,NEXT;去抖动,如果“开始”按下就向下执行,否则跳到非法抢

    29、答查询 ACALL BARK;按键发声 MOV A,R1 MOV R6,A;送R1-R6,因为R1中保存了抢答时间 SETB OK;抢答标志位,勇于COUNT程序中半段是否查询抢答 MOV R7,#01H;读抢答键数据信号标志,这里表示只读一次有用信号 MOV R3,#0AH;抢答只显示计时,灭号数 AJMP COUNT;进入倒计时程序,“查询有效抢答的程序”在COUNT里面NEXT:JNB P1.0,FALSE1 JNB P1.1,FALSE2 JNB P1.2,FALSE3 JNB P1.3,FALSE4 JNB P1.4,FALSE5 JNB P1.5,FALSE6 JNB P1.6,F

    30、ALSE7 JNB P1.7,FALSE8 AJMP START;=非法抢答处理程序=FALSE1:MOV R3,#01H AJMP ERRORFALSE2:MOV R3,#02H AJMP ERRORFALSE3:MOV R3,#03H AJMP ERRORFALSE4:MOV R3,#04H AJMP ERRORFALSE5:MOV R3,#05H AJMP ERRORFALSE6:MOV R3,#06H AJMP ERRORFALSE7:MOV R3,#07H AJMP ERRORFALSE8:MOV R3,#08H AJMP ERROR;=INT0(抢答时间R1调整程序)=INT0SU

    31、B:MOV A,R1 MOV B,#0AH DIV AB MOV R5,A MOV R4,B MOV R3,#0AH ACALL DISPLAY;现在两个时间LED上显示R1 JNB P3.4,INC0;P3.4为+1S键,如按下跳到INC0 JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DEC0 JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACK0 AJMP INT0SUBINC0:MOV A,R1 CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起 MOV R1,#00H ACALL DELAY1 AJMP INT0SU

    32、BADD0:INC R1 ACALL DELAY1 AJMP INT0SUBDEC0:MOV A,R1 JZ SETR1;如果R1为0,R1就置99 DEC R1 ACALL DELAY1 AJMP INT0SUBSETR1:MOV R1,#63H ACALL DELAY1 AJMP INT0SUBBACK0:RETI;=INT1(回答时间R2调整程序)=INT1SUB:MOV A,R2 MOV B,#0AH DIV AB MOV R5,A MOV R4,B MOV R3,#0AH ACALL DISPLAY JNB P3.4,INC1 JNB P3.5,DEC1 JNB P3.1,BACK1

    33、 AJMP INT1SUB INC1:MOV A,R2 CJNE A,#63H,ADD1 MOV R2,#00H ACALL DELAY1 AJMP INT1SUBADD1:INC R2 ACALL DELAY1 AJMP INT1SUBDEC1:MOV A,R2 JZ SETR2 DEC R2 ACALL DELAY1 AJMP INT1SUBSETR2:MOV R2,#63H ACALL DELAY1 AJMP INT1SUBBACK1:RETI;=倒计时程序(抢答倒计时和回答倒计时都调到该程序)=REPEAT:MOV A,R2;使用锦囊时重新计时 MOV R6,A CLR RINGCOU

    34、NT:MOV R0,#00H;重置定时器中断次数 MOV TH1,#3CH MOV TL1,#0B0H;重置定时器RECOUNT:MOV A,R6;R6保存了倒计时间,之前应先将抢答或答题时间给R6 MOV B,#0AH DIV AB;除十分出个位/十位 MOV 30H,A;十位存于(30H) MOV 31H,B;个位存于(31H) MOV R5,30H;取十位 MOV R4,31H;取个位 MOV A,R6 SUBB A,#07H JNC LARGER;大于5s调到LARGER,小于等于5s会提醒 MOV A,R0 CJNE A,#0AH,FULL;1s中0.5s向下运行 CLR RING

    35、AJMP CHECKFULL:CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并请R0,重新计数 SETB RING MOV A,R6 JZ QUIT;计时完毕 MOV R0,#00H DEC R6;一秒标志减1 AJMP CHECKLARGER:MOV A,R0 CJNE A,#14H,CHECK;如果1s向下运行,否则跳到查“停/显示” DEC R6;计时一秒R6自动减1 MOV R0,#00HCHECK:JNB P3.1,QUIT;如按下停止键退出 JNB OK,CHECKK;只在回答倒计时才有效 AJMP NEXTTCHECKK:JNB P3.0,REPEAT;判断是

    36、否使用锦囊NEXTT:ACALL DISPLAY JB OK,ACOUNT;如果是抢答倒计时,如是则查询抢答,否则跳过查询继续倒数(这里起到锁抢答作用) AJMP RECOUNTACOUNT:MOV A,36H JNB ACC.0,TRUE1 JNB ACC.1,TRUE2 JNB ACC.2,TRUE3 JNB ACC.3,TRUE4 JNB ACC.4,TRUE5 JNB ACC.5,TRUE6 JNB ACC.6,TZ1 JNB ACC.7,TZ2 AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8QUIT:CLR OK;如果按下了“停止”执行的程序 CLR RING AJMP START;=正常抢答处理程序=TRUE1:ACALL BARK MOV A,R2 MOV

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:八路数字抢答器微机原理及接口技术课程设计.docx
    链接地址:https://www.163wenku.com/p-4738717.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库