Part Number: MSP-EXP432E401Y
Hi,
I am writing delay/sleep routine using SysTick driverlib APIs with interrupt in MSP-EXP432E401Y under TI-RTOS as follows.
1. enable UART (XDS110), open it, get date string to set current time
2. set current time with hibernation calendar function to check delay/sleep time is correct.
3. initialize SysTick Interrupt
But its interrupt service routine does not work properly. It seems stop (jump into infinite loop).
Here is the code I wrote:
uart0 = UART_open(CONFIG_UART_0, &uart0Params);
if (uart0 == NULL) {
// UART_open() failed
while (1);
}
memset(dateString, 0x00, sizeof dateString);
UART_write(uart0, echoPrompt, strlen(echoPrompt));
// set the calendar
memset(dateString, 0x00, sizeof dateString);
UART_read (uart0, dateString, 17); //YYYYMMDD hhmmss w
DateTimeFillTM(dateString); // Set current time using hibernation calendar
DateTimeSet();
mTicks = 0;
period = g_systemClock / 1000; // cycles for milliseconds
SysTickPeriodSet(period); // SysTick Interrupt Enable
SysTickEnable();
SysTickIntEnable();
IntMasterEnable();
i = 0;
while(1)
{
delay_ms(2000); // 2 sec sleep
GPIO_toggle(CONFIG_GPIO_LED_0);
i++;
}
}
void SysTick_Handler(void)
{
++mTicks;
}
void delay_ms(uint32_t n)
{
while(mTicks < n)
;
mTicks = 0;
}
SysTick Interrupt has any conflict with UART Driver ?
Please advise me how to solve this problem.
Any help/tips are appreciated in advance.
HaeSeung