Controller Area Network: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Aggiunto esempio di Convertitore CAN e tutorial su CAN e CAN FD |
formatnum |
||
Riga 1:
Il '''Controller Area Network''', noto anche come '''CAN-bus''', è uno standard [[Porta seriale|seriale]] per [[Bus (informatica)|bus]] di campo (principalmente in ambiente automotive), di tipo [[multicast]], introdotto negli [[anni 1980|anni ottanta]] dalla [[Robert Bosch GmbH]], per collegare diverse [[Unità di controllo elettronico (elettromeccanica)|unità di controllo elettronico]] (ECU). Il CAN è stato espressamente progettato per funzionare senza problemi anche in ambienti fortemente disturbati dalla presenza di [[onde elettromagnetiche]] e può utilizzare come mezzo trasmissivo una linea a differenza di potenziale bilanciata come la [[RS-485]]. L'immunità ai disturbi EMC può essere ulteriormente aumentata utilizzando cavi a [[doppino ritorto|doppino intrecciato]].
Sebbene inizialmente applicata in ambito [[automotive]], come bus per autoveicoli, attualmente è usata in molte applicazioni industriali di tipo [[Sistema embedded|embedded]], dove è richiesto un alto livello di immunità ai disturbi. Il [[bit rate]] può raggiungere {{M|1
== Trasmissione dati ==
Riga 56:
Lo standard CAN ''deve'' obbligatoriamente riconoscere il formato ''base frame'' e ''può'' opzionalmente riconoscere il formato ''extended frame format'' (che, tuttavia, deve essere tollerato).
Il CAN ''base'' permette 2<sup>11</sup> = {{formatnum:2048}} tipi di messaggi diversi, ma da specifiche Bosch se ne possono usare solo {{formatnum:2031}}. Nella versione ''extended'' si possono avere fino a 2<sup>29</sup> =
==== Formato del Base frame ====
Riga 66:
! Nome del campo !! Lunghezza (numero di bit) !! Funzione
|-
| Start-of-frame
|-
| Identificatore
|-
| Richiesta remota di trasmissione (RTR) || 1 || Deve essere un bit dominante
|-
| Bit aggiuntivo di identificazione (IDE)
|-
| Bit riservato (r0)
|-
| Codice di lunghezza dati (DLC) || 4 || Numero di byte per codificare ciascun dato (0-8 byte)
|-
| Campo dati
|-
| CRC
|-
| delimitatore CRC
|-
| Slot ACK
|-
| Delimitatore ACK
|-
| End-of-frame (EOF) || 7 || Devono essere bit recessivi
Riga 101:
! Nome del campo !! Lunghezza (numero di bit) !! Funzione
|-
| Start-of-frame
|-
| Identificatore A
|-
| Richiesta remota sostitutiva (SRR) || 1 || Deve essere un bit recessivo
|-
| Bit aggiuntivo di identificazione (IDE)
|-
| Identificatore B
|-
| Richiesta remota di trasmissione (RTR) || 1 || Deve essere un bit dominante
Riga 117:
| Codice di lunghezza dati (DLC) || 4 || Numero di byte del dato (0-8 byte)
|-
| Campo dati
|-
| CRC
|-
| Delimitatore CRC
|-
| Slot ACK
|-
| Delimitatore ACK
|-
| End-of-frame (EOF) || 7 || Devono essere bit recessivi
|