MSP430F169 定时器中断问题

FSUNT 2014-12-22 10:02:11
新手求指教,小女子刚接触430,很多东西不懂,现在遇到难题了,望各位大神指点一下,不胜感激!
这段程序的中断能进去,但是貌似是跳不出来,执行到 while(1) 里面的 if(flagTrans==1)
就不执行了,程序哪部分写的不对啊

unsigned char flagTrans=0;
unsigned char Second=0;
void main(void)
{

WDTCTL=WDTPW+WDTHOLD;
{
P3OUT |= 0x20;
P3DIR |= BIT4 + BIT5;
P1OUT &= ~ 0x80;
P1OUT |= 0x20;
P1OUT |= 0x40;
P1DIR |= BIT5 + BIT6+ BIT7;
Init_duan();
setup();
Init_AD();
Init_TimerA();
main_12864();
}

hanzi_danwei(); //初始化屏幕
hanzi_xianshi(); //屏幕显示函数
_EINT();

while(1) //完成显示和传输一个循环共用时间为5s左右
{
if(flagTrans==1)
{
flagTrans=0;
display_data();
transfer_data();
temp();
}
}

}
#pragma vector = TIMERA0_VECTOR
__interrupt void Timer_A(void)
{
Second++;
if(Second>=10)
{
Second=0;
flagTrans=1;
}
}
}
我的 Init_TimerA();
void Init_TimerA(void)
{
TACTL=TASSEL_1+ID_3+TACLR; //辅助时钟为计数源,8分频,增计数
CCTL0=CCIE;
CCR0=4096; //1s
TACTL |= MC0;
}
...全文
204 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
FightForProgrammer 2014-12-22
  • 打赏
  • 举报
回复
你在if语句里面设断点,看看究竟是那句话出的错

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧