打印

一个51中断问题!!!

[复制链接]
1740|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
adofe|  楼主 | 2010-1-20 17:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序如下:
           ORG    2000H
           MOV    TMOD,#15H;T1为模式1定时 T0为模式是计数
           MOV    TH1,#0D8H;T1定时10ms
           MOV    TL1,#0F0H
           MOV    TH0,#0F4H;T0计数30秒
           MOV    TL0,#48H
           MOV     IE,#8AH
           SETB   TR0
           SETB   TR1
  L1:    SJMP     L1 ;等待10ms到T1的中断服务程序

  T1:   ORG    001BH
             AJMP...
             RETI
  T0: ORG    000BH
            AJMP ...
            RETI

L1:    SJMP     L1 这条指今为何用无条件转移指今,它是通过什么来知道T1计数到了10ms的,从而转入T1的中断服务程序的???
又是通过什么来判定T0计数到了30s?

相关帖子

沙发
NE5532| | 2010-1-20 22:39 | 只看该作者
这句话相当于while(1);
不然程序做完了初始化到哪里去呢?楼主的疑问来源于没有搞清楚什么叫中断,中断服务函数是怎么被调用的,看书,回答上面两个问题,你就清楚了。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
ljk5214227 + 1 欣赏各种回答!
板凳
jianguoid| | 2010-1-22 11:44 | 只看该作者
L1:    SJMP     L1 ;就是没事就在这边等,10mS是在送初值时就定了。有中断时就跳到中断,是硬件控制的,自动到中断入口地址开始执行,执行完了还回到原地方等。

使用特权

评论回复
地板
luning298| | 2010-2-14 17:54 | 只看该作者
L1:    SJMP     L1 ;一个死循环。如果发生中断后,就会打断这个死循环,转向去处理中断的子程序,当子程序完成后,就会恢复之前的工作环境。

使用特权

评论回复
5
ljk5214227| | 2010-2-17 03:15 | 只看该作者
这句话相当于while(1);
不然程序做完了初始化到哪里去呢?楼主的疑问来源于没有搞清楚什么叫中断,中断服务函数是怎么被调用的,看书,回答上面两个问题,你就清楚了。 ...
NE5532 发表于 2010-1-20 22:39


NE5532回答的方式太好了!!!我就喜欢这种不直接给答案,而告诉我们应该注意哪一块的前辈!!!严重赞一个!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

511

帖子

3

粉丝