Hallo in die Runde!
Stecke da gerade über einen Schaltplan den ich gerade zusammen stricke.
Allerdings meine etwas leichtsinnige Vorstellung der Art "ich mach das mal eben" scheint an einem Punkt gerade in Ratlosigkeit zu enden...
Geht um den Power Down Modus, hier speziell den ATmega328PB, und dem exakt getimten aufwecken.
Bislang habe ich das mehrfach gemacht mit 32kHz Uhrenquart und asynchronen Timer2.
Dieses mal aber brauche ich den Takt zusammen mit der Zeiterfassung genauer als diese 20ppm und Temperaturabhängigkeit.
Wunschziel liegt bei wenigen Minuten Genauigkeit im Jahr.
Ziel des ganzen: Eine Art spezielle BMS mit Gauge für einen größeren Akku, das ganze für Outdoorbetrieb, also zwischen -20°C im Winter und +45°C im Sommer.
Daher war meine Idee diesen Takt als 1Hz Rechteck aus einer DS3231 zum aufwecken zu nehmen.
Und zwar möglichst Flankengesteuert (Pin Change) entsprechend alle 500ms:
Jede steigende Flanke wäre dann die volle Sekunde und jede fallende die halbe Sekunde.
Laut dem Datenblatt (ATmega328PB_40001906C.pdf) Kapitel 13.6 kann der Mega328PB kann ein
Pin Change Interrupt den µC aus dem Power Down wecken.
Allerdings finde ich im Bascom Handbuch weder bei Config INT noch bei ON Interrupt irgend was hilfreiches über die PCINT
Ich vermute mal das ich den Config INT nicht brauche, denn die Register die ich für den PCINT manuell setzen muss stehen ja im Datenblatt.
Also für PCINT18 eben den PCMSK2 wo der PCINT18 aktiviert werden muss.
Allerdings frage ich mich ob Bascon ein "Enable PCINT2" und "On PCINT2" versteht.
Blöder weise habe ich mit den PCINT's nie etwas gemacht.
Geht das so, oder baue ich mir da gerade einen Denkfehler ein?
Jürgen
Stecke da gerade über einen Schaltplan den ich gerade zusammen stricke.
Allerdings meine etwas leichtsinnige Vorstellung der Art "ich mach das mal eben" scheint an einem Punkt gerade in Ratlosigkeit zu enden...
Geht um den Power Down Modus, hier speziell den ATmega328PB, und dem exakt getimten aufwecken.
Bislang habe ich das mehrfach gemacht mit 32kHz Uhrenquart und asynchronen Timer2.
Dieses mal aber brauche ich den Takt zusammen mit der Zeiterfassung genauer als diese 20ppm und Temperaturabhängigkeit.
Wunschziel liegt bei wenigen Minuten Genauigkeit im Jahr.
Ziel des ganzen: Eine Art spezielle BMS mit Gauge für einen größeren Akku, das ganze für Outdoorbetrieb, also zwischen -20°C im Winter und +45°C im Sommer.
Daher war meine Idee diesen Takt als 1Hz Rechteck aus einer DS3231 zum aufwecken zu nehmen.
Und zwar möglichst Flankengesteuert (Pin Change) entsprechend alle 500ms:
Jede steigende Flanke wäre dann die volle Sekunde und jede fallende die halbe Sekunde.
Laut dem Datenblatt (ATmega328PB_40001906C.pdf) Kapitel 13.6 kann der Mega328PB kann ein
Pin Change Interrupt den µC aus dem Power Down wecken.
Allerdings finde ich im Bascom Handbuch weder bei Config INT noch bei ON Interrupt irgend was hilfreiches über die PCINT
Ich vermute mal das ich den Config INT nicht brauche, denn die Register die ich für den PCINT manuell setzen muss stehen ja im Datenblatt.
Also für PCINT18 eben den PCMSK2 wo der PCINT18 aktiviert werden muss.
Allerdings frage ich mich ob Bascon ein "Enable PCINT2" und "On PCINT2" versteht.
Blöder weise habe ich mit den PCINT's nie etwas gemacht.
Geht das so, oder baue ich mir da gerade einen Denkfehler ein?
Jürgen