int main()
{
? ? SetSysClock( CLK_SOURCE_PLL_60MHz );
? ? GPIOA_ModeCfg(GPIO_Pin_All,GPIO_ModeIN_Floating);
? ? GPIOB_ModeCfg(GPIO_Pin_All,GPIO_ModeIN_Floating);
? ? WWDG_SetCounter(0x0);
? ? WWDG_ResetCfg(ENABLE);
#ifdef DEBUG
? ? GPIOA_SetBits( bTXD1 );
? ? GPIOA_ModeCfg( bTXD1, GPIO_ModeOut_PP_5mA );
? ? UART1_DefInit( );
#endif
? ? PRINT("s\n");
? ? {
? ? ? ? //PRINT("%s\n",VER_LIB);
? ? }
? ??
? ? WWDG_SetCounter(0x0);
? ? CH57X_BLEInit( );
? ? RF_RoleInit( );
? ? rf_init();
? ? RF_Tx( TX_DATA,TX_DATA_SIZE, 0x02, 0xFF );
? ? RF_Tx( TX_DATA,TX_DATA_SIZE, 0x02, 0xFF );
? ? RF_Tx( TX_DATA,TX_DATA_SIZE, 0x02, 0xFF );
? ? WWDG_SetCounter(0x0);
? ? /*while(1){
? ? ? ? DelayMs( 200 );
? ? ? ? RF_Tx( TX_DATA,TX_DATA_SIZE, 0x02, 0xFF );
? ? }*/
SLEEP:
? ? PRINT( "e\n" );
? ? //PRINT( "shut down mode sleep\n" );
? ? RTC_TMRFunCfg(SEND_PERIOD);
? ? PWR_PeriphWakeUpCfg( ENABLE, RB_SLP_RTC_WAKE, Edge_ShortDelay );
? ? DelayUs( 2 );
? ? LowPower_Shutdown( 0 );? ? ? ? ? ? ? ? ? ? ? ? ? //全部斷電,喚醒后復位
? ? return 0;
}
用573發(fā)送藍牙每隔4秒數(shù)據(jù),持續(xù)20來分鐘就再也收不到數(shù)據(jù)。代碼里的看門狗功能是后加的,現(xiàn)在正在測試。但是不加看門狗的情況下,會出現(xiàn)單片機死機,接串口線也收不到打印數(shù)據(jù)?,F(xiàn)在很怕是休眠狀態(tài)下死機,因為573看門狗非獨立,依賴系統(tǒng)時鐘。如果是RTC死機的話這該怎么辦,電池供電的長期用產(chǎn)品