Ciao a tutti. Devo realizzare una connessione half duplex per una rete di Arduino con i 75176. Ho utilizzato un pin per la commutazione tra ricezione e trasmissione e il pin 0 e 1 per i dati in RX e TX. Utilizzo il comando Serial.print() per trasmettere i dati settando a 1 il pin che stabilisce la direzione dei dati e poi lo resetto a 0 dopo il comando Serial.print(). Esempio
void TxMsg(msg)
{
Serial.flush();
digitalWrite(Pin_dir, HIGH);
Serial.println(msg);
digitalWrite(Pin_dir, LOW);
}
Dato che il comando Serial.print() utilizza la USART del ATmega328 l'esecuzione passa all'istruzione successiva, prima ancora che tutti i dati sono trasmessi, causando problemi. Qualcuno sa come fare per testare la fine della trasmissione, ad esempio leggendo qualche registro interno?. Spero di essere stato chiaro.
Ciao