Hallo Community, habe im moment zwei at90can über can_h und can_l miteinander verbunden und greife dieses signal über ein cancase xl ab. habe die universelle can-bibliotehk implementiert und wollte nun eine testnachricht von uC1 an uC2 verschicken, damit bei erfolgreichem empfang eine LED zu blinken beginnt. Leider bekomme ich nur ein Errorframe. Woran kann das liegen? Ich freue mich auf eure Antworten
Da wurde auf beiden boards ein Jumper gesetzt. Daran kann es schonmal nicht liegen.
Fehler2.png zeigt den virtuellen CAN. CANcaseXL dürfte der Reale sein. Wenn das Problem weiterhin besteht, erstemal mit einer kleinere Bitrate anfangen, z.b. 125k. Ansonsten mal mit dem Osziloskop schauen, was real auf dem Bus los ist.
Kleinere Bitrate bringt leider auch nichts. Es wäre doch theoretisch auch möglich, was von CANoe an meine Mikrocontroller zu senden oder? Wenn ja wie?
Hab kein CANoe. Einer deiner Knoten scheint ja zu senden. Ggf. den anderen im Reset halten. Solange du die Nachricht nicht empfängst, nützt dir das Senden auch nichts. Falls es nicht so rüberkam: Die kleinere Bitrate muss natürlich bei allen Beteiligten eingestellt sein. Wenn deine Jumper wirklich die Terminierung sind, ist es bei dieser Konstellation selten der Aufbau selbst, der das Problem ist. Eher: - falsche Bitrate deiner Controller, z.B. weil der Eingangstakt schon nicht der Erwartete ist. - CAN-H und CAN-L vertauscht?
Die Bitrate ist bei beiden gleich gesetzt. Da ich langsam matschig in der Birne werde, eine generelle Verständnisfrage um wirklich sicher zu gehen, dass der HW Aufbau i.O. ist: Muss ich für high und low je eine verdrillte zweidrahtleitung nehmen oder genügt es wenn ich aus einem paar ein draht für high und ein draht für low nehme (letzteres habe ich so umgesetzt) ?
marshall schrieb: > Die Bitrate ist bei beiden gleich gesetzt. 2 Controller und ein Analyzer sind 3, die übereinstimmen müssen. Möglich, dass die beiden Controller aufgrund eines Fehlers gleich falsch eingestellt sind. Dann würden die sich verstehen, aber der Analyzer stört das ganze. Vielleicht hat einer auch 'ne Macke (Quarz schwingt nicht an o.ä.). Dann würde dieser das ganze Netz stören. Da hilft dann nur messen. Bekommst Du bei den Controllern einen Fehler? Error Passive, Error Busoff? marshall schrieb: > Muss ich für high und low je eine verdrillte zweidrahtleitung nehmen > oder genügt es wenn ich aus einem paar ein draht für high und ein draht > für low nehme (letzteres habe ich so umgesetzt) ? Je höher die Bitrate, desto höher die Anforderungen. Daher auch der Tipp mit der niedrigeren Bitrate. Da klappts dann auch mit der Wäscheleine. ;-) GND ist nicht notwendig. Aber es stabilisiert unter Umständen das Signal etwas. Aber auch das sieht man ganz gut auf dem Oszi. Sag jetzt nicht, du hast Vector Tools, aber keinen Zugang zu einem Oszi?
marshall schrieb: > Muss ich für high und low je eine verdrillte zweidrahtleitung nehmen > oder genügt es wenn ich aus einem paar ein draht für high und ein draht > für low nehme (letzteres habe ich so umgesetzt) ? Im Labor ist das einigermassen wurst. Zwischen CAN_H und CAN_L sollten sich in Summe 40..180 Ohm befinden (ideal an jedem Ende 120 Ohm, also 60 gesamt). Häng mal einen Teilnehmer dran, von dem Du weisst das er funktioniert. Egal was, hauptsache die Bitrate passt. Wenn Deine beiden selbstgebastelten Knoten aus irgendwelchen Gründen kein Acknowledge senden, kommst Du aus dem Fehlerzustand nie raus. Im CANOoe bei Netzwerk-Hardwarekonfiguration sollte auch erstmal der Haken bei "Acknowledge an" gesetzt sein.
soul e. schrieb: > Wenn Deine beiden > selbstgebastelten Knoten aus irgendwelchen Gründen kein Acknowledge > senden, kommst Du aus dem Fehlerzustand nie raus. Den Acknowledge Fehler habe ich momentan ausgeschlossen, da dieser normalerweise auch als solcher angezeigt wird. Einem Fehler im Error Delimiter -- mmh? Ich nehme an, dieser ist zu kurz. Daraus würde ich schließen, dass die Knoten entweder eine zu hohe Bitrate haben oder ständig resetten.
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.