Forum: Mikrocontroller und Digitale Elektronik Angabe Empfangspuffer


von Pnubbi (Gast)


Lesenswert?

Hi,
es geht um diesen Controller: 
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010406

Dort ist angegeben, dass es 2 Rx Puffer gibt. Auch im Datenblatt habe 
ich nicht genau gefunden, was das bedeutet. Können 2 Nachrichten (je 
eine CAN-Nachricht, also 8 Byte, pro Puffer) gespeichert werden? Oder 
bedeutet 1 Puffer, dass mehrere Nachrichten reinpassen? Dann würde mir 
die Größenangabe fehlen, wie viel rein passt....

von Wolfgang A. (Gast)


Lesenswert?

Pnubbi schrieb:
> Dort ist angegeben, dass es 2 Rx Puffer gibt. Auch im Datenblatt habe
> ich nicht genau gefunden, was das bedeutet.

Es gibt sogar drei Receive Buffer. Im Datenblatt Fig 1-3 "CAN buffers 
and protocol engine block diagramm" ist dargestellt wie die 
zusammenhängen und welche Filterkriterien gelten. Im Kapitel 4.1 
"Receive Message Buffering" ist das noch mal beschrieben.

von Pnubbi (Gast)


Lesenswert?

Ich bin mir nicht absolut sicher, aber es geht um zwei NACHRICHTEN á 8 
BYTE, die gepuffert werden können.

Mir macht es ein wenig Probleme, dass ich nicht erkennen kann, bis zu 
wie viele Frames ich in einer Sekunde sicher lesen kann.

Momentan verwende ich diese Bibliothek: 
https://github.com/franksmicro/Arduino/tree/master/libraries/MCP2515

Funktioniert auch ganz gut. Wenn ich aber zu viele Nachrichten zu 
schnell hintereinander versende (oder alternativ in der Loop-Routine 
noch andere Dinge mache) kommen einige nicht an. Der Puffer wird schon 
überschrieben, bevor die Nachrichten ausgelesen werden können.

Ich kann diesen Schwund nicht kontrollieren und ich kann auch leider 
keine "Grenzfrequenz" angeben, bis wie viel Nachrichten/s ich sicher 
empfangen kann.

Was wäre eine gute Strategie um das Problem zu lösen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.