Página 1 de 1

Serial Assincrona Half-duplex

MensagemEnviado: 20 Set 2009 18:12
por gbventura
Olá pessoal,

Estou precisando configurar uma transmissão serial half-duplex (1 fio) com as seguintes especificações:
1 start bit
7 data bits, least significant bit transmitted first
1 parity bit, even parity
1 stop bit
1200 baud.

Pensei em duas alternativas, a 1ª é realizar o processo todo em software, utilizando um pino de I/O. A 2ª é usar o hardware USART e aí com um hardware externo ficar 'chaveando' qual pino usar no momento (RX ou TX).
O segundo caso parace mais fácil, mas eu queria evitar o hardware externo....
Alguém tem alguma sugestão?

Ah, só por curiosidade, eu pretendo implementar o protocolo sdi-12.

Obrigado!

MensagemEnviado: 21 Set 2009 09:49
por tcpipchip
É possivel por hardware...
Pq o atmega por mandar via serial (USART) de 5 a 9 bits...
Preste atencao no registrador UCSRB
Aqui tem um material...
http://winavr.scienceprog.com/avr-gcc-t ... ained.html

TCPIPCHIP

MensagemEnviado: 21 Set 2009 10:57
por Djalma Toledo Rodrigues
Interliga TX RX

O que 'TXar' ira ecoar em RX

Para evitar, alterne os Pinos TX ou RX para Input .
.

MensagemEnviado: 21 Set 2009 11:10
por RobL
Nos avrs quando definir uso da UART a direção do pino será definida pela função alternativa do pino (bypassada).
Neste caso pode-se desabilitar momentaneamente o TX ou o RX conforme o momento.
Apesar de não ser estritamente necessário, visto que RX estará como entrada, porntanto alta impedância, por precaução usar um R para interligar RX com TX. Sempre que transmitir, desabilitar RX e reabilitar ao final da transmissão.