智能车制作
标题:
行中断问题,急!
[打印本页]
作者:
mm110
时间:
2009-6-9 11:40
标题:
行中断问题,急!
#include <hidef.h> /* common defines and macros */
#include "derivative.h" /* derivative-specific definitions */
unsigned int TX[10][100];
unsigned int i=0,j=0,n=0;
/******************************倍频*****************************************/
void vPLLInit(void)
{
REFDV = 1; //BUS-CLOCK=PLL-CLOCK/2=24M
SYNR =2;
while (!CRGFLG_LOCK); // wait here till the PLL is locked.
CLKSEL|=0x80; // switch the bus clock to the PLL.
}
/***************************行场中断初始化************************************/
void vHVInterruptsInit(void)
{
TIOS=0x00; //外部输入捕捉0,1通道
TCTL4=0x09; //通道0上升沿触发,通道1下降沿触发
TSCR1=0x80;
TIE_C1I = 1;
TIE_C0I = 1;
}
/***************************IO口初始化************************************/
void vIOPortInit(void)
{
DDRM=0X00;
DDRB=0XFF;
}
void main(void)
{
DisableInterrupts;
vPLLInit();
vHVInterruptsInit();
vIOPortInit();
for(;i<10;i++)
for(;j<100;j++)
TX[i][j]=0;
i=0;
j=0;
EnableInterrupts;
for(;;)
{
}
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 8 Hinterrupt(void)
{
TFLG1=0x01; //清除行中断标志
n=n+1;
}
/**********场中断处理******************************************/
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 9 Vinterrupt(void)
{
TFLG1=0x02;
PORTB=0XFE;
i=i+1;
}
我把行中接PT0口 场中断接PT1口 中断号没有错吧?
为什么只进场中断(i 有累加)而没有进行中断(n 没有累加)?
作者:
shibf
时间:
2009-6-9 17:45
有可能进入溢出中断了,你没有屏蔽溢出中断
作者:
hwqdg
时间:
2009-6-10 18:45
把清中断标志位改成TFLG1_C0F=1和TFLG1_C1F=1试试
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2