智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1503|回复: 0
打印 上一主题 下一主题

[编程类] xs128自由计数器溢出中断问题

[复制链接]

5

主题

15

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
309
威望
200
贡献
71
兑换币
34
注册时间
2012-2-21
在线时间
19 小时
毕业学校
合肥工业大学
跳转到指定楼层
1#
发表于 2013-1-16 16:27:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
单片机的自由计数器中断向量号是16,
总线频率32MHz
允许自由计数器溢出中断TSCR2=0x87; //128分频  4us
//初始化函数
void Init_ECT(void)
{
  TSCR1_TFFCA=1;
  TSCR1_TEN=1;
  TIOS=0x80;
  TCTL4=0xAA;
  TCTL3=0x02;
  TIE=0xFF;
  TSCR2=0x87; //128分频  4us
  TFLG1=0xFF;
  TFLG2=0xFF;  
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
//自由计数器溢出中断函数
void interrupt 16 timeroverflow(void)
{  
   TFLG2_TOF=1;
   i++;
   if(i==0xffff)
  {
    i=0;
   PORTA_PA2=~PORTA_PA2;
   }
}
#pragma CODE_SEG DEFAULT   
在主程序中写了一个小灯闪烁的程序,为什么打开溢出中断TSCR2=0x87;主程序就进入不了了,只是在中断函数中执行PORTA_PA2对应引脚的小灯闪烁。
如果写成TSCR2=0x07; //128分频  4us,这样当然进入不了,中断函数,只是在主程序中执行。
如何解决打开自由计数器进入不了主程序的问题??
谢谢各位。



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

本版积分规则

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

GMT+8, 2024-11-6 18:25 , Processed in 1.251673 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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