00001 ;TPicSim9 00002 ;Programm zum Test des 16F84-Simulators. 00003 ;Funktion: SLEEP-Befehl 00004 ;(c) St. Lehmann Ersterstellung: 31.03.2016 00005 ;Definition einiger Symbole 00006 00007 list c=132 ;Zeilenlänge im LST auf 132 Zeichen setzen 00008 00009 status equ 03h 00010 rb equ 06h 00011 var equ 0ch 00012 liste1 equ 10h 00013 liste2 equ 11h 00014 liste3 equ 12h 00015 liste4 equ 13h 00016 00017 ;Definition des Prozessors 00018 device 16F84 00019 00020 ;Festlegen des Codebeginns 00021 org 0 00022 ;wenn mit eingeschaltetem Watchdog-Timer der SLEEP-Befehl aktiviert wird, 00023 ;dann wird das Programm nach ca. 2,3ms weiter laufen. 00024 00025 ;wenn der Watchdog-Timer ausgeschaltet ist, beendet ein RESET den SLEEP-Modus 00026 00027 ;Auch ein Interrupt an RB0 oder RB4 bis RB7 beendet den SLEEP-Modus 00028 start 0000 018C 00029 clrf var ; 0001 0E03 00030 swapf status,w 0002 0090 00031 movwf liste1 ;T0=1 , PD=1 0003 0063 00032 sleep ;warte bis Watchdogtimer anspricht 0004 0E03 00033 swapf status,w 0005 0091 00034 movwf liste2 ;T0=1 , PD=0 bei Watchdog-Timeout 00035 ;T0=0 , PD=0 bei RESET oder Interrupt 00036 00037 00038 ende 0006 2806 00039 goto ende 00040