单片机抢答器课程设计_(编辑修改稿)内容摘要:

EA ; 定时器和中断初始化 SETB ET0 ;允许定时器 0中断 SETB ET1 ;允许定时器 1中断 MOV TMOD, 11H ;定时器 0/定时器 1选择工作方式 1 MOV TH0, 3CH ;定时器 0设置计数初值 MOV TL0, 0B0H MOV TH1, 3CH ;定时器 1设置计数初值 MOV TL1, 0B0H MOV DPTR, DISBH ; 系统初始化后提示符 P.字符代码表首地址 MOV R5, 08H MOV R0, 78H DISPTSF:CLR A ; 上电显示 P MOVC A, @A+DPTR ;查表 MOV @R0, A INC R0 ; R0 自动加 1 INC DPTR ; DPTR自动加 1 DJNZ R5, DISPTSF ;减 1条件转移 D: LCALL DISP ;调用显示子程序 LCALL KEY ; 调键扫 描程序。 判断键值 JB , KEY7 ;指定位状态为 1转移 JB , KEY1 ; 20H单元地址的第 0位 JB , KEY2 ; 20H单元地址的第 1位 JB , KEY3 ; 20H单元地址的第 2位 JB , KEY4 ; 20H单元地址的第 3位 JB , KEY5 ; 20H单元地址的第 4位 JB , KEY6 ; 20H单元地址的第 6位 LJMP D ;跳转回 D 23 键功能程序区**************************************************************************。 开始键 KEY7: MOV A, 30 ; 按下开始键 ,时间 30秒 MOV R2, A ;将 A送入 R2 LOOP: LCALL JS ; 计算当前秒 ,并送给显示缓冲区 MOV X1, 0FFH LCALL DISP ;调用显示子程序 LCALL Z1 ; 显示当前秒 DEC R2 ; R2 自减 1 MOV A, R2 ;将 R2 的值送入寄存器 A JZ TZ ; 判断 30秒是否到 CJNE R2, 20, PDCY ; 判断是否过了 10秒 SJMP FM ;跳转 FM PDCY: CJNE R2,10,LOOP ; R2 为 10跳转 FM: MOV R7,125 FM1: CLR ; 过了 10秒 ,开蜂鸣器 DJNZ R7,FM1 ;判断 R7 是否为 1跳转 SETB ; 1 LJMP LOOP ;返回循环 TZ: LCALL JS ; 停止在 00处 TZ1: LCALL DISP ;调用显示子程序 CLR ; LCALL KEY JNB ,TZ1 ; LJMP FUWEI ;跳转复位程序 违 规 区 ************************************************************************** 1号选手违规 ; 1号违规 ,显示 1号台和违规灯 KEY1: CLR ; CLR ; MOV 7FH, 01H ; 01H赋值给 7FH LCALL DISP ;调用显示子程序 24 LCALL KEY JNB ,KEY1 LJMP FUWEI ;跳转复位程序 2号选手违规 ; 2号违规 ,显示 2号台和违规灯 KEY2: CLR ; CLR ; MOV 7FH, 10H MOV 7EH, 02H LCALL DISP ;调用显示子程序 LCALL KEY JNB ,KEY2 LJMP FUWEI ;跳转复位程序 3号选手违规 ; 3号违规 ,显示 3号台和违规灯 KEY3: CLR ; CLR ; MOV 7FH, 10H MOV 7DH, 03H LCALL DISP ;调用显示子程序 LCALL KEY JNB ,KEY3 LJMP FUWEI ;跳转复位程序 4号选手违规 ; 4号违规 ,显示 4号台和违规灯 KEY4: CLR ; CLR ; MOV 7FH, 10H MOV 7CH, 04H LCALL DISP ;调用显示子程序 LCALL KEY JNB ,KEY4 LJMP FUWEI ;跳转复位程序 5号选手 违规 ; 5号违规 ,显示 5号台和违规灯 KEY5: CLR ; CLR ; MOV 7FH, 10H 25 MOV 7BH, 05H LCALL DISP ;调用显示子程序 LCALL KEY JNB ,KEY5 LJMP FUWEI ;跳转复位程序 6号选手违规 ; 6号违规 ,显示 6号台和违规灯 KEY6: CLR ; CLR ; MOV 7FH, 10H MOV 7AH, 06H LCALL DISP ;调用显示子程序 LCALL KEY JNB ,KEY6 LJMP FUWEI ;跳转复位程序 抢 答 区 **************************************************************************1号抢答 ; 1号抢答 ,倒计时 30秒 KEY11: MOV R1, 01H MOV A, 30 ;预置时间 30秒 MOV R2, A LOOP10:LCALL JS ;调用 JS MOV X1, 01H ;送入 7FH CLR ; LCALL DISP ;调用显示子程序 LCALL Z2 ;调用 Z2 程序 DJNZ R2, LOOP10 ;满 1跳转循环 LCALL JS ;继续调用 JS LOOP11:LCALL DISP ;调用显示子程序 CLR。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。