Forum: Mikrocontroller und Digitale Elektronik mcp2551 + standby-mode


von heinz05 (Gast)


Lesenswert?

hallo,

ich habe eine kleine can-anwendung, bei dem ich bis jetzt einen sender 
und einen empfänger habe. da aber nicht laufend daten gesendet werden, 
wollte ich den mcp2515 und den mcp2551 solange in den sleep schicken.

das funktioniert auch paarmale hintereinander aber dann ist schluss (ca. 
10 bis 20mal). ich habe den mcp2515 wakeup-interrupt aktiviert, auf den 
ich dann auch reagiere. als mcu benutzte ich einen atmega48.
den RS-Pin des mcp2551 habe ich dirket auf einen Ausgang des atmega48 
gelegt. wenn also nun länger nix empfangen wird, wird dieser PIN auf 5V 
gelegt und über SPI der mcp2515 in den sleep geschickt.
Wird nun wieder was empfangen (Interrupt wurde vom mcp2515 ausgelöst) 
wird dieser wieder in den Normal-Modus gesetzt und ich setze den RS-Pin 
auf 0V.
Als Clock habe ich ein 16MHz Quarz.

Wird weder der mcp2515 noch der mcp2551 in sleep versetzt, so 
funktioniert meine Anwendung einwandfrei.
Kann das evt. ein Timing-Problem sein, dass ich von der mcu zu langsam 
reagiere? Die Can-Botschaften werden alle 2ms versendet (immerr 20 
hintereinander).
Ich habe auch bei meinem Sender das EFLG des mcp2515 ausgelesen. Da ist 
dann das TXWAR und das EWARN gesetzt. Ich denke, dass das irgendwann, 
wenn der TX-Zähler zu hoch wird, zum BUS-OFF kommt..

Kann mir evt. da jemand weiterhelfen, an was das liegen könnte?

mfg

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.