
Zitat von
radbruch
Hallo pizzakurier
If a reset occurs during sleep mode, the MCU wakes up and executes from the Reset Vector.
Also einfach einen Reset auslösen....
(nur theoretisch, noch nicht getestet)
mic
Genau.
Auf das bin ich noch garnicht gekommen.
Ich kann einen Pinchange-Interrupt als Reset ausführen.
Dann im Index oben die Taste auswählen, gewünschten Command setzen
und wie Du sagtest unten wieder schlafen legen.
Muss mal kucken ob ich nen PCint. als Reset beschalten kann....
Muss ich sofort kucken und testen....
Gruß Pizzakurier \
/
@EDIT
Bei Einstellungen diesen Code einfügen :
Code:
Config Pinb.1 = Output 'ocr0b
Config Pinb.2 = Output 'led
Config Pinb.3 = Input 'taste down
Config Pinb.4 = Input 'taste up
Portb = &B00011000
Enable Interrupts 'enable global ints
On Pcint0 Int
Mcucr = &B00110000 'Sleepmodus : 00110000 = Powerdown !
Pcmsk = &B00011000
Gimsk = &B00100000
Gifr = &B00100000
Direkt unter Label das hier :
Code:
Label:
Enable Pcint0
!sleep
und zu guter letzt, das Int-Sub Programm:
Code:
$end Asm
Return
Int: 'Wenn Interrupt ausgelöst wird, (Taste gedrückt)
Disable Pcint0 'schalte INT0 ab
Return 'hoch zur Hauptschleife nach Befehl Sleep
Damit wird der komplette RC5 gesendet und schläft dann ein.
Bei mir liegen 2 Taster auf PB3 und PB4 mit jeweils Pullup aktiv.
Jetzt muss ich nur noch die 2 Taster auswerten für verschiedene Befehle 
Guten Rutsch an alle BASCOMer (und der Rest natürlich auch
)
Pizzakurier
Lesezeichen