Forum: Mikrocontroller und Digitale Elektronik IR Empfänger und Sleep Mode (Idle geht | Power save geht nicht)


von Thomas F. (tfreal10)


Lesenswert?

Atmega8
16MHz

Habe einen IR Empfänger TSOP38 am INT1 angeschlossen! Und realisiere 
damit einen IR Empfänger der mir die Codes per RS232 an den PC schickt! 
Dies funktioniert soweit auch ganz gut! Nun wollte ich die schaltung 
etwas Stromsparender machen und die schaltung in den Sleep Modus 
versetzen! trifft sich ja ehh gut da der IR EMpfänger am INT1 hängt!

Im Idle mode funktioniert dies auch! im Power Save Mode sendet er zwar 
auch was an den PC aber dass sind immer falsche Codes! So dachte ich er 
fängt zu spät mit der Auswertung an, also Timer1 fragt zu spät also an 
der falschen Stelle die Bits des RC5Codes ab und liefert so falsche 
Codes an den PC! So wäre ein möglicher ansatz den Timer beim ersten mal 
nicht so hoch zählen zu lassen! doch weiss ich nicht genau wie hoch! 
Normal zählt er bis  14098 das sind 899µs. Ich hab davon gelesen dass 
der µC eine bestimmte zeit braucht bis er wieder da ist! so um die 5µs 
oder 6Takte

http://www.mikrocontroller.net/articles/Sleep_Mode#Morgenmuffel

was ich nicht ganz verstehe! Sind es nun 5µs oder 6Takte? 6Takte sind 
bei 16MHz doch 0,375µs

habe auch schon beides ausprobiert! Also einmal nur bis 14092 (-6Takte) 
gezählt und einmal nur bis 14018(-80Takte 5µs) funktioniert aber dennoch 
nicht! was könnte ich noch falsch machen?

von Bernhard M. (boregard)


Lesenswert?

Da Du 16MHz hast, nehme ich an, Du hast einen Quartzoszillator. Die 
brauchen zum Start aus dem Sleep einige 10 bis 100 Millisekunden, das 
ist doch viel zu lang um noch auf den RC5 Frame zu reagieren, oder 
täusche ich mich da?

von Thomas F. (tfreal10)


Lesenswert?

hmm und wie finde ich heraus wie lang genau? also 10-100µs sind ja nicht 
gerade genau! Ich habe eigentlich 899µs Zeit! theoretisch sogar das 
doppelte! aber da müsst ich wieder umständlich was reinprogrammieren!

von Thomas F. (tfreal10)


Lesenswert?

achso millisekunden?!?!?!?!?

das ist vieeeeeeeeel zu lang

Aber nun weiss ich wenigstens an was es liegt an "Main Clock
Source Enabled"

dann nehme ich einfach den Standby mode der is ja genauso gut wie Power 
save bzw zumindest besser vom stromverbrauch wie IDLE und mit dem 
funktionierts nun auch!

Danke fürs schnelle Antworten

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.