kan berichten frame datalink laag componenten en functies

Jun 19, 2025 Laat een bericht achter

1. Overzicht van het CAN-protocol


1.1 Oorsprong en ontwikkeling van het CAN-protocol


Het CAN-protocol werd voor het eerst voorgesteld door het Duitse Bosch-bedrijf in 1983, met als doel de communicatieproblemen in het elektronische systeem van auto's op te lossen. Met de ontwikkeling van technologie wordt het CAN-protocol geleidelijk op grote schaal gebruikt in industriële besturing, medische apparatuur, smart home en andere gebieden.


1.2 Kenmerken van het CAN-protocol


CAN-protocol heeft de volgende kenmerken:

 

  • Multi-masterbesturing: het CAN-protocol ondersteunt meerdere knooppunten om tegelijkertijd te communiceren, wat de real-tijd en betrouwbaarheid van het systeem verbetert.
  • Broadcast-communicatie: het CAN-protocol gebruikt de broadcast-methode voor communicatie, alle knooppunten kunnen de verzonden gegevens ontvangen.
  • Niet-destructieve arbitrage: wanneer twee of meer knooppunten tegelijkertijd gegevens verzenden, zorgt het CAN-protocol voor de juiste overdracht van gegevens via een arbitragemechanisme.
  • Foutdetectie en -afhandeling: Het CAN-protocol beschikt over foutdetectie- en -afhandelingsfuncties, die fouten in het communicatieproces tijdig kunnen detecteren en afhandelen.

 

2. Componenten van CAN-berichtenframe


Het CAN-berichtframe is de meest elementaire datatransmissie-eenheid in het CAN-protocol en de componenten ervan zijn als volgt:


2.1 Framestartbit


De framestartbit is de eerste bit van het berichtenframe en wordt gebruikt om het begin van het berichtenframe te identificeren.

 

2.2 Arbitrageveld

 

Het arbitrageveld wordt gebruikt om prioriteit te geven aan de te verzenden gegevens. In het CAN-protocol is de lengte van het arbitrageveld 11 of 29 bits, wat respectievelijk overeenkomt met standaard en uitgebreide frames. Hoe kleiner de waarde van het arbitrageveld, hoe hoger de prioriteit.

 

2.3 Controleveld

 

Het besturingsveld bestaat uit het Remote Transmission Request (RTR)-bit en het Identifier Extension-bit (IDE). Het RTR-bit wordt gebruikt om te identificeren of het dataframe een extern frame of een dataframe is, en het IDE-bit wordt gebruikt om te identificeren of het frame een standaardframe of een uitgebreid frame is.

 

2.4 Gegevensveld

 

Het gegevensveld wordt gebruikt om de daadwerkelijk verzonden gegevens op te slaan. De lengte van het gegevensveld is 0-8 bytes voor standaardframes en 0-64 bytes voor uitgebreide frames.

 

2.5 Controleer veld

 

Het controlesomveld bestaat uit de cyclische redundantiecontrole (CRC) en het CRC-scheidingsteken, dat wordt gebruikt om te detecteren of er een fout in de gegevens zit tijdens de verzending, en het CRC-scheidingsteken, dat het einde van de CRC-controlesom identificeert.

 

2.6 Antwoordveld

 

Het antwoordveld bestaat uit een antwoordslot en een antwoorddefinitie. Het antwoordslot wordt gebruikt om een ​​antwoord van een knooppunt te ontvangen en de antwoordbepaler identificeert het einde van het antwoordveld.

 

2.7 Einde-van-framebit

 

Het einde-van-framebit is het laatste bit van een berichtframe en wordt gebruikt om het einde van het berichtframe te identificeren.

 

3. Functies van de datalinklaag


De datalinklaag is de tweede laag in het OSI-referentiemodel, die voornamelijk verantwoordelijk is voor de betrouwbare overdracht van gegevens bovenop de fysieke laag. De functies van de datalinklaag omvatten:


3.1 Framesynchronisatie


Framesynchronisatie is een van de basisfuncties van de datalinklaag, die wordt gebruikt om ervoor te zorgen dat verzendende en ontvangende knooppunten het begin en einde van een informatieframe correct kunnen identificeren.


3.2 Foutcontrole


Foutcontrole is een andere belangrijke functie van de datalinklaag, waaronder foutdetectie en foutcorrectie. Het CAN-protocol maakt gebruik van cyclische redundantiecontrole (CRC) voor foutdetectie om de gegevensintegriteit te garanderen.


3.3 Stroomregeling


Flow control wordt gebruikt om te voorkomen dat een verzendend knooppunt gegevens te snel verzendt zodat een ontvangend knooppunt deze niet kan verwerken. De datalinklaag zorgt voor betrouwbare datatransmissie door de snelheid te regelen waarmee gegevens worden verzonden.


3.4 Toegangscontrole


Toegangscontrole is een andere belangrijke functie van de datalinklaag die wordt gebruikt om de communicatie tussen meerdere knooppunten te coördineren. In het CAN-protocol wordt toegangscontrole gerealiseerd via een niet-destructief arbitragemechanisme om de juiste overdracht van gegevens te garanderen.
 

4. Toepassing van CAN-berichtframes in de datalinklaag


4.1 Framesynchronisatie


In CAN-berichtframes worden de framestartbit en de frameeindbit gebruikt om framesynchronisatie te bereiken. Het verzendende knooppunt identificeert het begin van het berichtenframe door het framestartbit te verzenden, en het ontvangende knooppunt synchroniseert het frame door het detecteren van het framestartbit.


4.2 Foutcontrole


De CRC van het controlesomveld wordt gebruikt voor foutcontrole in het CAN-berichtframe. Het verzendende knooppunt genereert een CRC op basis van de gegevens en voegt deze toe aan het gegevensveld voordat de gegevens worden verzonden. Na ontvangst van de gegevens herberekent het ontvangende knooppunt de CRC-controlesom en vergelijkt deze met de ontvangen CRC-controlesom om eventuele fouten in de gegevens te detecteren.


4.3 Stroomregeling


In het CAN-protocol wordt de stroomcontrole voornamelijk gerealiseerd via een arbitragemechanisme. Wanneer twee of meer knooppunten tegelijkertijd gegevens verzenden, bepaalt het CAN-protocol de prioriteit via het arbitragemechanisme om de betrouwbare overdracht van gegevens te garanderen.


4.4 Toegangscontrole


In het CAN-protocol wordt toegangscontrole hoofdzakelijk gerealiseerd via het niet-destructieve arbitragemechanisme. Wanneer twee of meer knooppunten tegelijkertijd gegevens verzenden, bepaalt het CAN-protocol de prioriteit van de verzonden gegevens door de waarde van het arbitrageveld te vergelijken. Het knooppunt met een hogere prioriteit kan doorgaan met het verzenden van gegevens, terwijl het knooppunt met een lagere prioriteit moet wachten totdat het knooppunt met de hogere prioriteit klaar is met het verzenden van gegevens.

Aanvraag sturen

whatsapp

Telefoon

E-mail

Onderzoek