Controller Area Network: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Marius~itwiki (discussione | contributi)
aggiunte
Marius~itwiki (discussione | contributi)
aggiunte
Riga 6:
Sebbene inizialmente applicata in ambito [[automotive]], come bus per autoveicoli, attualmente è usata in molte applicazioni industriali di tipo [[embedded]], dove è richiesto un alto livello di immunità ai disurbi. Il [[bit rate]] può raggiungere 1 Mbit/s per reti lunghe meno di 40 m. Velocità inferiori consentono di raggiungere distanze maggiori (ad es. 125 kbit/s per 500 m). Il protocollo di comunicazione del CAN è standardizzato come ISO 11898-1 (2003). Questo standard descrive principalmente lo strato (''layer'') di scambio dati (''data link layer''), composto dallo strato sottostante (''sublayer'') "logico" (''Logical Link Control, LLC'') e dallo strato sottostante del ''Media Access Control, (MAC)'' e da alcuni aspetti dello strato "fisico" (''physical layer'') descritto dal modello [[ISO/OSI]] (''ISO/OSI Reference Model''). I protocolli di tutti gli altri layer sono lasciati alla libera scelta del progettista della rete.
 
==Trasmissione dati==
<!--
Il CAN trasmette dati secondo un modello basato su [[bit]] "dominanti" e "recessivi", in cui i bit dominanti sono gli '''0''' ''logici'' ed i bit recessivi sono gli '''1''' ''logici''. Se un nodo trasmette un bit dominante ed un altro un bit recessivo, allora il bit dominante "vince" fra i due (realizzando una combinazione [[AND logico]]).
 
== Data transmission ==
CAN transmits data through a binary model of "dominant" bits and "recessive" bits where dominant is a logical 0 and recessive is a logical 1. If one node transmits a dominant bit and another node transmits a recessive bit then the dominant bit "wins" (a [[Logical conjunction|logical AND]] between the two).
 
{| align="center" cellpadding="20" border="0"
|-
|colspan="2"| '''[[TruthTabella tabledella verità]]s fordei dominantbit dominanti/recessive and logicalrecessivi (AND logico)'''
|-
| ''<center>BusStato statedel withbus twoquando nodesdue transmittingnodi trasmettono</center>''
{| align="center" border="1" cellpadding="10"
|-
| || '''dominantdominante''' || '''recessiverecessivo'''
|-
| ''dominantdominante'' || '''''dominantdominante''''' || ''dominantdominante''
|-
| ''recessiverecessivo'' || '''dominantdominante''' || '''''recessiverecessivo'''''
|}
|| ''<center>Logical AND logico</center>''
{| align="center" border="1" cellpadding="10"
|-
Riga 34 ⟶ 32:
|}
|}
 
<!--
 
So, if you are transmitting a recessive bit, and someone sends a dominant bit, you see a dominant bit, and you know there was a collision. (All other collisions are invisible.) The way this works is that a dominant bit is asserted by creating a voltage across the wires while a recessive bit is simply not asserted on the bus. If anyone sets a voltage difference, everyone sees it, hence, dominant.