网站大量收购独家精品文档,联系QQ:2885784924

单片机课程设计——抢答器源程序.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机课程设计——抢答器源程序

READY EQU 64H;抢答开始标志位 RING EQU 56H;铃声标志位 ORG 0000H LJMP MAIN ORG 0003H ;外部中断0入口 LJMP INT0SUB ORG 000BH ;定时器0入口 LJMP T0INT ORG 0013H ;外部中断1入口 LJMP INT1SUB ORG 001BH ;定时器1入口 LJMP T1INT ORG 0040H MAIN: MOV R1,#10;设置初始抢答时间10S MOV R2,#60;设置初始答题时间60S MOV TMOD,#11H;设置定时器0、1的工作模式 MOV TH0, #0F0H MOV TL0,#0FFH;设置蜂鸣器发声频率 MOV TH1, #3CH MOV TL1,#0B0H;设置100ms为一次溢出中断 SETB EA SETB ET0 SETB ET1 SETB EX0 SETB EX1;允许四个中断T0、T1、INT0、INT1 CLR READY CLR RING SETB TR1 SETB TR0;开始就运行定时器,一开始显示000 ;查询程序 START: MOV R5, #0BH MOV R4, #0BH MOV R3, #0BH ACALL DISPLAY;未开始抢答时显示000 JB P3.0,NEXT; 主持人未按下开始键,程序跳转到非法抢答中,否则顺序执行延时去抖动 ACALL DELAY JB P3.0,NEXT;确实按下开始键就向下执行,否则跳到非法抢答查询 ACALL BAOJING;按键发声 MOV A, R1 MOV R6,A;抢答时间R1送R6, SETB READY;抢答标志位,用于COUNT子程序中判断是否查询抢答 MOV R7,#01H;读抢答键数据信号标志,这里表示只读一次有用信号 MOV R3,#0AH;抢答只显示计时,灭号数 AJMP COUNT;进入倒计时程序 NEXT: JNB P1.0,FALSE1 ;P1.0 为0时转到非法抢答程序,否则顺序执行 JNB P1.1, FALSE2 JNB P1.2, FALSE3 JNB P1.3, FALSE4 JNB P1.4, FALSE5 JNB P1.5, FALSE6 JNB P1.6, FALSE7 JNB P1.7, FALSE8 AJMP START ;非法抢答处理程序 FALSE1:MOV R3,#01H;1号非法抢答 AJMP ERROR FALSE2: MOV R3, #02H AJMP ERROR FALSE3: MOV R3, #03H AJMP ERROR FALSE4: MOV R3, #04H AJMP ERROR FALSE5: MOV R3, #05H AJMP ERROR FALSE6: MOV R3, #06H AJMP ERROR FALSE7: MOV R3, #07H AJMP ERROR FALSE8: MOV R3, #08H AJMP ERROR ;调整抢答时间R1的程序 INT0SUB: MOV A, R1 MOV B, #0AH DIV AB MOV R5, A MOV R4, B MOV R3, #0AH ACALL DISPLAY ;在两个LED上显示抢答时间倒计时R1 JNB P3.4,QIANGADD ;P3.4为加1s键,如果按下跳到QIANGADD,否则顺序执行 JNB P3.5,QIANGSUB ;P3.5为减1s键,如果

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档