Protocolli di comunicazione seriale: Parte Sette - 1-Wire

Mark Harris
|  Creato: maggio 24, 2021  |  Aggiornato: ottobre 24, 2024
7. Protocolli di Comunicazione Seriale - 1-Wire

Molti Protocolli di Comunicazione Seriale sono disponibili per il trasferimento di dati tra dispositivi elettronici, che si tratti di un microcontrollore che legge dati da un sensore o invia dati a un dispositivo di memorizzazione. Questo è uno di una serie di articoli che copriranno alcuni dei protocolli più popolari comunemente utilizzati. Concluderemo la serie con un confronto dei vantaggi e degli svantaggi di ciascuno.

Il mio obiettivo è che la serie si riveli un utile riferimento la prossima volta che ti troverai a dover implementare un bus di comunicazione seriale, così potrai scegliere l'opzione migliore per la tua applicazione specifica.

In questo articolo, esamineremo il popolare protocollo 1-Wire.

Protocollo 1-Wire

1-Wire è un bus di comunicazione a bassa velocità sviluppato da Dallas Semiconductor Corp. (ora Maxim Integrated) che utilizza una sola linea di dati di segnale esclusa la terra. È un sistema di comunicazione master-slave in cui un dispositivo master o host è connesso tramite una singola linea di dati a uno o più dispositivi slave. Ogni dispositivo slave 1-Wire avrà un numero di identificazione (ID) univoco di 64 bit programmato in fabbrica, che è l'indirizzo di quel dispositivo.

I dispositivi 1-Wire sono solitamente prodotti solo da Maxim Integrated e sono disponibili in vari tipi di package, come il tipico transistor TO-92, così come diversi circuiti integrati. Un dispositivo di comunicazione 1-Wire molto popolare è l'iButton (noto anche come Dallas Key). L'iButton è un piccolo dispositivo modulare utilizzato per applicazioni come data logger, sensori di temperatura e umidità, LED, dispositivi di memoria, adattatori, ecc. Sebbene l'iButton sia storicamente stata un'implementazione molto popolare del 1-Wire, oggi ci sono molti sensori disponibili da Maxim Integrated che implementano il protocollo 1-Wire.

In linea di principio, un iButton è un microchip molto simile a quelli utilizzati nelle smart card. La differenza è che il microchip è alloggiato in un bottone di acciaio inossidabile rotondo ed è progettato per l'uso in ambienti difficili e impegnativi. Si affidano a contatti fisici per la connessione con il bus 1-Wire.

I tipici intervalli di tensione 1-Wire su cui il dispositivo opera includono:

  • 1,71 V (min) a 1,89 V (max)
  • 1,71 V (min) a 3,63 V (max)
  • 2,97 V (min) a 6,63 V (max)
  • 2,8 V (min) a 5,25 V (max)

Una delle caratteristiche più interessanti del bus 1-Wire è che l'alimentazione può essere fornita attraverso la linea di comunicazione, piuttosto che necessitare di una alimentazione esterna. Questo può permettere di collegare sensori esterni, come i sensori di temperatura, con solo i fili dei dati e di massa, alimentando il sensore attraverso l'alimentazione parassita dal bus dati. Ciò può risparmiare una notevole complessità e cablaggio rispetto agli altri protocolli di comunicazione in serie che abbiamo esaminato in questa serie.

Un tipico collegamento di un dispositivo bus 1-Wire può essere visto nel seguente schema circuitale:

.

Nell'esempio sopra, un dispositivo master controlla diversi dispositivi slave.

La maggior parte dei dispositivi 1-Wire richiede un'energia estremamente bassa e non necessita di pin per l'alimentazione. Questi dispositivi estraggono l'energia di cui hanno bisogno per operare dalla linea dati 1-Wire, conosciuta come alimentazione parassita.

1-Wire internal hardware example
Esempio di hardware interno 1-Wire

Una tipica configurazione di alimentazione parassita di un dispositivo 1-Wire può essere osservata nel seguente schema circuitale:

1-Wire devices connected in a parasitic power configuration
Dispositivi 1-Wire connessi in una configurazione di alimentazione parassita

Esistono vari dispositivi 1-Wire, che possono essere utilizzati per applicazioni che includono la rilevazione della temperatura, identificazione, registrazione del tempo, EEPROM o EPROM (programmabili una sola volta), autenticazione sicura, ecc., consentendo la creazione di dispositivi con applicazioni che variano dall'identificazione, autenticazione di consumabili, accessori per PCB e computer, protezione della proprietà intellettuale, controllo dell'accesso ai sistemi di guardia, denaro elettronico, tempo e presenze, monitoraggio della temperatura di alimenti o sicurezza farmaceutica.

Il valore della resistenza di pull-up necessaria per la connessione 1-Wire dovrebbe essere abbastanza basso da fornire corrente sufficiente per alimentare il dispositivo ma non troppo basso tale che i dispositivi slave non riescano a portare la linea dati al livello logico 0 con successo.

I valori tipici della resistenza di pull-up per una connessione 1-Wire sono tra 1 kΩ e 4.7 kΩ. Questo imposta la corrente da un'alimentazione di 5 V tra 5 mA e 1.06 mA. Come esempio, il dispositivo DS2480B richiede un valore di corrente tra 1.5 mA e 5 mA per funzionare, tipicamente 3 mA.

Sul bus 1-Wire, c'è sempre un master che ha il controllo generale, che può essere un computer personale o un microcontrollore. Il master inizia sempre l'attività sul bus per evitare collisioni di trasmissione. Il dispositivo master è responsabile del rilevamento e della gestione di eventuali collisioni derivanti dalla trasmissione simultanea di più dispositivi slave.

I dispositivi trasmettono utilizzando impulsi bassi corti e lunghi per rappresentare i dati. Un impulso basso di 1–15 µs equivale a un livello logico 1, mentre un impulso basso di 60 µs equivale a un livello logico 0. Il bordo discendente (negativo) dell'impulso è utilizzato dai dispositivi slave per ascoltare la larghezza dell'impulso. Misurano la sua durata utilizzando un multivibratore monostabile molto semplice. Il master inizia le comunicazioni inviando un impulso di reset seguito da un comando di 8 bit, e poi i dati vengono inviati o ricevuti in gruppi di 8 bit. Il rilevamento degli errori è implementato utilizzando un semplice controllo di ridondanza ciclica (CRC) di 8 bit.

Riassunto

Questo articolo ha esaminato alcune caratteristiche del popolare protocollo 1-Wire e discusso alcuni dei suoi vantaggi e dettagli implementativi. Negli altri articoli di questa serie, esamineremo alcuni dei protocolli di comunicazione seriale alternativi disponibili.

Vorresti scoprire di più su come Altium Designer® può aiutarti con il tuo prossimo progetto di PCB? Parla con un esperto di Altium.

Sull'Autore

Sull'Autore

Mark Harris è un ingegnere eccezionale con oltre 12 anni di esperienza diversificata nel settore dell'elettronica, che va dai contratti aerospaziali e di difesa ai prodotti start-up, passatempi, ecc. Prima di trasferirsi nel Regno Unito, Mark ha lavorato per uno dei più grandi istituti di ricerca del Canada. Ogni giorno portava con sé un progetto o una sfida diversa che coinvolgeva l'elettronica, la meccanica e il software. È responsabile della pubblicazione della “Celestial Database Library”, la più grande libreria di componenti di database open source per Altium Designer. Mark è attratto dall'hardware e dal software open source, nonché a trovare soluzioni innovative per le sfide quotidiane di questi progetti. L'elettronica è pura passione: seguire la trasformazione di un'idea in realtà e interagire con il mondo è fonte di infinito piacere.
Puoi contattare Mark direttamente a: mark@originalcircuit.com

Risorse correlate

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.