Forum: Mikrocontroller und Digitale Elektronik Errorframes beim Einschalten AT90CAN128 und ATA6660


von Martin (Gast)


Lesenswert?

Hallo

Beim Einschalten der Spannungsversorung meines Laboraufbaus empfange ich 
bis zu 80 ErrorFrames.
Im µC ist die CAN Unit aber in einem listen only mode. Woher kommen die 
Botschaften?

Nützt es etwas den CAN Transiever über einen Pull up in den Standby mode 
zu zwingen und erst später über einen µC Port in Normal mode zu 
schalten?

Gruß Martin

von Harald A. (embedded)


Lesenswert?

Ich kenne das Problem, wenn die TX-Leitung nicht über einen Pull-Up am 
µC angeschlossen ist. Dann nämlich wird bis zur Portinitialisierung ein 
dominanter 0-Pegel am Bus erzeugt, was die übrigen Busteilnehmer krumm 
nehmen.

von Martin (Gast)


Lesenswert?

Ich hab jetzt mal einen 10k Pullup am Tx Pin des µC eingelötet. Es sind 
jetzt deutlcih weniger Error Frames, aber es sind noch welch da.

Sind 10k zu viel oder zu wenig?

Gruß Martin

von Peter D. (peda)


Lesenswert?

Soweit ich weiß, ist Hot Plugging für den CAN-Bus nicht spezifiziert.
Du suchst also nach einer Eigenschaft außerhalb der Spezifikationen.


Peter

von Harald A. (embedded)


Lesenswert?

10k sollten OK sein.

Was machst Du direkt nach dem Einschalten VOR dem CAN-Init. Evtl. 
IO-Port auf Ausgang und dann einen Low-Pegel initialisieren?

Ideal wäre es, die Einschaltphase mit einem Scope am TX Pin zu 
beobachten. Vor der ersten CAN-Message darf da kein Low-Pegel 
erscheinen.

von Martin (Gast)


Lesenswert?

Guten Morgen

Problem gelöst. Pull up 10k an TX Pin und beim Starten direkt nach dem 
Port Init das Can Init dann erst Uart I²C...

Es bleiben zwar noch 1-2 µs bis der Pin einen definierten Pegel hat. 
Diese wird aber vom Transiever verschluckt.

Gruß Martin

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.