Извиняюсь за бестактный вопрос.
У Вас есть работающий пример с LPM ?
msp430x54xA_LPM3_1.c Enters LPM3 (ACLK = LFXT1)
msp430x54xA_LPM3_2.c Enters LPM3 (ACLK = VLO)
msp430x54xA_LPM4.c Enters LPM4; LFXT1, REF0 disabled, SVS disabled
slac166m.zip - это для семейства F543xA.
PS - Вы не указали тип процессора.
Вот пример "украденный" из исходников FreeRTOS, serial.c
Код
/*
* UART Tx interrupt service routine.
*/
#pragma vector=UART1TX_VECTOR
__interrupt void vTxISR( void )
{
signed char cChar;
portBASE_TYPE xTaskWoken = pdFALSE;
/* The previous character has been transmitted. See if there are any
further characters waiting transmission. */
if( xQueueReceiveFromISR( xCharsForTx, &cChar, &xTaskWoken ) == pdTRUE )
{
/* There was another character queued - transmit it now. */
U1TXBUF = cChar;
}
else
{
/* There were no other characters to transmit. */
sTHREEmpty = pdTRUE;
}
/* Make sure any low power mode bits are clear before leaving the ISR. */
__bic_SR_register_on_exit( SCG1 + SCG0 + OSCOFF + CPUOFF );
}
/*-----------------------------------------------------------*/
Сообщение отредактировал k155la3 - Feb 11 2016, 06:18