智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2259|回复: 3
打印 上一主题 下一主题

[软件类] 帮忙看看~~~谢谢 定时器中断

[复制链接]

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
跳转到指定楼层
1#
发表于 2010-4-7 10:43:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
2贡献
我编了一个PA定时器中断的程序,为了测速信号的收集,但是编完之后,用BDM下到单片机里面的时候 用手摸一下27引脚,即PT7,18号中断进入,但是用函数发生器给27引脚信号却反而不能进入中断了。这是怎么回事?应该不是单片机的问题,我试了两块单片机了!求高人解答,很头疼!下面是我的程序~
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"

//*****************************setup clock***************************************************//
void PLL_Init(void)
{
  REFDV=1;
  SYNR=2;
  while (!(CRGFLG&0x08));
  CLKSEL=0X80;
}  //make clock=24MHZ
void delay (int x)
{ int a,b;
  for (a=x;a>0;a--)
    for (b=1000;b>0;b--)  ;
}
//****************************定时器使能**************************************************//
void Time_init(void)
  {
    TIOS=0x00;
    TSCR1=0x80;
    TCTL4=0X01;//上升沿捕捉
    PACTL=0X55;//使用PACLK作为计数时钟,且不允许溢出中断
   
  }
  


//******************************MAIN*******************************************************//
void main(void)                             
{
  DisableInterrupts;                                                               
  DDRE=0xFF;
  PORTE_PE5=1;
  PORTE_PE6=1;
  PLL_Init();
  Time_init();
  EnableInterrupts;
  for (;;)
  {
   
  }
}
//**************************定时器中断入口*************************************************
#pragma CODE_SEG  NON_BANKED

   interrupt 18 void Time_Catch(void)
  {
  DisableInterrupts;
  if (PACNT%10==0)
  {
  PORTE_PE5=0;
  PACNT=0;
  delay (500);
  }
  PAFLG|=0x02;    //clear PAOVF  
  PORTE_PE5=1;
  
  EnableInterrupts;
  
   }   

   
   #pragma CODE_SEG DEFAULT

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
2#
 楼主| 发表于 2010-4-7 18:07:46 | 只看该作者
怎么没人啊·~~~
回复

使用道具 举报

4

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1335
威望
779
贡献
372
兑换币
346
注册时间
2009-11-28
在线时间
92 小时
3#
发表于 2010-4-7 22:10:40 | 只看该作者
函数发生器是什么波形输出?
回复

使用道具 举报

4

主题

248

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2267
QQ
威望
447
贡献
1700
兑换币
2
注册时间
2009-3-15
在线时间
60 小时
4#
发表于 2010-4-8 00:05:47 | 只看该作者
本帖最后由 786892880 于 2010-4-8 00:07 编辑

lz的意思是不是用手摸单片机pt7引脚就可以进入中断,但是用函数发生器就进入不了,是吧?你用示波器看下函数发生器的波形是不是偏离了,如果是那就危险了。测速建议你参照wj的做法:http://www.znczz.com/thread-859-1-2.html
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 13:19 , Processed in 0.145316 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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