Example #1
0
int main(void)
{
    uint8_t i;
    //初始化系统时钟 使用外部50M晶振 PLL倍频到100M
    SystemClockSetup(ClockSource_EX50M,CoreClock_100M);
    DelayInit();
    //初始化LED
    LED_Init(LED_PinLookup_CHKATOM, kNumOfLED);
    //KBI 初始化
    KBI_Init(KBI_PinLookup_CHKATOM, kNumOfKEY);
    //闪灯 制造复位效果
    for(i = 0; i < 10; i++)
    {
        LED_Toggle(kLED1);
        DelayMs(50);
    }
    //初始化看门狗 如果1000MS 内没有喂狗则 复位
    WDOG_Init(1000);
    while(1)
    {   
        KBI_Scan();
        if((KBI_GetKeyState(kKEY1) == kKBI_SINGLE))
        {  
            //如果案件按下 喂狗:
            WDOG_Feed();
        }
        //扫描间隔延时
        DelayMs(KBI_SCAN_PERIOD_IN_US/1000);
    }
}
Example #2
0
//看门狗任务
void AppWDOGTask(void *pdata)
{
	pdata=pdata; //防止编译器出错 无实际意义
	WDOG_Init(100); //开启看门狗 100MS超时复位
	while(1)
	{
		WDOG_Feed();
		OSTimeDlyHMSM(0, 0, 0, 50);
	}
}
Example #3
0
/*==============================================================================
  hal_spiTranRead()
 =============================================================================*/
void hal_watchdogReset(void)
{
    WDOG_Feed();
} /* hal_watchdogReset() */