Hallo, ich versuche nun seit einer Woche, eine einfache CAN-Kommunikation zwischen zwei Evaluation Boards vom Typ EK-TM4C123GXL (http://www.ti.com/tool/ek-tm4c123gxl) von TI mithilfe ihrer eingebauten CAN-Controller und CAN-Transceivern vom Typ MCP2562 herzustellen. Den Schaltplan habe ich angehängt (aus Versehen sogar doppelt, Entschuldigung). Als Programme verwende ich die von TI im TivaWare-Paket enthaltenen CAN-Beispielprogramme simple_tx.c und simple_rx.c, die im Original angehängt sind. Die Zeile für das dynamische Interrupt-Vectoring habe ich jeweils aktiviert, der Interrupt-Handler wird auch ausgeführt (daran erkennbar, dass das Flag bei empfangener Nachricht gesetzt wird, das eine Ausgabe auf der seriellen Schnittstelle zur Folge hat). Ansonsten habe ich an der angehängten Datei nichts verändert. Die Pinbelegung stimmt mit meinem Aufbau überein (PB5 als TX, PB4 als RX). Die Abschlusswiderstände von 120 Ohm habe ich eingesetzt. Mein Problem ist, dass der Sender ständig Nachrichten sendet. Der Empfänger empfängt auch Nachrichten, liest aber nur Nullen ein. Ich habe verschiedene Tests an der Hardware durchgeführt, alle ohne Ergebnis. Beispielsweise habe ich TX und RX am Sender mit einem Oszilloskop gemessen. Die Verläufe stimmen überein, wie es sein sollte, da ja nur ein Board sendet. Ein Kollege hat mit einem Logic-Analyzer die verläufe von RX und TX am Empfänger-Board gemessen, dekodiert und die korrekten Daten ausgelesen. Das Herabsetzen der Bitrate war ebenfalls wirkungslos. Ich habe jetzt das Gefühl, dass möglicherweise ein Problem mit der Software vorliegt. Kann mir jemand helfen? Ich bin für jede Anregung dankbar. Mit freundlichen Grüßen, Etienne
Etienne schrieb: > Ein Kollege hat mit einem Logic-Analyzer die verläufe von RX und TX am > Empfänger-Board gemessen, dekodiert und die korrekten Daten ausgelesen Habt ihr denn das ack-bit vom Empfänger gesehen? Wenn nein, wäre das schonmal eine Erklärung für das dauernde senden..
Ja, wenn das Empfänger-Board eingesteckt ist, sendet es das ACK Bit.
Es handelt sich um einen Bug in der TivaWare-API v2.1.3.156. Siehe auch https://e2e.ti.com/support/microcontrollers/tiva_arm/f/908/p/551204/2013754
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.