Trasmissione seriale
Ciao ho un problema con la risoluzione di questo programma:
2 arduini che comunicano tra di loro e si trasmettono "n" bit
devo usare un array multidimensionale di "n" "n1" valori, in cui "n" è il numero, n1 sono i bit che compongono il numero, per fare esempio int c[3][n]={{0,1,1,1},{0,0,1,0},{0,1,1,1}};
Si dividono in arduino Trasmettore e ricevitore, ed utilizzeranno solo 3 linee : A, B, D
Arduino ricevitore:
ingressi: A, D
uscita: B
Programma: chiede attraverso fronti di discesa il numero; aspetta che il trasmettitore gli mandi un fronte di discesa in cui indica la disponibilità dei dati; manda un fronte di salita per richiedere i bit, questo solo "n1"volte, mentre li riceve aspetta i fronti di salita del trasmettitore che indicano l'invio del bit; poi passa al numero successivo
Arduino trasmettitore:
ingressi : B
uscita : A, D
Programma: aspetta fronte di discesa mandati dal ricevitore; manda disponibilità del numero; aspetta fronte di salita che indica la richiesta del bit; mentre manda bit manda fronte di salita per indicare l'invio del bit
2 arduini che comunicano tra di loro e si trasmettono "n" bit
devo usare un array multidimensionale di "n" "n1" valori, in cui "n" è il numero, n1 sono i bit che compongono il numero, per fare esempio int c[3][n]={{0,1,1,1},{0,0,1,0},{0,1,1,1}};
Si dividono in arduino Trasmettore e ricevitore, ed utilizzeranno solo 3 linee : A, B, D
Arduino ricevitore:
ingressi: A, D
uscita: B
Programma: chiede attraverso fronti di discesa il numero; aspetta che il trasmettitore gli mandi un fronte di discesa in cui indica la disponibilità dei dati; manda un fronte di salita per richiedere i bit, questo solo "n1"volte, mentre li riceve aspetta i fronti di salita del trasmettitore che indicano l'invio del bit; poi passa al numero successivo
Arduino trasmettitore:
ingressi : B
uscita : A, D
Programma: aspetta fronte di discesa mandati dal ricevitore; manda disponibilità del numero; aspetta fronte di salita che indica la richiesta del bit; mentre manda bit manda fronte di salita per indicare l'invio del bit
Riconosco che divento un vecchio brontolone
Nel descrivere il protocollo di comunicazione, se aggiungessi un disegno con l'andamento nel tempo dei segnali, invoglieresti il lettore e gli faciliteresti la comprensione.
Anche un disegno con le connessioni fra gli arduini aiuta.
Come verifichi che funziona/non funziona?
se non ricevi, sei però sicuro di trasmettere correttamente?
oppure ricevi, ma non quello che ti aspetti?
Hai verificato l'hardware ossia le connessioni fra gli arduino ?
Sei sicuro che funzionino ? Magari scrivendo un semplice programma di test per verificarle?
In seguito guarderò nella palla di cristallo e tirerò fuori altri buoni consigli, non potendo più dare cattivi esempi

Di solito un programma non si risolve, ma si "imposta" o si "scrive" o si valida o collauda o debugga oppure si devono "comprendere le specifiche ossia i requisiti".Ciao ho un problema con la risoluzione di questo programma:
Nel descrivere il protocollo di comunicazione, se aggiungessi un disegno con l'andamento nel tempo dei segnali, invoglieresti il lettore e gli faciliteresti la comprensione.
Anche un disegno con le connessioni fra gli arduini aiuta.
Quindi hai fatto il programma, solo che presumibilmente non funziona?Ma cosa c'entra? io il programma l'ho già fatto soltanto che ho un problema di ricezione dei bit tra i 2 arduini
Come verifichi che funziona/non funziona?
se non ricevi, sei però sicuro di trasmettere correttamente?
oppure ricevi, ma non quello che ti aspetti?
Hai verificato l'hardware ossia le connessioni fra gli arduino ?
Sei sicuro che funzionino ? Magari scrivendo un semplice programma di test per verificarle?
In seguito guarderò nella palla di cristallo e tirerò fuori altri buoni consigli, non potendo più dare cattivi esempi






