CAN LPC 1768 struct array

Gast #2196544
Lesenswert?
• ▲
▼
Hallo,

Habe ein kleines Problem mit dem weiterverarbeiten von CAN Daten.
Diese lege ich in einem struct ab der in etwa so aussieht:

typedef struct
{
uint32_t Frame;
uint32_t MsgID;
uint32_t DataA;
uint32_t DataB;
} CAN_MSG;

Mit dem senden und empfangen der Daten habe ich keine Probleme.
Diese Daten die empfangen werden sollen nun irgendwie in ein Array[40] 
gelegt werden.
Dann wird das ganze per USB versendet. Und der Array inhalt gelöscht.

Hab mit struct und array noch nicht zumindest in Verbinding der beiden 
gearbeitet wäre also dankbar für einen kleinen Denkanstoß.


MfG
Gast #2196628
Lesenswert?
• ▲
▼
Dachte eigentlich eher in diese Richtung:

Ich lege mir ein Array an:

CAN_MSG Massage_Buffer[40];


Die frage ist jetzt nur wie ich es möglichst geschickt anstelle, dass 
ich immer wenn eine CAN Botschaft ankommt diese im nächten Bereich des 
Arrays gespeichert wird. Also mit for Schleife ginge das aber das bringt 
mir irgendwie nichts, weil ich den Prozessor nicht die ganze Zeit in der 
Schleife rumlungern lassen kann, weil der auch noch andere Sachen zu tun 
hat...
Gast #2196772
Lesenswert?
• ▲
▼
In Deinem Fall "Index". Man kann das Ganze aber auch über Pointer 
implementieren. Ein Flag kennt im allgemeinen nur zwei Zustände.

Das was Du da baust ist im Prinzip eine Warteschlange bzw Queue. Eine 
Ringpuffer (ring buffer, circular buffer) ist spezielle Variante einer 
solche Warteschlange.
Wenn Du mal nach diesen Begriffen suchst, wirst Du jede Menge Infos dazu 
finden.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.