找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机计数器中断问题 没法触发中断?

[复制链接]
跳转到指定楼层
楼主
ID:145447 发表于 2017-11-13 20:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yy2qy 于 2017-11-13 21:15 编辑

我下面的程序是通过单片机P3.5计数外部脉冲,为啥没法触发中断??
  1.                     Org    0000H
  2.                     AJmp   Main
  3.                     Org    001BH                  ;T1中断入口
  4.                     Ljmp   Timer1

  5. InitTimer:          Mov    TMOD,#01100110B        ;T1、T0 timer  Mode10
  6.                     Setb   EA                     ;开总中断
  7.                     Setb   ET0                    ;开T0中断
  8.                     Setb   ET1                    ;开T1中断
  9.                     Mov    TH1,#0FFH              ;计数18个脉冲初值
  10.                     Mov    TL1,#0EEH
  11.                     Mov    TH0,#0FFH
  12.                     Mov    TL0,#0EEH
  13.                     Ret

  14. Timer1:             Clr    TR1                    ;关中断T1
  15.                     Clr    IN1                    ;电机停止
  16.                     Clr    IN2
  17.                     Clr    IN3
  18.                     Clr    IN4                                       
  19.                     RetI

  20. Main:               Mov    Sp,#SysStack-1                                       
  21.                     ACall  InitTimer
  22.                     Setb   TR1
  23. MainLoop:           ACall  RTurn                  
  24.                     AJmp   MainLoop
复制代码





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

使用道具 举报

沙发
ID:145447 发表于 2017-11-13 21:02 | 只看该作者
代码怎么只剩这几行了!!??
回复

使用道具 举报

板凳
ID:145447 发表于 2017-11-13 21:03 | 只看该作者
代码怎么只剩这几行了???!!!
回复

使用道具 举报

地板
ID:145447 发表于 2017-11-13 21:07 | 只看该作者
                    Org    0000H
                    AJmp   Main
                    Org    001BH                                     ;T1中断入口
                    Ljmp   Timer1

InitTimer:       Mov       TMOD,#01100110B                ;T1、T0 timer  Mode10
                    Setb   EA                     ;开总中断
                    Setb   ET0                    ;开T0中断
                    Setb   ET1                    ;开T1中断
                    Mov    TH1,#0FFH              ;计数18个脉冲初值
                    Mov    TL1,#0EEH
                    Mov    TH0,#0FFH
                    Mov    TL0,#0EEH
                    Ret

Timer1:         Clr    TR1                    ;关中断T1
                    Clr    IN1                    ;电机停止
                    Clr    IN2
                    Clr    IN3
                    Clr    IN4                                       
                    RetI

Main:             Mov    Sp,#SysStack-1                                      
                    ACall  InitTimer
                    Setb   TR1
MainLoop:      ACall  RTurn                  
                    AJmp   MainLoop
                    End
回复

使用道具 举报

5#
ID:145447 发表于 2017-11-13 22:05 | 只看该作者
为什么没办法触发中断,还有如果该成模式1,16位计数模式,当低8位计满后,高8位不会加1,这又是为啥
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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