智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 8941|回复: 26
打印 上一主题 下一主题

定时器程序

  [复制链接]

0

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
221
威望
181
贡献
22
兑换币
0
注册时间
2009-9-8
在线时间
9 小时
跳转到指定楼层
1#
发表于 2009-9-17 15:33:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 chenrunshe_007 于 2009-11-16 17:27 编辑

大家好,我编了一个输出比较的定时器程序,发现程序进了几次中断之后,会自动停止运行,好奇怪啊,大家帮我看下哈

  1. #include <hidef.h>      /* common defines and macros */
  2. #include <mc9s12hy64.h>
  3. #pragma LINK_INFO DERIVATIVE "mc9s12hy64"
  4. void Configure_Ports(); //引脚配置
  5. void CPMU_PEE_4Hz();
  6. void timer0_init();
  7. unsigned int n=0;
  8. unsigned int m=0;
  9. void main(void)
  10. {
  11. DisableInterrupts;
  12. Configure_Ports();
  13.   timer0_init();
  14.    for(;;)
  15.       {
  16.         EnableInterrupts;
  17.       }
  18. }
  19. void Configure_Ports(void)
  20. {
  21.   PTU   = 0x00;     // port data  
  22. DDRU  = 0xFF;     //设为输出
  23. }
  24.      
  25. void timer0_init(void)//定时器初始化
  26. {
  27.    TIM0_TSCR2_PR   =0x07;  //prescale factor is 128,4M/128次每秒
  28.    TIM0_TIOS=0x20;// 5通道设为输出比较模式
  29.    TIM0_TC5=0x30D4;//定时50ms
  30.    TIM0_TSCR2_TOI=1;   //定时器中断溢出使能
  31.    TIM0_TIE=0x20;//定时器中断使能
  32.    TIM0_TSCR1_TEN=1;     //Timer enable
  33.    TIM0_TFLG1=0xFF;
  34.   TIM0_TSCR1_TFFCA=1;
  35.    
  36. }
  37. #pragma CODE_SEG __NEAR_SEG NON_BANKED//定时器中断
  38. interrupt 13 void timer1overflow(void)   //1s
  39. {
  40.   DisableInterrupts;
  41.   m=TIM0_TCNT;
  42.   TIM0_TC5=m+0x30D4;
  43.   n++;
  44.   PTU=~PTU;
  45.    }
复制代码

0

主题

19

帖子

0

精华

注册会员

Rank: 2

积分
71
威望
51
贡献
12
兑换币
25
注册时间
2012-12-29
在线时间
4 小时
毕业学校
wzdx
27#
发表于 2012-12-31 20:13:53 | 只看该作者
回复 支持 反对

使用道具 举报

1

主题

18

帖子

0

精华

高级会员

Rank: 4

积分
501
QQ
威望
333
贡献
96
兑换币
14
注册时间
2011-11-2
在线时间
36 小时
26#
发表于 2012-5-12 10:46:50 | 只看该作者
回复 支持 反对

使用道具 举报

1

主题

54

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
232
威望
198
贡献
34
兑换币
0
注册时间
2012-2-21
在线时间
0 小时
毕业学校
石家庄铁道大学
25#
发表于 2012-3-27 16:03:54 | 只看该作者
......................
回复 支持 反对

使用道具 举报

3

主题

25

帖子

0

精华

高级会员

Rank: 4

积分
529
QQ
威望
331
贡献
108
兑换币
0
注册时间
2012-3-1
在线时间
45 小时
24#
发表于 2012-3-16 12:21:54 | 只看该作者
聪明,佩服!
回复 支持 反对

使用道具 举报

3

主题

29

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
339
QQ
威望
257
贡献
52
兑换币
0
注册时间
2011-1-22
在线时间
15 小时
23#
发表于 2011-2-15 15:52:49 | 只看该作者
。。。
回复 支持 反对

使用道具 举报

4

主题

33

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
400
威望
265
贡献
45
兑换币
2
注册时间
2011-1-18
在线时间
45 小时
22#
发表于 2011-2-15 12:21:31 | 只看该作者
TIM0_TSCR2_PR   =0x07;  //prescale factor is 128,4M/128次每秒
   TIM0_TIOS=0x20;// 5通道设为输出比较模式
   TIM0_TC5=0x30D4;//定时50ms

怎么算的,我觉得应该4M得16分频(   TIM0_TSCR2_PR   =0x04 ) 才对吧??
回复 支持 反对

使用道具 举报

4

主题

33

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
400
威望
265
贡献
45
兑换币
2
注册时间
2011-1-18
在线时间
45 小时
21#
发表于 2011-2-15 12:20:54 | 只看该作者
TIM0_TSCR2_PR   =0x07;  //prescale factor is 128,4M/128次每秒
   TIM0_TIOS=0x20;// 5通道设为输出比较模式
   TIM0_TC5=0x30D4;//定时50ms

怎么算的,我觉得应该4M得16分频(   TIM0_TSCR2_PR   =0x04 ) 才对吧??
回复 支持 反对

使用道具 举报

2

主题

173

帖子

0

精华

高级会员

Rank: 4

积分
544
QQ
威望
390
贡献
112
兑换币
0
注册时间
2010-10-17
在线时间
21 小时
20#
发表于 2011-1-21 20:50:51 | 只看该作者
回复 支持 反对

使用道具 举报

1

主题

130

帖子

0

精华

高级会员

Rank: 4

积分
562
威望
392
贡献
106
兑换币
12
注册时间
2010-10-30
在线时间
32 小时
19#
发表于 2010-11-9 16:14:43 | 只看该作者
ding
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-31 07:41 , Processed in 0.049336 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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