void HibernateHandler(void) { uint32_t ui32Status; // // Get the interrupt status, and clear any pending interrupts. // ui32Status = HibernateIntStatus(1); HibernateIntClear(ui32Status); // // Process the RTC match 0 interrupt. // if(ui32Status & HIBERNATE_INT_RTC_MATCH_0) { GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_3, GPIO_PIN_3); }}
int main(void){ SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3); GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, 0x08); SysCtlPeripheralEnable(SYSCTL_PERIPH_HIBERNATE); HibernateEnableExpClk(SysCtlClockGet()); HibernateGPIORetentionEnable(); SysCtlDelay(64000000); HibernateRTCSet(0); HibernateRTCEnable(); HibernateRTCMatchSet(0,HibernateRTCGet()+60); HibernateWakeSet(HIBERNATE_WAKE_PIN | HIBERNATE_WAKE_RTC); GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_3, 0x00);
HibernateIntEnable(HIBERNATE_INT_RTC_MATCH_0); HibernateIntClear(HIBERNATE_INT_PIN_WAKE | HIBERNATE_INT_LOW_BAT | HIBERNATE_INT_RTC_MATCH_0); //HibernateIntRegister(HibernateHandler);
HibernateRequest(); while(1) {
}}void HibernateHandler(void) { uint32_t ui32Status; // // Get the interrupt status, and clear any pending interrupts. // ui32Status = HibernateIntStatus(1); HibernateIntClear(ui32Status); // // Process the RTC match 0 interrupt. // if(ui32Status & HIBERNATE_INT_RTC_MATCH_0) { GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_3, GPIO_PIN_3); }}
int main(void){ SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3); GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, 0x08); SysCtlPeripheralEnable(SYSCTL_PERIPH_HIBERNATE); HibernateEnableExpClk(SysCtlClockGet()); HibernateGPIORetentionEnable(); SysCtlDelay(64000000); HibernateRTCSet(0); HibernateRTCEnable(); HibernateRTCMatchSet(0,HibernateRTCGet()+60); HibernateWakeSet(HIBERNATE_WAKE_PIN | HIBERNATE_WAKE_RTC); GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_3, 0x00);
HibernateIntEnable(HIBERNATE_INT_RTC_MATCH_0); HibernateIntClear(HIBERNATE_INT_PIN_WAKE | HIBERNATE_INT_LOW_BAT | HIBERNATE_INT_RTC_MATCH_0); //HibernateIntRegister(HibernateHandler);
HibernateRequest(); while(1) {
}}