Dear,
I have some problems with Deep Sleep mode.The problem is about LM3S5T36 is taking to much power: about 6.674mA at deesleep mode.I'm using Code sourcery compiler and StellarisWere library. Here is simple code which should put the device in deep sleep mode:
void main(){//// Set the clocking to run directly from the external crystal/oscillator.// TODO: The SYSCTL_XTAL_ value must be changed to match the value of the// crystal on your board.//SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |SYSCTL_XTAL_16MHZ);SysCtlPeripheralPowerOff(SYSCTL_PERIPH_GPIOA); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_GPIOC); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_GPIOD); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_GPIOE); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_I2C0); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_I2C1); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_PWM0); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_CAN0); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_UART0); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_UART1); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_UART2); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_SSI0); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_SSI1); SysCtlPeripheralPowerOff(SYSCTL_PERIPH_USB0); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); GPIOPinTypeGPIOInput (GPIO_PORTB_BASE, GPIO_PIN_7); GPIOIntTypeSet(GPIO_PORTB_BASE, GPIO_PIN_7, GPIO_HIGH_LEVEL);GPIOPinIntEnable(GPIO_PORTB_BASE, GPIO_PIN_7);IntEnable(INT_GPIOB); IntMasterEnable(); SysCtlPeripheralClockGating(true); // Shutdown the USB PHY HWREG(0x40050001) = 0x21; SysCtlPeripheralDeepSleepEnable(SYSCTL_PERIPH_GPIOB);SysCtlDeepSleepClockSet(0x00000030); // use INT_30KSysCtlDelay(500000);SysCtlDeepSleep(); while(1){ SysCtlDelay(50000);}}
Does anyone meet the power problem at the deepsleep mode ?
thanks!