智能车制作

标题: 关于输入捕捉IC中断问题 [打印本页]

作者: xushaoqing    时间: 2012-4-8 21:19
标题: 关于输入捕捉IC中断问题
为什么我不清中断标志位,程序缺依旧不断进入中断,而不是一直处于中断中,本人学习MC9S12XS128两天了,崭新的新手,忘指点,下面程序(利用PP3产生占空比10%的波形,利用PT0采集方波数目,并在PA显示)
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
#include<MC9S12XS128.h>
unsigned char num=0;
void delay(int z)
{
  int x,y;
  for(x=z;x>0;x--)
    for(y=1000;y>0;y--);
}
void PLL_Init(void)
{
  CLKSEL=0X00; // 初始化PLL前先使用外部晶振
  PLLCTL_PLLON=1; // 开启 PLL
  SYNR =0x40 | 0x04; // pllclock=2*osc*(1+SYNR)/(1+REFDV)=80MHz;
  REFDV=0x80 | 0x01;
  POSTDIV=0x00;
  _asm(nop); // BUS CLOCK=40M
  _asm(nop);
  while(!(CRGFLG_LOCK==1)); //等待PLL稳定
}
void PWM_Init(void)
{
    PWME_PWME3=0;
    PWMPRCLK=0X33;
    PWMSCLA=100;
    PWMSCLB=10;
    PWMCLK_PCLK3=1;
    PWMPOL_PPOL3=1;
    PWMCAE_CAE3=0;
    PWMCTL=0x00;
    PWMPER3=100;
    PWMDTY3=90;
    PWME_PWME3=1;
    DDRA|=0x40;
    PORTA&=0xbf;
}
void IC_init()
{
  TIOS_IOS0=0;
  TCTL4=0x02;
  TSCR2=0x07;
  TSCR1=0x80;
  TIE_C0I=1;
}
void PA_init()
{
  DDRA=0XFF;
  PORTA=0;
}


void main(void) {
  /* put your own code here */
  IC_init();
  PWM_Init();
  PLL_Init();
  PA_init();

EnableInterrupts;

  for(;;) {
    _FEED_COP(); /* feeds the dog */
  } /* loop forever */
  /* please make sure that you never leave main */
}
#pragma CODE_SEG NON_BANKED
void interrupt 8 time0()
{
   //TFLG1_C0F=1;                                 //  就是这句话,我加与不加都一样
   num++;
   if(num>=255)
   {  
      num=0;
   }
    PORTA=~PORTA;
    delay(200);
}

作者: xushaoqing    时间: 2012-4-8 21:20
延时函数主要是想看到PA口的LED变化
作者: 徐晋鸿!    时间: 2012-4-9 18:12
同问!!。。
作者: 从不耘败    时间: 2012-5-12 19:16
你的程序是总进入中断,我的程序是进不了中断!
作者: 从不耘败    时间: 2012-5-12 19:21
我是进不了中断啊
作者: 破浪激流    时间: 2012-7-28 17:22
同问 不要那句的话 函数以很短的时间不停的进入中断,不明白为什么?
作者: /ka一寸蔚蓝    时间: 2012-10-4 21:19
中断函数前面加#pragma CODE_SEG __NEAR_SEG NON_BANKED  函数后面加#pragma CODE_SEG __NEAR_SEG NON_BANKED  试下
作者: /ka一寸蔚蓝    时间: 2012-10-4 21:20
抱歉,中断函数后面加的是#pragma CODE_SEG DEFAULT 打错了
作者: 暴走蜗牛    时间: 2015-3-22 10:07
应该加个拉电阻吧




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2