TI中文支持网
TI专业的中文技术问题咨询交流网站

程序时钟怎么成4MHz了?并且只能执行中断程序。

利用范例学习MSP430中。

本来设置的RTC已能正常工作,删除了些程序后时钟快了很多。开中断后,程序只能进入中断,不能再顺序执行。

检查没有发现额外设置时钟的语句。只用了一次设置时钟语句。

。。。。。

         Init_GPIO();
        Init_Clock();
        Init_RTC();
        Init_LCD();
        ADC_Init();

        DisplayAll( );
        __enable_interrupt();
        
        Delay_mS( 300 ); 

‘。。。。。。。
 void Init_Clock()
{
    // Intializes the XT1 crystal oscillator
    CS_turnOnXT1( CS_XT1_DRIVE_1 );
}

/*
 * Real Time Clock counter Initialization
 */
void Init_RTC()
{
    // Set RTC modulo to 327-1 to trigger interrupt every ~10 ms
    RTC_setModulo( RTC_BASE, 326 );
    RTC_enableInterrupt( RTC_BASE, RTC_OVERFLOW_INTERRUPT );
    RTC_start( RTC_BASE, RTC_CLOCKSOURCE_XT1CLK );

    Time_Cnt = 0;
    RTC_Cnt = 0;

只能执行到      __enable_interrupt();

请大侠帮忙。

yong ren:

回复 Butterfly:

问题找到了,应该是没有清RTC中断。

历程上没有明确的清RTC中断调用。库函数里有,但是不知道参数怎么填写。

我这里只是胡乱加了一句  RTCIV = RTCIV;

单片机是FR4133

赞(0)
未经允许不得转载:TI中文支持网 » 程序时钟怎么成4MHz了?并且只能执行中断程序。
分享到: 更多 (0)