Hi guys trying to get the PIC to go to sleep in the lowest power mode available
but i notice even in sleep mode i am still pulling 3ma
also that the outputs with week pullups are still active on outputs
wondering if this normal even when in sleep mode
or have missed a setting
cheers
Sheldon
Code:' config for 18F46K80 #CONFIG ;----- CONFIG1L Options -------------------------------------------------- CONFIG XINST = OFF CONFIG SOSCSEL = DIG ; Digital (SCLKI) mode; I/O port functionality of RC0 and RC1 is enabled CONFIG INTOSCSEL = HIGH ; LF-INTOSC in High-power mode during Sleep CONFIG RETEN = ON ; regulator is Enabled (Controlled by SRETEN bit)when in sleep ;----- CONFIG1H Options -------------------------------------------------- CONFIG IESO = OFF CONFIG FCMEN = OFF CONFIG PLLCFG = ON CONFIG FOSC = INTIO2 ; Internal RC oscillator , PORTA.6 , PORTA.7 as I/O ;----- CONFIG2L Options -------------------------------------------------- CONFIG BORPWR = ZPBORMV ; ZPBORMV instead of BORMV is selected CONFIG BORV = 2 ; 2V CONFIG BOREN = SBORDIS ; Enabled in hardware, SBOREN disabled CONFIG PWRTEN = OFF ;----- CONFIG2H Options -------------------------------------------------- CONFIG WDTPS = 512 ; 1:512 CONFIG WDTEN = OFF ; WDT off ;----- CONFIG3L Options -------------------------------------------------- ; no register in the device ;----- CONFIG3H Options -------------------------------------------------- CONFIG MCLRE = ON ; MCLR ENabled FOR DIAG , RG5 DISabled CONFIG MSSPMSK = MSK7 ; 7 Bit address masking mode CONFIG CANMX = PORTB ; ECAN TX and RX pins are located on RB2 and RB3, respectively ;----- CONFIG4L Options -------------------------------------------------- CONFIG BBSIZ = BB1K ; 1K word Boot Block size CONFIG STVREN = ON ;----- CONFIG5L Options -------------------------------------------------- CONFIG CP0 = ON ; MEMORY BLOCK 0 CODE PROTECT BIT - 7KW 800h - 3FFFh ( when 1K BOOT OPTION used ) CONFIG CP1 = ON ; MEMORY BLOCK 1 CODE PROTECT BIT - 8KW 4000h - 7FFFh CONFIG CP2 = ON ; MEMORY BLOCK 2 CODE PROTECT BIT - 8KW 8000h - BFFFh CONFIG CP3 = ON ; MEMORY BLOCK 3 CODE PROTECT BIT - 8KW C000h - FFFFh ;----- CONFIG5H Options -------------------------------------------------- CONFIG CPD = OFF ; EEPROM DATA PREOTECT BIT - EXTERNAL R/W CONFIG CPB = ON ; BOOT BLOCK CODE PROTECT BIT ;----- CONFIG6L Options -------------------------------------------------- CONFIG WRT0 = OFF ; MEMORY BLOCK WRITE PROTECT BIT CONFIG WRT1 = OFF CONFIG WRT2 = OFF CONFIG WRT3 = OFF ;----- CONFIG6H Options -------------------------------------------------- CONFIG WRTD = OFF ; EEPROM WRITE PROTECT BIT - INTERNAL AND EXTERNAL CONFIG WRTB = ON ; BOOT BLOCK WRITE PROTECT CONFIG WRTC = ON ; CONFIGURATION REGISTER WRITE PROTECT BIT ;----- CONFIG7L Options -------------------------------------------------- CONFIG EBTR0 = OFF ; MEMORY READ TABLE BLOCK PROTECT CONFIG EBTR1 = OFF CONFIG EBTR2 = OFF CONFIG EBTR3 = OFF ;----- CONFIG7H Options -------------------------------------------------- CONFIG EBTRB = OFF ; TABLE READ PROTECT BOOT #ENDCONFIGCode:' =========== Power Shutdown routine ================== Shut_Down: pwr_on = 1 ' PWR ON = 1 = OFF - turns off power to devices external to cpu @ INT_DISABLE RBC_INT ; TURN OFF PortB IOC Interrupts for RX_mode - RF_IRQ pin NOT USED WHEN IR-TX @ INT_DISABLE RX2_INT ; Turn Off USART RX Interrupts for RX_mode - RX input on USART not used when IR-TX for configuration @ INT_DISABLE TMR0_INT ; disable Timer0 interupts and start Timer0 INTCON.1 = 0 ' CLEAR INT0 interupt flag prior to enable PWR_shutdown = 0 ' CLEAR shutdown flag @ INT_ENABLE INT0_INT ; Enable INT0 interupt to allow wakeup from Sleep command - Triggered by PWR_SW , active Low OSCCON.7 =0 ' clear IDLEN bit ready for sleep command @ sleep ; sleep command return




Bookmarks