La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Présentation CAN Controller Area Network Patrick MONASSIER Université Lyon 1 France.

Présentations similaires


Présentation au sujet: "Présentation CAN Controller Area Network Patrick MONASSIER Université Lyon 1 France."— Transcription de la présentation:

1 Présentation CAN Controller Area Network Patrick MONASSIER Université Lyon 1 France

2 2 Historique du réseau CAN 1983Début des développements de CAN chez Robert Bosch Gmbh 1985Spécification V1.0. Premières relations entre Bosch et les fondeurs de silicium 1986Démarrage des travaux de normalisation ISO 1987Introduction du premier échantillon de circuit intégré CAN 1989Démarrage des premières applications industrielles 1991Spécifications du protocole étendu CAN 2.0 B 1991Premiers véhicules équipés (500 Kb/s) – Mercedes Classe S 1992Création du groupement utilisateur CiA – CAN in Automation 1993Création du groupe OSEK 1993Parution de la première couche applicative (CAL) du CiA 1994Standardisations ISO terminées 1994PSA (Peugeot - Citroën) et Renault entrent à lOSEK 1995Task Force aux USA avec le SAE-Society of Automotive Engineers 1996CAN est appliqué à la plupart des « contrôles moteurs » automobiles sociétés adhérentes au CiA 1997Tous les grands fondeurs proposent des composants CAN 2000Forte implantation de CAN dans l'automobile avec la couche OSEK

3 3 Applications Embarqué Industrie Automobile Robitique Quelques données sur les applications industrielles Communication de requise 64 % type synchronenon requise 36% Mode d'échantillonnagecyclique 73% Pour les nœuds du réseauévènement 27% Périodicté des cycles1 ms 26% 10 ms 48% 100 ms 26% Temps de réponse du signal1 ms 40% 10 ms 34% 100 ms 26% Longueur du bus< 100 m 66% < 1000 m 31% > 100 m 3% Source VDMA

4 4 Le modèle ISO N° de couche Application Présentation Session Transport Réseau Communication Physique Modèle ISO Protocole CAN Utilisateur Protocole CAN avec libre choix du medium vide

5 5 Le modèle ISO CAN Application Communication Physique Utilisateur Protocole CAN avec libre choix du medium N° de couche Modèle ISO réduit Protocole CAN Application Présentation Session Transport Réseau Liaison Physique Application Liaison Physique Symbolique utilisée pour le suivi de ce cours

6 6 Les couches Présentation et Transport sont des couches logicielles qui ne servent pas dans les réseaux de terrain. On accède directement au micro- contrôleur couche 2 par simplification, pour économiser du temps CPU. Les couches Transport et Réseau servent au routage dans des réseaux aux topologies complexes. Quand le réseau est physiquement limité, on a pas besoin de ces couches. (exemples de couches Transport / Réseau : TCP/IP pour Ethernet et Internet ) Le modèle ISO CAN Un modèle adapté aux réseaux de terrain Application Présentation Session Transport Réseau Liaison Physique Topologies simples Logiciel simplifé Economie de temps Microprocesseur Contrôleur réseau Interface réseau Bus Ligne du réseau Architecture simplifiée dune station réseau

7 7 Les couches CAN Données Paramètres Commandes Champs Trame Bits Ligne du réseau La couche applicative définit et exploite les champs de données et de paramètres Elle gère aussi les commandes : émission, réception … etc. La couche liaison construit et gère dynamiquement la trame. Les champs sont inclus dans la trame qui est exploitée bit à bit par linterface physique La couche physique assure la mise en forme électrique des bits Couches Application Liaison Physique

8 8 Couche 7 - Application Application Présentation Session Transport Réseau Liaison Physique CAL (CANOpen) Groupemement CAN in Automation - CiA DeviceNetRockwell Allen Bradley SDSHoneywell CAL DeviceNet SDS J1939 OSEK INDUSTRIE AUTOMOBILE J1939SAE Society of Automotive Engineers Applications camions aux USA OSEKOpen Systems & Interface for Distribued Electronic in Cars Véhicules légers en Europe

9 9 Les couches ISO CAN Application Présentation Session Transport Réseau Liaison Physique LLC Logic Link Control MAC Medium Access Control PLS Physical Signaling PMA Physical Medium Attachment MDI Medium Dependant Interface Intégré dans le contrôleur CAN Logiciel Driver de ligne Connectique Spécifications du protocole CAN

10 10 Les modèle ISO CAN Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI Application Liaison Physiquebit Application Liaison Physique trame Pour faciliter la lecture de ce cours, dans les pages suivantes, le répérage dans le modèle ISO est symbolisé comme suit :

11 11 Couche 2 - Liaison - LCC Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI LLC Logic Link Control Contrôle de lintégrité du format des trames émises et reçues Si possible, assurer les corrections derreur de structure de trame (format…etc.) Procédure de recouvrement derreur, reprise…etc. Identification de la trame Filtrage des messages Notification de surcharges Invitation à émettre ou à recevoir Les tâche de la sous-couche LLC sont les suivantes :

12 12 Couche 2 – Liaison - MAC Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI MAC Medium Access Control En réception, daccepter les messages devant être transmis vers la sous-couche LLC En émission, de présenter à la couche physique les messages provenant de la couche LLC Mise en trame du message, organisation des trains de bits, par exemple : sérialisation à lémission, désérialisation à la réception… Arbitrage de conflits (au niveau bit) Acquittement de réception de message Détection derreurs de transmission Signalisation derreurs de transmission La sous-couche MAC a pour mission : Ses tâches sont donc les suivantes : Gestion de la prise daccès à la couche physique (CSMA/CA) Codage trame (stuffing/destuffing) Acquittement (signal ACK)

13 13 Couche1 - Physique - PLS Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI PLS Physical Link Signaling La sous-couche PLS soccupe de : La représentation du bit, cest-à-dire le type de codage bit, ses propriétés temporelles La définition des niveaux électriques, optique des signaux La synchronisation du bit La représentation du bit, cest-à-dire le type de codage bit, ses propriétés temporelles

14 14 Couche1 - Physique - PMA Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI Caractéristiques des étages de commande et de réception PMA Physical Medium Attach Caractéristiques des Interfaces Drivers / Receivers Par exemple: Philips 82C250 Compatible avec la norme ISO Vitesse jusquà 1 Mb/s Protection de ligne contre les parasites, filtarge des signaux Contrôle de la pente du signal pour diminuer les émissions radio-électriques Mode de réception différentiel pour une meilleures protection CEM Protection thermique Un circuit non alimenté naffecte pas le fonctionnement du bus Jusquà 110 nœuds supportés sur une même ligne

15 15 Couche1 - Physique - MDI Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI La couche MDI sintéresse à définir le medium sur lequel passent concrètement la communication et les points connexes associés, cest à dire : MDI Medium Dependant Interface Le medium, par exemple : du câble bifilaire, en fil de cuivre, de tel diamètre (gauge) correspondant à telle norme de câble La topologie du réseau Les impédances de terminaison / adaptation du réseau Les types de prises retenues pour les connecteurs des éléments du réseau

16 16 Eléments du réseau Microprocesseur Contrôleur réseau Interface réseau Ligne du réseau Architecture simplifiée dune station réseau Positionner physiquement les différents éléments Application Présentation Session Transport Réseau Liaison Physique LLC MAC PLS PMA MDI Microprocesseur Intel 386 ex Contrôleur CAN Intel Driver de ligne Philips 82C250 Exemple de carte CAN trame bit

17 17 Architectures CAN Microprocesseur ou microcontroleur Contrôleur CAN intégré Microprocesseur Contrôleur CAN Interface CAN Alcatel Bosch Dallas Semiconductor Fujitsu Hitachi Infineon Intel Intermetal Microchip Mitsubishi Motorola National Semiconductor NEC OKI Philips STMicroelectronics Temic Texas Instrument Toshiba Unitrode …. Fabricants de composants Contrôleur CAN Interface CAN Système Informatique Bus local Carte CAN Ligne du réseau SLIO CAN SLIO Serial Linked I/O device Carte avec microcontroleur CAN Carte microprocesseur et controleur CAN Carte avec SLIO Système avec carte controleur CAN

18 18 Optocouplage Ligne du réseau Microprocesseur Intel 386 ex Controleur CAN Intel Driver de ligne Philips Exemple de carte CAN Microprocesseur Intel 386 ex Controleur CAN Intel Driver de ligne Philips 80C250 Ligne du réseau Opto DC/DC Isolation galvanique OptoOptocoupleur = Exemple de carte CAN optocouplée optocouplage Dans le milieu industriel, loptocouplage et le filtrage sont nécessaires : CEM, Isolation galvanique, parasites…… etc Filtres de ligne filtrage

19 Le RESEAU CAN Les principes

20 Les méthodes daccès Maître / Esclave Avec jetons Par division de temps TDMA A gestion de collision CSMA-CD A gestion de collision CSMA-CA Ethernet CAN BitBus / FIP Interbus Exemples de réseaux Méthode CSMA-CD/CA Application Liaison Physique trame Profibus

21 21 Codage bit - principes Manchester Les 2 grands principes de codage, NRZ et Manchester, permettent de transporter lhorloge avec les données 0 1 Application Liaison Physiquebit NRZ NRZ : Non Return to Zero NRZI : Non Return to Zero Inverted NRZI Comment transporter lhorloge et les données sur le même support ? Horloge Données ? Signal Horloge + Données

22 22 Codage bit - principes NRZ Non Return to Zero Application Liaison Physiquebit NRZI Manchester Non Return to Zero Inverted Exemple dune suite de bits codée en NRZ, NRZI et Manchester

23 23 Contraintes du codage Le codage NRZ / NRZI est simple, mais attention, il ny a pas de front de synchronisation si le code reste constament à 0 ou à 1 Le codage Manchester transmet lhorloge en permanence mais nécessite une bande passante double La station émettrice impose lhorloge du signal La station réceptrice doit se cale sur lhorloge de lémetteur NRZ ou NRZI ………. Il ny a plus aucun front sur le signal pour resynchroniser lhorloge du récepteur. Il y a risque certain de dérive dans le temps. Cest le codage NRZ qui est choisi pour CAN Solution : le Bit Stuffing (remplissage bit) NRZ ou NRZI ………. Ces bits sont ajoutés à lémission puis seront retirés à la réception

24 24 Codage bit - Bit stuffing NRZ Bit Stuffing S Pour conserver linformation dhorloge, un bit inverse est inséré après 5 bits identiques. Il est retiré à la réception. Application Liaison Physiquebit

25 25 Codage bit - Arbitration Application Liaison Physiquebit +V Récessif : absence de porteuse Dominant : présence de porteuse Récessif : rappel de potentiel Dominant : conducteur à la masse Le Dominant (D) lemporte sur le Récessif (R) Il impose son état électrique Emission Relecture Contrôleur CAN Relecture et Comparaison CAN + CAN - Tx Rx En

26 Méthode CSMA-CD/CA Méthode à gestion de collision Méthode évoluée employée sur des réseaux standards - Ethernet CSMA / CD - CAN CSMA / CA ou CR Carrier Sense Multiple Access - with Collision Detection - with Collision Avoidance ou Collision Resolution Application Liaison Physique trame

27 Méthode CSMA / CA Toutes les stations sont égales Chaque station émet quand elle veut Les collisions sont acceptées Les collisions sont détectées par les stations Les collisions sont gérées par le protocole Il y a une stratégie darbitrage des collisions Principes généraux Application Liaison Physique trame

28 28 Méthode CSMA-CD/CA Stations ou Noeuds Résistance de terminaison Toutes les stations sont égales Chaque station émet quand elle veut Les collisions sont acceptées Les collisions sont détectées par les stations Les collisions sont gérées par le protocole Il y a une stratégie darbitrage des collisions Il est très facile dajouter ou de retirer un noeud En cas de coupure réseau, le tronçon est complètement isolé. Résistance de terminaison Application Liaison Physique trame

29 29 Principe de larbitrage S I I I I I I I I I I I R bus libre trame de données / requête S: bit de départ de trame (SOF) I : 1 parmi 11 bits didentificateur R: bit RTR - récessif (données) - dominant (requête) Le champ «Identifieur» sert pour larbitrage entre trames. Il est à la base du principe darbitration. Larbitrage concerne aussi le bit RTR Application Liaison Physique trame

30 30 Principe de larbitrage Transfert Transfert Perte darbitrage Erreur bit Tx: DTx: RTx: RTx : D Rx: DRx: RRx: DRx : R S R D R D D R D R R D... S R D R D D D D R D R R Sur le bus 3 gagne larbitrage S R D R D D R D D D D... Application Liaison Physique trame

31 31 Principe de larbitrage t ou autre cas... 2 Il y a une notion de priorité entre trames, fonction de la valeur de lidentifieur associé. La station émet mais perd larbitration… … et se met immédiatement en écoute La trame est émise complètement 3 est prioritaire sur 1 et 2 1 est prioritaire sur 2 2 est seule 4 est prioritaire sur 2 2 est seule Exemple dun réseau à 4 stations Application Liaison Physique trame

32 32 Longueur du réseau mètres Débit Kbits / s Longueur du réseau (mètres) Vitesse maximale du protocole CAN Exemple : 20 Kbit / s … …environ 3300 m DébitDistance du réseaumaximale 1 Mbits/s40 mètres 500 Kbits/s130 m 250 Kbits/s270 m 125 Kbits/s530 m 100 Kbits/s620 m 50 Kbits/s1,3 Km 20 Kbits/s3,3 Km 10 Kbits/s6,7 Km 5 Kbits/s 10 Km Application Liaison Physiquebit

33 33 Segment de propagation Transceiver ATransceiver B Contrôleur CAN A Contrôleur B Tmed=L / Vprop Tprop >= [ 2 x (Tmed + Tsd + Ttx + Trx + Tqual ) ] Tprop >= [ 2 x ( Tmed + Telec ) ] Tprop >= [ 2 x Tres ] (Tprog) min >= 2 x Tres Tprog = k x Tbit Tprog = k / Baud rate L <= (0,2 m/ns) x k / ( 2 x Baud rate ) – Telec Tension de sortie Données reçues 0,5 0,9Vdiff (V) Signal réel du bus t1t2 t Signal reconstruit t1t2 t Application Liaison Physiquebit

34 LE RESEAU CAN Les Trames Application Liaison Physique trame

35 35 Formats des trames CAN 2.0 A - Identifieur standard sur 11 bits CAN 2.0 B - Identifieur étendu sur 29 bits Norme CAN ISO Norme ISO Véhicules routiers Application Liaison Physique trameformat

36 36 Types de Trames Trames de données (data) Trames de requête (Remote) Trames derreur (Error) Trames de surcharge (Overload) InterTrames (Interframes) Application Liaison Physique trameformat

37 37 Trame de données Application Liaison Physique tramedonnées à 8 octets16273 IDLE Trame de données Début de trame (SOF) Champ identifieur Champ de commande Champ de données Champ de CRC Champ de ACK Fin de trame (EOF) Intermission 1 Bit RTR 29 Identifieur à 11 bits = format standard CAN 2.0A Identifieur à 29 bits = format standard CAN 2.0B Arbitrage Longueur en bits

38 38 Trame de données Application Liaison Physique tramedonnées à 8 octets16271 SOF Identifieur RTR Commande Données CRC ACK EOF Délimiteur ACK (Récessif) Slot ACK Délimiteur CRC (Récessif) Séquence de CRC 411 DLC (de 0 à 8) r0 (réserve) IDE en CAN 2.0A r1 en CAN.0B (réserve) Suite IDE SRR Première partie de lidentifieur Lexique : SOF : Start of frame EOF : End of frame (7 bits Récessif) RTR : Remote Transmission Request ACK : Acknowledge CRC : Cyclic Redundancy Code DLC : Data Length Code SRR : Substitute Remote Request IDE : IDentifier Extension de lidentifieur Identifieur CAN 2.0A Identifieur CAN 2.0B D RTR est dominantLongueur du champ de données fixé par DLC, en nombre d'octets

39 39 Trame de requête Identique Trame de données sauf RTR RTR mis à Récessif Longueur données à 0 DLC ajusté sur le nombre doctets de données à retourner La trame de donnée est prioritaire sur la trame de requête de même identifieur Application Liaison Physique tramedonnées SOFIdentifieurCdeCRCACKEOF Bit RTR Etat D pour une trame de données Etat R pour une trame de requête DLC ajusté sur le nombre doctets de données à retourner

40 40 Trame derreur La trame ne comprend que 2 champs champ Drapeau derreur «active» ou «passive» 1 délimiteur - 8 bits récessifs Les drapeaux derreur transgressent la loi du bit stuffing (6 à 12 bits dominants en erreur active) Application Liaison Physique trameerreur Drapeau derreurDélimiteur du champ Champ de trame derreur Intertrame Trame en cours de diffusion 6 à 12 bits D en erreur active 6 à 12 bits R en erreur passive 8 bits R

41 41 Trame de surcharge La trame ne comprend que 2 champs champ «flag» de surcharge (OLF) Le champ de surcharge est composé de 6 bits dominants 1 champ délimiteur - 7 bits récessifs Le champ de surcharge transgresse la loi du bit stuffing Application Liaison Physique tramesurcharge Champ de surchargeDélimiteur du champ Champ de surcharge Intertrame 6 bits D7 bits R

42 42 Période d intertrame Les trames Données et Requête sont précédées par une période dintertrame Les trames Erreur et Surcharge ne sont pas précédées par une période dintertrame La période est composée de 2 ou 3 champs Champs: Intermission, Bus Idle et éventuellement Suspend Transmission Application Liaison Physique trameInter-trame

43 Le réseau CAN Traitement des Erreurs Application Liaison Physique erreurs

44 44 Traitement des erreurs Le mécanisme de traitement des erreurs de confinement permet de déterminer si un noeud: Il est utile de connaître à tout moment: nest pas perturbé est peu perturbé est un peu plus gravement perturbé est tellement perturbé quil doit passer «Off» Le type des erreurs La fréquence des erreurs Le niveau de gêne provoqué par les erreurs Le retour à une activité bus sans erreurs Application Liaison Physique erreurs

45 45 Traitement des erreurs Généralités Différents types derreur pouvent se produire Stratégie de traitement et recouvrement des erreurs Détails Technique de détection des erreurs Technique de signalisation des erreurs Technique de recouvrement des erreurs Plan général Application Liaison Physique erreurs Détecter Signaler Agir

46 46 Traitemenent des erreurs Les différents types derreur pouvent se produire: Au niveau de la couche physique erreur de bit: bit altéré erreur de bit stuffing: violation (volontaire ou non) Au niveau du bit trame bit Ack non acquitté (acknowledgement error) Au niveau de la structure de la trame violation de la structure de la trame: erreurs CRC, ACK, EOF, delimiter, overload delimiter. Application Liaison Physique erreurs

47 47 Application des erreurs Application Liaison Physique trameerreur SOFSOF ArbitrageCommandeDonnéesCRCACKEOF Récepteur Erreur bit Erreur stuff-bit Erreur de format Erreur de CRC Erreur bit Erreur stuff-bit Erreur de format Erreur dACK Emetteur Trame de données La gestion des erreurs s'applique sur certains champs, selon les cas

48 48 Erreurs de confinement sur chaque noeud, il y a 2 compteurs distincts : - Transmit error counter - Receive error counter Message transmis ou reçu correctement: - 1 point Message transmis ou reçu en erreur : + 8 points Ce mécanisme est intégré dans le controleur CAN Létat des compteurs induit trois états au niveau du controleur: - Etat «Error active» - Etat «Error passive» - Etat «Bus Off» Les erreurs sont détectées localement, sur chaque nœud Application Liaison Physique erreurs

49 49 Erreurs de confinement Error active Error passive Bus «Off» Reset & configuration REC>127 ou TEC > 127 REC>128 ou TEC > 128 REC>255 «Normal Mode Request» et 128 occurrence de 11 bits successifs / récessifs REC : Receive Error counter TEC : Transmit Error Counter Warning limit: 96 Application Liaison Physique erreurs

50 50 Etat «Error Active» Le noeud émet et transmet normalement Dans le cas où une erreur est détectée, il transmettra un «active error flag» pendant la trame derreur Un interruption «error status» ou «error interrupt» sera générée à la «warning limit» de 96 points sur lun des compteurs Application Liaison Physique erreurs

51 51 Etat «Error Passive» Le noeud émet et transmet normalement Dans le cas où une erreur est détectée, il transmettra un «passive error flag» pendant la trame derreur Application Liaison Physique erreurs

52 52 Etat «Bus Off» Les compteurs derreur ont été remis à 0 observé sur le bus 128 occurrences de 11 bits récessifs chacun (128 messages dont les bits Acknowledge delimiter + EOF + intermission se sont déroulés correctement) Le noeud cesse démettre et de transmettre normalement Les drivers de ligne sont électroniquement déconnectés du bus Un retour en état «Error active» est possible automatiquement aux conditions suivantes: Application Liaison Physique erreurs 713 Ack EOF Inter-Trame = 11 bits récessifs successifs Sans bits stuffing Trame de données

53 53 Détection des erreurs Bit en erreur (bit error) Si un bit émis récessif est relu dominant par lémetteur, alors il y a erreur de bit, sauf dans les cas suivants: - pendant la phase darbitration (perte darbitrage) Application Liaison Physique erreurs

54 54 Nominal Bit Time Segment de synchronisation Segment de temps de propagation Phase segment 1Phase segment 2 NBT - Nominal Bit Time (durée nominale du bit) Point d'échantillonage 8 < Nombre total de Time Quanta (contenu dans le Bit Time) < 25 1 Time Quantum (fixe) 1 à 8 Time Quanta Information Processing Time Inférieur ou égal à 2 Time Quanta Inférieur ou égal à Phase segment 1 + IPT Application Liaison Physiquebit

55 55 Resynchronisation bit Application Liaison Physiquebit S propagationSeg phase 1 S Point d'échantillonnage SS SS Bus au repos, état récessif Etat dominant Durée Nominale du bit t(bit) – Nominal Bit Time Du signal incident présent sur le bus Provenant par exemple d'un autre noeud e = 0 e < 0 d'où Seg Phase 2 va raccourcir e > 0 d'où Seg Phase 1 va rallonger Un nominal bit time = Un nominal bit time > Un nominal bit time < Seg phase 2 Du fait des tolérances de son propre oscillateur local, il se peut que le nœud ait :

56 56 Resynchronisation bit Application Liaison Physiquebit RJW Pour une raison ou pour une autre le flanc peut tomber là (cas N°2) ou là (cas N°1) S propagationSeg phase 1Seg phase S propagation Seg phase 1 Seg phase e>RJW d'où le segment Phase 1 va se rallonger d'une quantité égale à RJW 1er cas 2e cas RJW Phase 1Phase 2 e > 0 Synchro prévue Bit récessif Point d'échantillonnage Bit dominantPoint d'échantillonnage Bit dominant Point d'échantillonnage

57 Intel Présentation du Composant CAN

58 58 Le CPU Interface logic Les registres du RAM ClkOut CAN Controller Port 1Port 2 TX0 TX1 RX0 RX1 CLK E/S adresse données CAN + CAN - Tx Rx En Architecture du intel

59 59 Les registres du Control Status CPU Interface Reserve High Speed Global mask Std Global Mask Ext Message 15 Mask Message 1 ClkOut Message 2 Bus Configuration Message 3 Bit Timing rgt 0 Message 4 Bit Timing rgt 1 Message 5 Interrupt Message 6 Reserve Message 7 Reserve Message 8 Reserve Message 9 P1 configuration Message 10 P2 configuration Message 11 P1 In Message 12 P2 In Message 13 P1 Out Message 14 P2 Out Message 15 Control 1 Arbitration 0 Arbitration 1 Arbitration 2 Arbitration 3 Msg configuration Data 0 Data 1 Data 2 Data 3 Data 4 Data 5 Data 6 Data 7 Control F 20 2F 30 3F 40 4F 50 5F 60 6F 70 7F 80 8F 90 9F A0 AF B0 BF C0 CF D0 DF E0 EF F B 0C-0F Serial reset adr. FF A +0B +0C +0D +0E 255 registres 15 messages objets 1 message parmi 15

60 60 Les registres du CONTROL 0CCE00EIESIEIEInit CCEChange Rgt EIESur change Error status Rgt SIESur change Status Rgt IESur EIE + SIE + RxOK et TxOK (IE message) Initen lecture Init faite Application Liaison Physique Composantregistres Registre généralCONTROL

61 61 Les registres du STATUS BoffWarnWakeRxOKTxOKLEC2LEC1LEC0 Boffen Bus Off WarnSi limite error 96 Wake sur réception Msg ou ecriture par uP RxOKMsg reçu sans erreur TxOKMsg transmis sans erreur LECErreur0 OK1 Stuff2 Form3 Ack 4 Bit1 (R/D)5 bit0 (D/R)6 CRC7 nc Application Liaison Physique Composantregistres Registre généralSTATUS

62 62 Les registres du INTERFACE RstSTDSCDMCPwDSleepMUX0Cen RstStreset hard écrit par 527 DSCSCLK <- XTAL ou XTAL/2pour bit timing DMCMCLK <- XTAL ou XTAL/2pour CPU PwDPour mode Power Down SleepPour mode sleep MUXVCC/2 en low speed ou INT vers CPU CenClockOut enable Application Liaison Physique Composantregistres Registre généralINTERFACE

63 63 Les registres du Global Mask – Standard register ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 Réservé ID11-ID0Masque standard CAN 2.0 A Registre généralMasque registre standard Application Liaison Physique Composantregistres

64 64 Filtrage Message 11 Message 10 Message 9 Message 8 Message 7 Message 6 Message 5 Message 4 Message 3 Message 2 Message 1 Message 14 Message 13 Message 12 Message 15 Masque Global SOFIdentifieur Cde RTR Message non retenu 1Le bit est retenu pour la comparaison 0 Le bit nest pas significatif Exemple : Trame Masque accepté rejeté

65 65 Les registres du BGlobal Mask – Extended register ID28 ID27 ID26 ID25 ID24 ID23 ID22 ID21 ID20 ID19 ID18 ID17 ID16 ID15 ID14 ID13 ID12 ID11 ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 Réservé ID28-ID0Masque standard CAN 2.0 B sur 29 bits A 0B Registre généralMasque registre étendu Application Liaison Physique Composantregistres

66 66 Les registres du C-0FMessage 15 Mask Register ID28 ID27 ID26 ID25 ID24 ID23 ID22 ID21 ID20 ID19 ID18 ID17 ID16 ID15 ID14 ID13 ID12 ID11 ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 Réservé ID28-ID0Masque standard CAN 2.0 B sur 29 bits 0C 0D 0E 0F Registre généralMasque registre 15 Application Liaison Physique Composantregistres

67 67 Les registres du FCLKOUT 00SL1SL0CDv3CDv2CDv1CDv0 SL0selon Clkout00>24MHz01 de 16 à 24 MHz SL110 de 8 à 16MHz11<8MHz CDVClkOut division de XTAL de 0 à 15 Application Liaison Physique Composantregistres Registre généralCLKOUT

68 68 Les registres du FBUS CONFIGURATION 0CoByPol0DcT10DcR1DcR0 CoByComparator byPass PolPolarity Recessive/Dominant Dct1Disconnect Tx1 DcR1Disconnect Rx1 DcR0Disconnect Rx0 Application Liaison Physique Composantregistres Registre généralBUS CONFIGURATION

69 69 Les registres du FRegistre Bit Timing 0 SJW1SJW0BRP (6 bits) SJWResynchronisation Jump Width (de 0 à 3) Cest le nombre de tq que le bit time sera rallongé ou raccourci en resynchronisation BRPBaud Rate Prescaler (0 à 63) tq = t SCLK * (BRP + 1) 4FRegistre Bit Timing 1 Spl (1 bit)TSEG2 (3 bits)TSEG1 (4 bits) SplSampling Mode 0 = 1 sampling (fast) 1 = 3 sampling (si parasité) TSEG12 à 15 tq TSEG21 à 7 tq Application Liaison Physique Composantregistres Registre généralBIT TIMING Seg SynchroSeg Propag.Seg Phase 1Seg Phase 2 Nominal Bit Time Point d'échantillonage t Sync t Seg1 t Seg2 Nominal Bit Time 1 tq Time Quanta Point d'échantillonage

70 70 Les registres du FINTERRUPT Source Interrupt0 : No1 : Status 2 : Msg 153 à 10h : N° Msg+2 9F AFPORT CONF 1OUT 0IN BF CFPORT IN Lit le bit 1 high0 low DF EFPORT OUT Ecrit le bit1 high0 low Application Liaison Physique Composantregistres Registre généralINTERRUPTIONS

71 71 Les registres du Fréquence Bus CAN = XTAL frequency / [ (DSC+1) * (BRP+1) * (SJW + TSEG1 + TSEG2 )] Exemple : XTAL=16 MHzDSC=1BRP=10 SJW=2 (+1 hard)TSEG1 = 4 (+1 hard)TSEG2 = 1 (+1 hard) SCLK = XTAL / (DSC +1)=>16 MHz / 2 = 8 MHz=>t SCLK = 125ns tq = t SCLK * (BRP+1)=>tq = 125ns * 11 =>tq = 1,375 us Nominal Bit Time => Nbt = 1.375us * (5+2+3)=>Nbt = 10,375 us = >soit 72,727 Kbit/s Autres exemples : Pour 1,6 MHz (maximum CAN)=> 8MHz / 5 soit BRP=0 et DSC=1 et SJW=0 et TSEG1=2 et TSEG2=1 doù tprop=2*tq maxi soit 1,25us Pour 1 MHz => 8MHz / 8 soit BRP=0 et DSC=1 et SJW=0 et TSEG1 = 3 et TSEG2 = 2 règles : t TSEG2 >= 2tq t TSEG2 >= t SJW t TSEG1 >= 3tq t TSEG1 >= t SJW + tprop pour 3 échantillonages :t SEG1 >= t SJW + tprop + 2tq Application Liaison Physique Composantregistres

72 72 Les registres du Application Liaison Physique Composantregistres Control 1 Arbitration 0 Arbitration 1 Arbitration 2 Arbitration 3 Msg configuration Data 0 Data 1 Data 2 Data 3 Data 4 Data 5 Data 6 Data 7 Control A +0B +0C +0D +0E 1 message parmi messages objets identiques SOFIdentifieurCdeDonnéesCRCAckEOF Trame de données RTR APPLICATION

73 73 Les registres du CONTROL 0 MsgVal (2 bits) TxIE (2) RxIE (2) IntPd (2) MsgValMessage object valid for transactions TxIEInt allowed when succesfull transmission (IE must be set) RxIE « « « « reception (IE must be set) IntPndInterrupt pending - The CPU must clear this bit Application Liaison Physique Composantregistres Registre MessageCONTROL 0 MSBLSB Ecriture00Interdit 0 1Reset (0) 10Set (1) 11 Inchangé Lecture01Reset (0) 1 0Set (1) Plus facile pour changer certains bits sans altérer les autres

74 74 Les registres du CONTROL 1 RmtPnd (2)TxRqst (2) MsgLst (2) NewDat (2) /CpuUpd RmtPndRemote Pending - Trame remote en cours denvoi Seulement géré par msg object en transmit - le trame remote est en construction TxRqstTransmit request Set by the cpu to transmit a msg reste actif tant que le message na pas été transmis. Pour transmettre 1 Init Bit=0 2 MsgVal = 0 3 Direction=transmission 4 NewDat=1 5 TxRqst=1 Si direction=reception, on envoie une trame remote MsgLstMessage Lost. Seulement en reception. Le message précédent a été réécrit. CpuUpdCPU Updating valide pour émission seulement. Protège de la transmission dune réponse remote pendant la mise à jour des données par le CPU. Positionné par CPU. NewDat82527 or CPU a écrit des nouvelles données ds le msg Application Liaison Physique Composantregistres Registre MessageCONTROL 1

75 75 Les registres du à +05Arbitration registers ID28 ID27 ID26 ID25 ID24 ID23 ID22 ID21 ID20 ID19 ID18 ID17 ID16 ID15 ID14 ID13 ID12 ID11 ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 Réservé ou ID10-ID0Masque standard CAN 2.0 A sur 11 bits ou ID28-ID0Masque standard CAN 2.0 B sur 29 bits Registre MessageArbitration ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 Réservé Réservé Application Liaison Physique Composantregistres

76 76 Les registres du Data 0 Data 1 Data 2 Data 3 Data 4 Data 5 Data 6 Data Application Liaison Physique Composantregistres Registre MessageDONNEES + 07 à + 14 DATA Data 0 à +7 to Data 7 à +14 SOFIdentifieurCdeDonnéesCRCAckEOFRTR DLC Data Length Code Registre Message configuration

77 77 Les registres du MESSAGE CONFIGURATION DLC (4 bits)Dir Xtd reseved (2 bits) DLC Longueur du message DirDirection : 1When TxRqst is set -> transmission Direction : 0When TxRqst is set -> Remote frame transmission XtdStandard or Extended msg Application Liaison Physique Composantregistres Registre MessageCONFIGURATION

78 Merci de votre attention Fin de présentation Patrick MONASSIER Université Lyon 1 France


Télécharger ppt "Présentation CAN Controller Area Network Patrick MONASSIER Université Lyon 1 France."

Présentations similaires


Annonces Google