Quanto tempo tra il pin digitale Arduino e l'IC?


9

Il mio progetto attuale prevede l'utilizzo di registri a turni 74HC595 per controllare un display a LED, tuttavia il display potrebbe trovarsi a circa 5 metri dalla scheda Arduino. Il piano è di utilizzare alcuni cavi DB9 / RS232 tra una scatola con Arduino e un involucro con il display. La lunghezza sarebbe troppo lunga affinché il segnale digitale passi dai pin di uscita digitale al registro a scorrimento senza degrado?


Qual è la velocità in bit / velocità della trasmissione? Hai provato e guardato le onde su un campo di applicazione?
endolito

Grazie a tutti per le vostre risposte, in particolare Mark e Justjeff. Non ho un vero oscilloscopio per fare alcune misurazioni, quindi domani comprerò del filo e vedrò cosa succede.

Risposte:


7

Il 74HC595 è la tecnologia CMOS, quindi non dovrebbe impiegare quasi nulla in termini di corrente per guidarlo, quindi la caduta IR non sarebbe un problema.

Fintanto che mantieni la frequenza dei segnali al di sotto di 100kHz, non dovresti preoccuparti degli effetti della linea di trasmissione. Supponendo che l'osservatore previsto per i LED sia l'occhio umano, non dovresti preoccuparti comunque delle alte velocità. Ad esempio, 8 cifre a 7 segmenti e un punto decimale sono 64 elementi LED e, a soli 9600 bps, è possibile aggiornare il display in poco meno di 7 msec.

L'unica cosa di cui mi preoccuperei è se l'alto livello di uscita digitale di Arduino si registrerà come input alto nel tuo registro a scorrimento. Finché il registro a scorrimento funziona da un'alimentazione a 5 V (e non qualcosa di strano come 6), dovresti anche andare bene lì. (e se questo sarebbe stato un problema, si manifesterebbe su soli 10 cm di filo, quindi è facile da controllare)

Risposta breve: probabilità molto elevata di passare da arduino a cavo a 74HC595 senza problemi.


5

La mia sensazione è che dovresti stare bene a questa lunghezza. La tua scommessa migliore potrebbe essere quella di provarlo e vedere se funziona.

Se non funziona, ci sono alcune cose che puoi fare per aiutarti: - usa cavi schermati a doppini intrecciati o cavi twistati insieme. - Inserire un tappo piccolo (0,01 uF o giù di lì) alla fine. Ciò dovrebbe aiutare a eliminare parte del rumore (l'uso di un condensatore troppo grande non funzionerà, quindi in questo caso non è meglio avere dimensioni maggiori). - Usa resistori di valore leggermente inferiore rispetto a quanto faresti normalmente per i tuoi pulldown. - Utilizzare un cavo a bassa impedenza.

Come punto dati, un Arduino può eseguire 9600 seriale su cavo non schermato per 50 '(forse di più?).


5

Dovresti comunque controllarlo per assicurarti che funzioni correttamente, ma qui è il processo di pensiero / matematica che devi prendere in considerazione per determinare gli effetti della linea di trasmissione.

  • Tempo di salita e discesa del bordo, a differenza di ciò che alcuni hanno pubblicato qui, la frequenza del segnale non ha alcuna importanza nel determinare quando è necessario tenere conto degli effetti della linea di trasmissione. È generalmente vero che i segnali ad alta frequenza hanno tempi di salita / discesa più rapidi, ma i segnali a bassa frequenza possono anche avere tempi di salita e discesa molto rapidi se vengono pilotati a bassa frequenza da un ricetrasmettitore con una velocità di risposta elevata. Come sempre utilizzare i tempi di salita / discesa più lenti possibili per rispettare le specifiche delle parti in uso, è possibile ridurre i tempi di salita e discesa con un filtro RC alla sorgente. In generale è necessario considerare gli effetti della linea di trasmissione se la lunghezza del filo è maggiore di Tr / (2 * Td) con Tr = al tempo di salita del segnale alla sorgente e Td = al ritardo di propagazione per unità di lunghezza del cavo stiamo usando. Potrebbe anche essere necessario terminare correttamente le linee del segnale su cavi più corti se il carico è altamente capacitivo, questo è un po 'difficile da calcolare in anticipo poiché ci sono molti elementi con effetti capacitivi in ​​un tale sistema. Se hai questo problema, noterai uno squillo (sotto e sopra gli spari sui bordi) nel segnale.

  • Corrente nel cavo, questa sarà definita nel foglio delle specifiche dell'IC ricevente come corrente di ingresso. Questo combinato con la resistenza del cavo ti dirà se la caduta di tensione è accettabile date le specifiche dell'IC ricevente. Questo è solo un valore corrente medio. La corrente di picco effettiva può dipendere dal tipo di terminazione utilizzata e deve essere presa in considerazione quando si decide se l'IC pilota può gestire il carico o se è necessario un driver di linea. La corrente di picco dovrebbe durare solo fino al ritardo di propagazione di andata e ritorno del circuito.

Se è necessario tenere conto degli effetti della linea di trasmissione, è necessario conoscere anche l'impedenza caratteristica del cavo e l'impedenza di uscita dell'IC di pilotaggio.

Se è necessario gestire gli effetti della linea di trasmissione, esistono alcune opzioni per lo stile di terminazione. Le uniche due che prenderei in considerazione sono la terminazione di origine e la terminazione di fine distorta CA.

Nella terminazione della sorgente è necessario posizionare un resistore il più vicino possibile all'IC di pilotaggio con un valore pari all'impedenza caratteristica del cavo meno l'impedenza di uscita dell'IC di pilotaggio, potrebbe essere necessario sintonizzarlo un po 'per colpire le specifiche su come l'impedenza dei connettori dei cavi avrà un impatto anche sul sistema e posizionerà sempre i circuiti integrati di pilotaggio e ricezione il più vicino possibile ai connettori per ridurre i riflessi. Questo è probabilmente il metodo più semplice e probabilmente il metodo migliore in questo caso. La corrente di picco sarà (Vhigh - Vlow) / (2 * Z0) con Z0 = all'impedenza caratteristica del cavo.

Nella terminazione di estremità polarizzata CA si collega alla linea di segnale il più vicino possibile all'IC ricevente un resistore in serie con un condensatore con il condensatore collegato a terra. Il valore del resistore dovrebbe essere l'impedenza caratteristica del cavo, il valore del condensatore è determinato dalla frequenza del segnale (R e C formano un filtro passa basso). La corrente di picco del convertitore è la stessa della terminazione della sorgente. La corrente di pilotaggio media dipende dal duty cycle del segnale, se è molto vicino al 50%, sarà approssimativamente uguale alla corrente di ingresso dell'IC ricevente, se è superiore al 50% la corrente di pilotaggio media sarà più alta . Poiché R e C formano un filtro passa-basso, questo stile di terminazione filtrerà il rumore ad alta frequenza.

Abbina altre cose da tenere a mente:

  • L'uso di coppie intrecciate per segnali a terminazione singola non riduce affatto il rumore. Ne risulta un'impedenza caratteristica più coerente per la linea di trasmissione. Ciò potrebbe rendere l'aspetto migliore se davvero avessi dovuto terminare correttamente il segnale ma non lo hai fatto. Non fa nulla per ridurre il rumore EM esterno sulla linea.

  • L'uso di un cavo schermato su un sistema a terminazione singola è al massimo incerto. Spesso è possibile creare una situazione in cui il rumore esterno si accoppia in modo capacitivo allo schermo risultando in un flusso di corrente sullo schermo che quindi si accoppia al filo del segnale. Non mi preoccuperei di usare un cavo schermato a meno che tu non usi la segnalazione differenziale. Anche l'utilità di uno schermo sul rumore ad alta frequenza dipende dall'induttanza verso terra, i percorsi a bassa induttanza richiedono solitamente connettori speciali.

Puoi usare la stessa elaborazione del pensiero su qualsiasi linea, sia esso un cavo o una traccia PCB da 2 pollici.


Ho alcuni commenti, ma solo uno ho il tempo di scrivere in questo momento. Quando dico frequenza del segnale mi riferisco ai componenti di frequenza del mio segnale. Ciò è determinato completamente dal tempo di salita / discesa di un segnale digitale.
Kortuk,

Assumo un segnale digitale per tutto il mio post e quando dico la "frequenza" di un segnale digitale mi riferisco alla massima frequenza di commutazione del segnale. mentre è comune discutere il contenuto di segnali analogici nel dominio della frequenza, in genere non è altrettanto utile discutere di segnali digitali in quel dominio.
Segna

4

Probabilmente avrai bisogno di buffer per guidare quella lunghezza di cavo - qualcosa come il 74HC244 buffer / driver di linea dovrebbe essere adatto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.