hallo, bin noch recht unerfahren im Umgang mit Mikrocontrollern. Vorallem mit den sleep-modi habe ich mich vorher noch nie beschäftigt. ich würde gern den avr mit einer eingehenden Can-Nachricht wecken. Ich hab gelesen, dass es geht (richtig?), nur werde ich aus der Tabelle auf S.48 im Datenblatt des At90Can128 nicht schlau. Da stehen die entsprechenden wake-up-sources für die einzelnen sleep modi. unter welche source fällt denn eine can-nachricht, oder: welchen sleep-mode kann ich mit einer can-botschaft beenden?? gruß andreas
Gast
#715336
Hi! Das, was Du suchst, ist so ohne weiteres nicht möglich. Der interne CAN-Controller hat keine Möglichkeit, die CPU aufzuwecken. Soll ein WakeUp denn nur bei einer bestimmten Botschaft erfolgen, oder bei jeder beliebigen? Für letzteres würde ich den RX-PIN des CAN-Transceivers zusätzlich auf einen der externen Interrupteingänge legen und diesen als WakeUp-Source konfigurieren. mng
Gast
#715338
Jeder anständige CAN-Transceiver hat einen sleep-Modus und kann bei eingehenden Nachrichten auch einen wake-Interrupt (Flanke an einem seiner Pins) auslösen. Die erste Nachricht wirst du so aber verpassen, da der Transceiver ein paar µs braucht, bis er aufgewacht ist.