Большое спасибо за поддержку, заработало, код в студию:
#pragma vector = USART0TX_VECTOR
__interrupt void DMX_tx (void)
{ switch ( tx.count)
{
case 0:
while (!(U0TCTL&TXEPT));
U0BR0 = (u08)N_UBR;
U0TXBUF = tx.buffer[tx.count];
++tx.count;
break;
case UART_TX_BUFFER_SIZE:
while (!(U0TCTL&TXEPT));
U0BR0 = (u08)N_UBR_Break;
U0TXBUF = 0;
tx.count = 0;
break;
default:
U0TXBUF = tx.buffer[tx.count];
++tx.count;
break;
}
}
Причина - неучел бит TXEPT.Только вот теперь незнаю какой код оставлять. Выбор, сидеть в прерывании 100uS или по таймеру формировать сигнал BREAK, а байты данных передавать UARTом..
Разберусь. Спасибо Вам!!!