Hallo zusammen, ich versuche derzeit die CAN Kommunikation auf dem AT32UC3C1512C aufzubauen. Mit Hilfe der Software Beispiele aus dem ASF konnte ich mein Programm aufbauen. Inzwischen bin ich soweit, dass mein µC die CAN Signale sendet, allerdings erhalte ich diese Daten nicht. Ich nutze einen CAN BUS Analyzer von Microship und erhalte dort im listening mode die Nachrichten. Allerdings wird mir nur die ID der CAN Nachricht angezeigt. Die eigentlichen Daten kommen nicht an und werden dauerhaft als 0x00 angezeigt. Woran könnte das liegen? Ich habe meinen Quellcode einmal angefügt. Meine Softwareumgebung ist das Atmelstudio 6.2. Ich nutze den PCA82C250 CAN Transceiver, welcher an den PINs PC00 und PC01 des µC angeschlossen ist. Liebe Grüße
Carsten B. schrieb: > Ich nutze einen CAN BUS Analyzer von Microship und erhalte dort im > listening mode die Nachrichten. Im Listen-Only-Mode sendet ein CAN-Knoten kein ACK-Bit. Der CAN-Bus braucht aber immer mindestens einen Teilnehmer der das ACK-Bit sendet sonst geht der Sender irgendwann in den Error-Mode.
Das ACK-Bit müsste dann doch eigentlich von meinem Mikrocontroller gesendet werden oder? Den genutzten Can Channel 1, der fürs Senden der Nachrichten genutzt wird, befindet sich im Normal Mode. Der Can Analyzer dient nur Als Gegenstück, um die Kommunikation zu testen.
Carsten Bindig schrieb: > Das ACK-Bit müsste dann doch eigentlich von meinem Mikrocontroller > gesendet werden oder? Ich kenne jetzt deinen Aufbau nicht genau, aber ein CAN-Bus braucht immer mindestens zwei aktive Teilnehmer, Listen-Only zählt nicht. Das ACK wird nicht vom Sender gesendet sondern von einem anderen Teilnehmer am Bus welcher nicht Listen-only sein darf. ACK ist für den aktuellen Sender ein Zeichen dass ihm überhaupt jemand zuhört. Kommt das Bit nicht, legt der Sender einen TX-Fehler ab und schaltet sich irgendwann ab.
Das ergibt eigentlich Sinn. Trotzdem empfängt mein CAN Analyzer von der Nachricht zumindest die ID. Wenn ich ihn in den Normalmode wechsel, wird mir gar nichts mehr angezeigt...
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.