智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3949|回复: 6
打印 上一主题 下一主题

很简单的定时器中断问题,就是搞不出来,不知道哪里错了

[复制链接]

19

主题

160

帖子

0

精华

高级会员

Rank: 4

积分
919
QQ
威望
487
贡献
284
兑换币
0
注册时间
2009-11-4
在线时间
74 小时
跳转到指定楼层
1#
发表于 2009-11-5 22:24:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 chenrunshe_007 于 2010-1-13 17:50 编辑

在最终程序调试窗口中可以发现:中断时可以进去的,m的数值也是可以加上去的,但是就是感觉中断中的if语句不做。而且B寄存器当中的数值一直是在FF和55这两个数值之间变化。。。不知道是什么原因。还望过路人热心解答。
  1. #include <hidef.h>      /* common defines and macros */
  2. #include "derivative.h"      /* derivative-specific definitions */

  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. uchar Pulsecnt;
  6. uchar  m=0;   

  7. #pragma CODE_SEG NON_BANKED

  8. interrupt 16 void Time_Over(void)
  9. {
  10.   m++;                               //进入一次中断,m加一
  11.   if(m==5)                          //进入5次,则
  12.   {
  13.     DDRB=0XFF;
  14.     Pulsecnt=~Pulsecnt;   //进入后,B口取反
  15.     PORTB=Pulsecnt;
  16.     m=0;
  17.   }
  18.   TFLG2_TOF=1;         //每次都将标志位清零
  19. }
  20.   
  21. #pragma CODE_SEG DEFAULT

  22. void main(void)
  23. {
  24.   /* put your own code here */  
  25.    EnableInterrupts;
  26.    TIOS=0x00;                       //设置输入的通道工作为输入捕捉
  27.    TSCR2=0x87;                     //设置定时器溢出中断,并且分频系数为128
  28.    TIE=0x01;                          //允许中断
  29.    TFLG2_TOF=1;                   //定时器溢出中断标志位清零
  30.    TCNT=65535-30000;         //设置初始值
  31.    TSCR1_TEN=1;                  //开定时器
  32.    Pulsecnt=0xF0;                 //设置变量为0xf0,最终输出给B口
  33.    DDRB=0XFF;                   //设置B口为输出方式
  34.    PORTB=Pulsecnt;        //设置初始值B

  35.   for(;;)
  36. {
  37.      _FEED_COP(); /* feeds the dog */
  38. } /* loop forever */
  39.    /* please make sure that you never leave main */
  40. }
复制代码

14

主题

586

帖子

0

精华

禁止发言

事人

积分
3226
威望
988
贡献
1966
兑换币
62
注册时间
2008-9-5
在线时间
136 小时
2#
发表于 2009-11-6 10:15:47 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

19

主题

160

帖子

0

精华

高级会员

Rank: 4

积分
919
QQ
威望
487
贡献
284
兑换币
0
注册时间
2009-11-4
在线时间
74 小时
3#
 楼主| 发表于 2009-11-7 12:26:03 | 只看该作者
现在已经成功了,谢谢提醒啊!!错在一个很变态的处理上面
回复 支持 反对

使用道具 举报

21

主题

1019

帖子

0

精华

常驻嘉宾

我爱雯婕

Rank: 8Rank: 8

积分
4657
威望
2223
贡献
1682
兑换币
4
注册时间
2009-3-4
在线时间
376 小时
4#
发表于 2009-11-16 17:20:28 | 只看该作者
现在已经成功了,谢谢提醒啊!!错在一个很变态的处理上面
justing88 发表于 2009-11-7 12:26

形容得有点说的有点wretched
回复 支持 反对

使用道具 举报

21

主题

1019

帖子

0

精华

常驻嘉宾

我爱雯婕

Rank: 8Rank: 8

积分
4657
威望
2223
贡献
1682
兑换币
4
注册时间
2009-3-4
在线时间
376 小时
5#
发表于 2009-11-16 17:21:41 | 只看该作者
编辑过看起来就是爽
回复 支持 反对

使用道具 举报

19

主题

160

帖子

0

精华

高级会员

Rank: 4

积分
919
QQ
威望
487
贡献
284
兑换币
0
注册时间
2009-11-4
在线时间
74 小时
6#
 楼主| 发表于 2010-1-13 15:05:13 | 只看该作者
回复 5# chenrunshe_007


    谢谢啊!今后都编辑了!!最近有重新开始了…………哈哈
回复 支持 反对

使用道具 举报

0

主题

125

帖子

0

精华

高级会员

Rank: 4

积分
578
威望
376
贡献
76
兑换币
0
注册时间
2009-8-23
在线时间
63 小时
7#
发表于 2010-3-16 23:46:37 | 只看该作者
谢谢分享经验!
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-7 23:59 , Processed in 0.061928 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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