Página 1 de 1

USART0

MensagemEnviado: 01 Ago 2007 14:11
por luizrico
Pessoal,

Problemas encontrados anteriomente resolvidos, agora estou com um novo, fiz a programação da Usart0, estou carregando um byte na TXBUF porém não consigo ver a saída deste byte no port com o osciloscópio, os registros da IFG mudam como se o dado fosse transmitido, porém nada muda na saída da serial, estou enviando 0x05h para TXBUF, algum idéia do que posso verificar para encontrar o problema ?? já vi se o oscilador estava configurado, os registros de configuração da USART e se os dados estão mesmo sendo transferidos para o TXBUF.

obrigado
Luiz

MensagemEnviado: 02 Ago 2007 11:40
por plinium
Vc habilitou a recepção ou transmissão da usart no registrador ME1 ou ME2? Tive problemas com isso no inicio.

MensagemEnviado: 02 Ago 2007 12:56
por luizrico
plinium,

antes de iniciar a transmissão eu desligo a recepção, em seguida habilito a transmissão, coloco o bit UTXIFG0 em zero e envio o dado para o U0TXBUF, o engraçado é o que depois de enviar o dado para o U0TXBUF o bit UTXIFG0 vai para 1, como se o dado fosse transmitido, porém no port, medindo com o osciloscópio, eu não vejo nenhuma alteração do nível de tensão.

abraços
Luiz

MensagemEnviado: 02 Ago 2007 13:06
por plinium
Coloca o seu codigo aqui para ver como vc está fazendo.

Serial no MSP

MensagemEnviado: 25 Ago 2007 23:22
por quispe
Olá tente fazer isto:

// Configura os registradores da USART - 2400 bps

ME1 |= UTXE0 + URXE0; // Habilita UARTO RX e TX
U0CTL |= CHAR; // USART trabalha com 8 bits de dados
U0TCTL |= SSEL0; // O clock da UART será o ACLK
U0BR0 = 0X0D; // Configura baund rate para 2400
U0BR1 = 0X00;
U0MCTL = 0X6B;
UCTL0 &= ~SWRST; // Inicializa a UART

e depois

U0TXBUF = 'A'; // Escreve o digito4 em ascii
while(!U0TCTL_bit.TXEPT); // Espera sair o dado pela serial

abraço