Part Number:MSP430F5438
timerA,使用连续模式,意图是单独控制几个定时器,比如:
CCR0每秒执行一次,一直执行;
CCR1及CCR2独立控制,在启动后0.1秒关闭,用于状态灯的显示。代码:
TA0CCTL0 = CCIE;
TA0CCR0 = 4096; // 连续模式,8分频,4096为1秒
TA0CTL |=TACLR+TAIE;
TA0CTL |= TASSEL_1 + MC_2 + ID_3; // ACLK代码
使用两个中断:
#pragma vector = TIMER0_A0_VECTOR
__interrupt void TIMER0_A0_ISR(void)
{
LPM3_EXIT;
TA0CCR0 += 4096;
}
/*******************Timer_A3 中断服务程序***/
#pragma vector = TIMER0_A1_VECTOR
__interrupt void Timer_A(void)
{
switch (__even_in_range(TA0IV…代码
配置完成后的执行代码,写了一个方法:
void t1(){
LED_BLUE_ON;
TA0CCR2 = TA0R + 410;
TA0CCTL2 |= CCIE;
}代码
我现在的问题是,如果这个t1的方法,是在中断里进行的设置(TA0R+410),就是正常的,如果是在其它段中的调用,就不正常。
但是我这个功能是想在执行某些操作时,运行一次后立即停止,这个值也不能在中断里设置。
我想知道原因是什么,我应该怎么操作,在哪里配置这个值。
Links:
感谢您对TI产品的关注!为更加有效地解决您的问题,我们建议您将问题发布在E2E英文技术论坛上( https://e2e.ti.com/p/addpost ).将由资深的英文论坛工程师为您提供帮助。
TRANSLATE with x
English
Arabic
Hebrew
PolishBulgarian
Hindi
PortugueseCatalan
Hmong Daw
RomanianChinese Simplified
Hungarian
RussianChinese Traditional
Indonesian
SlovakCzech
Italian
SlovenianDanish
Japanese
SpanishDutch
Klingon
SwedishEnglish
Korean
ThaiEstonian
Latvian
TurkishFinnish
Lithuanian
UkrainianFrench
Malay
UrduGerman
Maltese
VietnameseGreek
Norwegian
WelshHaitian Creole
PersianTRANSLATE with
COPY THE URL BELOW
BackEMBED THE SNIPPET BELOW IN YOUR SITE
Enable collaborative features and customize widget: Bing Webmaster Portal
Back