找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3145|回复: 0
打印 上一主题 下一主题
收起左侧

[求助]在这个程序中R0是怎么变化的?

[复制链接]
跳转到指定楼层
楼主
ID:38551 发表于 2012-4-16 08:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

注解说是R0中断次数,但我看起来好像R0都是没变化的,学单片机时间不长,不太懂,请教R0在这个过程是怎么计数的?谢谢!

===倒计时程序===

COUNT:  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 

       AJMP CHECK

FULL:  CJNE A,#14H,CHECK   下面是1s的情况,响并显示号数并清R0,重新计

       SETB RING

       MOV A,R6

       JZ QUIT                                             ;计时完毕

       MOV R0,#00H

       DEC R6                                           ;一秒标志减1

       AJMP CHECK

LARGER: MOV A,R0

        CJNE A,#14H,CHECK        如果1s向下运行,否者跳到查"停/显示"

       DEC R6                                    ;计时一秒R6自动减1

       MOV R0,#00H

CHECK: JNB P3.1,QUIT                              ;如按下停止键退出

       ACALL DISPLAY

       JB OK,ACCOUT        如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)

       AJMP RECOUNT

ACCOUT:JNB P1.0,TRUE1

       JNB P1.1,TRUE2

       JNB P1.2,TRUE3

       JNB P1.3,TRUE4

       JNB P1.4,TRUE5

       JNB P1.5,TRUE6

       JNB P1.6,TZ3

       JNB P1.7,TZ4

       AJMP RECOUNT

TZ3:   JMP TRUE7

TZ4:   JMP TRUE8   

 QUIT:  CLR OK                         ; 如果按下了"停止键"执行的程序

       CLR RING

       AJMP START
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表