Hallo Aus dem Datenblatt vom ATMega16 bin ich nicht ganz schlau geworden Laut Datenblatt wird durch die Interrupt Service-Routine "UART_RECV" ein schlafender ATMega16 nicht geweckt. Heißt das, dass die ISR gar nicht ausgeführt wird (Botschaften also nur wieder empfangen werden können, wenn der Controller wieder wach ist) ? Ich möchte mehrere ATMega16 an einem RS485 betreiben und schlafende Controller mittels einer entsprechenden Botschaft wieder wecken. Dank im Voraus
Der ATMega16 hat wie alle neueren AVRs mehrer mögliche Schlafzustände, die sich im Umfang der Abschaltung von Systemeinheiten, dem sich daraus ergebenden Ruhestrom und den Aufweckmechanismen. Das ganze ist eigentlich recht vernünftig im Datenblatt ab Seite 30 beschrieben. Wenn die USART noch empfangen soll, kommt eigentlich nur der Idel-Mode in Frage. Weiterreichende Sleep-Modes lassen sich nicht durch die USART aufwecken. Mit einer Verbindung zwischen dem Rxd-Anschluss und einem externen Interrupteingang könnte man den AVR noch durch externen IRQ aufwecken lassen, aber dann wird er wohl das 1.Zeichen nicht sauber emfangen (hängt sicherlich auch von der Baudrate ab, müsste man testen). Jörg
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.