PIC aufwachdauer Sleep mode

Gast #676735
Lesenswert?
• ▲
▼
Hallo,
brauche dringend Hilfe

ich habe einen TSOP 1736 angeschlossen am RB0/int Pin eines PIC 16f871. 
Ziel ist, den PIC aus dem sleep mode aufzuwecken (GIE=0) und dann ein 
RC-5 Fernbedienungssignal einzulesen. Das einlesen ohne sleep mode 
funktioniert auch einwandfrei. Lasse ich den PIC von einem periodischen 
(ca 1,5ms Periodendauer) 36kHz Test Signal aufwecken, beträgt die 
Aufwachdauer ca. 250us bei 4MHz. Das ist auch das, was im Datenblatt 
angegeben wird (1024 Takte).
Versuche ich das ganze nun mit einer echten Fernbedinung, braucht der 
PIC plötzlich mehrere Millisekunden zum aufwachen, obwohl sich an der 
Flanke eigentlich nichts ändert. Auch habe ich wie vorgesehen ein 
Siebglied in die Stromversorgung des TSOP gebaut.

Hat jemand eine Erklärung für mich???
Gast #676765
Lesenswert?
• ▲
▼
>Lasse ich den PIC von einem periodischen
>(ca 1,5ms Periodendauer) 36kHz Test Signal aufwecken

Deine Fernbedienung sendet aber nicht dauernd.
Der TSOP braucht ein bißchen bis er sich aus dem
Kaltzustand mit den ersten IR Impulsen eingepegelt
hat und bringt das Ausgangssignal erst ein bißchen
später raus. Dazu kommt die Aufwachzeit vom PIC.
Vermutlich wird nur der erste RC5 Code nicht korrekt
dekodiert. Die Wiederholrate der Fernbedienug liegt
bei 100ms (?). Den zweiten RC5 Code kann der PIC
dann dekodieren. Das ist dann deine Reaktionszeit.

Ansonsten ist der Code in Zeile 13 einfach falsch ;)
Gast #676773
Lesenswert?
• ▲
▼
Danke für die schnelle Antwort.
Was ich noch dazu sagen sollte ist, dass ich ein Tesprogramm laufen 
habe. Der PIC wacht auf, setzt einen Pin auf high, wartet kurz, setzt 
ihn wieder auf low und schläft dann.
Nur so konnte ich die Zeiten zwischen der Flanke des TSOP und dem 
Erwachen des PIC auf dem Oszi messen. Es liegt also nicht am TSOP.
Das Testignal erzeuge ich mit einem provisorischem "Generator".
Gast #676789
Lesenswert?
• ▲
▼
>Das Testignal erzeuge ich mit einem provisorischem "Generator".

Was machst du denn mit diesem Generator ?
Schiesst der mit einer IR LED auf den TSOP ?
Macht der nach dem 1.5ms Puls auch eine 100ms Pause ?

Man sollte schon für ungefähr gleiche Verhältnisse sorgen.

Der Oscillator Startup Timer zählt natürlich erst wenn
der Oscillator vom PIC sich einigermaßen eingeschwungen hat.
Das könnte auch etwas dauern. Je nach Lastkapazität am Quarz.
Gast #676806
Lesenswert?
• ▲
▼
Hi Holger,

danke für die Antwort.


>Schiesst der mit einer IR LED auf den TSOP ?

Ja genau.

>Macht der nach dem 1.5ms Puls auch eine 100ms Pause ?

Nein, die Pause ist gut 1ms.
Es könnte also daran liegen, dass der PIC "weiterschwingt" und 
dementsprechend schneller wieder aufwacht, das wäre eine Antwort.
Kann man diese enorm lange Aufwachzeit irgendwie verkürzen?
Gast #676835
Lesenswert?
• ▲
▼
>Kann man diese enorm lange Aufwachzeit irgendwie verkürzen?

Wenn du die Kondensatoren am Quarz kleiner machst
schwingt der Osci laut Datenblatt schneller wieder
an. Wie viel schneller steht dort leider nicht.

Was ist eine "enorm" lange Zeit für dich ?
Und wieso ist das ein Problem ? Warte einfach
auf den zweiten RC5 Code bevor du schlafen gehst und gut ;)
Gast #676845
Lesenswert?
• ▲
▼
>Was ist eine "enorm" lange Zeit für dich ?

10-20ms sind schon eine lange Zeit, finde ich. Bin halt ungeduldig.

>Und wieso ist das ein Problem ? Warte einfach
>auf den zweiten RC5 Code bevor du schlafen gehst und gut ;)

Tja, da wird wohl nichts anderes übrigbleiben.
Aber Du hast natürlich recht, so tragisch ist das nicht, wird am Ende eh 
keiner merken.
Vielen Dank für die Hilfe.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren