Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Caratteristiche FireWire USB
Velocità di trasferimento dati: 400 Mbps 480 Mbps
Numero di dispositivi: 63 127
Hot plug and play: Si Si
Dispositivi isocroni: Si Si
Bus power: Si Si
Tipo di bus: Seriale Seriale
Bus termination required: No No
Doppino schermato intrecciato a 6 fili: Doppino schermato intrecciato a 4
Tipo di cavi: (1 coppia per l'alimentazione e 2 fili per lo scambio dati) (1 coppia per l'alimentazione e 1 coppia per lo scambio di dati)
Networkable: Si Si
Topologia della rete: Daisy chain Hub
Eccetto che per le velocità i due bus sono alquanto simili e proprio questo ha fatto la differenza: FireWire oggi ricopre il campo audio/video dove era attesa l'alta velocità per consentire trasmissioni real-time mentre USB ricopre tutte quelle applicazioni dove l'alta velocità non è fondamentale e si preferisce avere un costo più basso.
La FireWire ha notevoli risorse in quanto lo standard successivo ovvero l'IEEE 1394b ha portato la
velocità a1600 Mbps e si pensa di poter arrivare a 3200 Mbps. USB è host-based, ovvero i dispositivi devono connettersi necessariamente ad un computer per comunicare, mentre la FireWire è peer-to-peer, cioè i dispositivi FireWire possono parlare tra loro senza dover passare attraverso il computer. Forse è proprio questo il motivo che ha spinto molti costruttori a realizzare stampanti, scanner e hard disk con bus seriali FireWire. Bus Seriale I2C Il protocollo di comunicazione I²C, scritto anche come I2C, è un protocollo di comunicazione seriale sincrono creato da Philips. Numerosi costruttori di circuiti integrati possono implementarlo (su schede madri, microcontrollori ed altri integrati dotati di questo sistema di comunicazione: memorie flash, EEPROM, driver di display, RTC, ecc.) ma, avendo ogni tipo di periferica un proprio codice fisso di riferimento, la registrazione di un nuovo codice richiede il pagamento di un diritto allaPhilips.L'I2C è usato per comunicare con dispositivi in cui semplicità e basso costo sono prioritari rispetto alla velocità di trasmissione. Applicazioni comuni sono: accesso a Memoria flash ed EEPROM che mantengono i dati memorizzati anche quando non sono alimentate; accesso a DAC a bassa velocità; accesso a ADC a bassa velocità; cambiamento del settaggio nei monitor; variazione del volume in altoparlanti intelligenti; controllo di display come nei telefoni cellulari; lettura e diagnostica di sensori come, ad esempio, sensori di temperatura o velocità di ventilatori; attivazione e spegnimento dell'alimentazione di componenti di un sistema elettronico. Prima dell'avvento del bus seriale I2C, le soluzioni che vengono adottate per permettere la comunicazione tra un microcontrollore e le periferiche esterne fanno generalmente uso di una comunicazione parallela. Per tale ragione il bus su cui deve viaggiare l'informazione è
costituito da molti fili. Fin quando bisogna collegare una sola periferica al microcontrollore i problemi legati alla presenza di molte linee possono essere tenuti sotto controllo. Qualora le periferiche dovessero essere più di una, far giungere il bus ad ogni periferica può diventare un problema. Un semplice bus ad otto linee comporta comunque la presenza ad ogni integrato di almeno altrettanti pin necessari per la comunicazione. Questo significa che le dimensioni dell'integrato vengono ad essere dipendenti dalla dimensione del bus stesso. Ciò comporta che lo stesso PCB (Print Circuit Board) sul quale andrà montato l'integrato sarà più grande e quindi più costoso. Questi problemi vengono interamente superati dal bus I2C, che permette una comunicazione tra periferiche con due sole linee, più quella di massa comune. Il pin WP (Write Protect) serve a proteggere il chip in scrittura ed evitare di cancellare i dati scritti nel
I2C bus è uno standard seriale che a differenza del protocollo RS2323, che permette un collegamento punto-punto tra due sole periferiche, permette di collegare sullo stesso bus un numero elevato di periferiche, ognuna individuata da un proprio indirizzo (comunicazione a stella).
Un notevole vantaggio dei dispositivi che fanno uso del bus I2C è quello della loro semplicità d'uso. Infatti tutte le regole del protocollo che bisogna rispettare per una corretta comunicazione vengono gestite a livello hardware, dunque il progettista non si deve preoccupare di nulla. La prima versione del bus I2C permette di trasmettere fino a 100Kbit/s (modalità standard). Questa velocità è stata portata a 400Kbit/s nelle modifiche apportate nel 1992 (modalità veloce). Nel 1998 la velocità è stata portata fino a 3.4Mbit/s (modalità ad alta velocità).
Il bus I2C è un bus seriale che, come detto, necessita di sole due linee.
nominate SDA (Serial Data) e SCL (Serial Clock) più la linea di massa. Ambedue le linee sono bidirezionali. La linea SDA è utilizzata per il transito dei dati che sono in formato ad 8 bit, mentre quella SCL è utilizzata per trasmettere il segnale di clock necessario per la sincronizzazione della trasmissione. Il bus I2C permette la connessione di più periferiche su uno stesso bus ma permette la comunicazione tra due soli dispositivi alla volta. Un altro vantaggio del bus I2C è l'ampio range di densità: ogni periferica inserita nel bus I2C possiede un indirizzo che sul bus la individua in modo univoco. Questo indirizzo può essere fissato dal produttore in sede di fabbricazione o parzialmente fissato dal progettista. L'indirizzo è costituito da 7 bit nelle versioni standard o da 10 bit nelle versioni estese. Nel caso di indirizzamento a 7 bit si avrebbe potenzialmente la possibilità di indirizzare 128 periferiche mentrenel caso di 10 bit si avrebbe la possibilità di indirizzare fino a 1024 periferiche. Il numero di periferiche ora citate non sono comunque raggiungibili dal momento che alcuni indirizzi sono riservati a funzioni speciali. La comunicazione con un componente I2C è caratterizzata da alcune fasi che sono sempre uguali per qualsiasi dispositivo. L'inizio e la fine della comunicazione I2C vengono determinati inviando nel bus gli impulsi di START e di STOP ottenuti mediante una particolare sequenza di stati logici nelle linee SDA e SCL. In condizioni di riposo le linee SDA e SCL sono mantenute a livello logico 1. La condizione di START si ha quando la linea SDA passa da 1 a 0 mentre SCL si mantiene a livello 1. La condizione di STOP invece si ha quando la linea SDA passa da 0 a 1 mentre SCL si trova a livello 1. Dopo aver inviato la sequenza di Start, il livello logico della linea SDA viene ritenuto valido e viene letto dal dispositivo I2C quando SCL è a livello 1, mentrecorretta ricezione- Esempio di corretta ricezione
- Esempio di corretta ricezione
Bus Seriale SPI
Il protocollo SPI o meglio l'interfaccia SPI, venne originariamente ideata dalla Motorola (ora Freescale) a supporto dei propri microprocessori e microcontrollori. A differenza dello standard I2C ideato dalla Philips, l'interfaccia SPI non è stata mai standardizzata; ciononostante è divenuta di fatto uno standard. Il non avere delle regole ufficiali ha portato all'aggiunta di molte caratteristiche ed opzioni che vanno opportunamente selezionate ed impostate al fine di permettere una corretta comunicazione tra le varie periferiche interconnesse.
L'interfaccia SPI descrive una comunicazione singolo Master singolo Slave, ed è di tipo sincrono e full-duplex. Il clock viene trasmesso con una linea dedicata (non necessariamente una trasmissione sincrona ha una linea dedicata al clock) ed è possibile sia trasmettere che ricevere dati in contemporanea.
L'interfaccia presenta inoltre 4 linee di collegamento
(esclusa la massa comunque necessaria), per cui lostandard SPI è anche noto come 4 Wire Interface. È compito del Master avviare la comunicazione e fornireil clock allo Slave. La nomenclatura delle varie linee può variare a seconda del costruttore. È necessarioconsultare il datasheet del componente che si intende utilizzare in caso di dubbi:
- SCLK - SCK: Serial Clock (emesso dal master);
- SDI – MISO – SOMI – DI - SO: Serial Data Input, Master Input Slave Output (ingresso per il master euscita per lo slave);
- SDO – MOSI – SIMO – DO – SI: Serial Data Output, Master Output Slave Input (uscita dal master);
- CS – SS – nCS – nSS – STE: Chip Select, Slave Select, emesso dal master per scegliere con qualedispositivo slave vuole comunicare (dalla figura, il segnale SS negato, si comprende che per comunicarecon il dispositivo slave deve venire messo a livello logico basso);
Il segnale Slave
Select (SS) non è sempre presente nei microcontrollori che possiedono l'interfaccia SPI e per la sua implementazione è necessario distinguere due casi.
Se il microcontrollore è impostato per lavorare come Master, lo Slave Select deve essere opportunamente abilitato prima dell'avvio della comunicazione con lo Slave. Il suo corretto utilizzo può cambiare a seconda della modalità di trasmissione utilizzata (si veda di seguito). Frequentemente i microcontrollori in modalità Master fanno uso di semplici I/O generici che vengono assegnati uno per periferica.
Se invece il microcontrollore è impostato per lavorare come Slave, lo Slave Select ha lo scopo di abilitare il microcontrollore al fine di permettergli una corretta comunicazione. Quando il segnale SS non è presente si fa spesso uso di un ingresso con interruzione, in maniera da poter prontamente individuare la richiesta del Master di avviare la comunicazione. Si ricorda che il
l'utilizzo del segnale SS sono:- Permette di selezionare uno specifico Slave all'interno di un bus SPI.
- Quando il segnale SS è attivo (basso), il Slave selezionato risponde alle richieste del Master.
- Quando il segnale SS è disattivato (alto), tutti gli Slave condividono la linea MISO.
- In questo caso, il disabilitare il segnale SS porta l'uscita MISO dello Slave in uno stato di alta impedenza.