//////////////////////////////////////////////////////////////////////////// ///@copyright Copyright (c) 2017, 传控科技 All rights reserved. ///------------------------------------------------------------------------- /// @file APP_POWER.c /// @brief APP_POWER driver app 电源管理 ///------------------------------------------------------------------------- /// @version 1.0 /// @author CC /// @date 20170122 /// @note cc_AS_stc01 ////////////////////////////////////////////////////////////////////////////// /******************************************************************************/ /***************************** Include Files **********************************/ /******************************************************************************/ //#include "app_Gsensor.h" #include "bsp_power.h" ts_task_power_ ts_task_power; void L1_app_POWER_init(void) { DL0_WDT_init(); //L0_INT4_OPEN(); } /// INT1 和INT0可以可以终止掉电状态 这样唤醒后执行进入掉电模式语句的吓一条 /// p32 //// SENSINT2 ccSensor_CG_V02_m08_debug p3.3 int 1 pin14 //// gsensor 的中断给出来 cpu被唤醒 开始工作 //// int4 只有下降沿中断 void L0_sensor_active(void) interrupt D_sensor_active_isrNo { NOP(); NOP(); NOP(); //L0_INT4_CLEAR(); BITN_1(DR_who_wakeup, DRB_who_wakeup_action); NOP(); NOP(); NOP(); } #if 0 while (1) { /// P31 = 0; /// NOP(); NOP(); NOP(); NOP(); NOP();///22m 5个 100ns 一个20ns D_cam_led_on();///400us // L0_delay_1us(); Lc_delay_ms(gRccUs01);///300--200ms D_cam_led_off(); P31 = 1; /// NOP(); NOP(); NOP(); NOP(); NOP(); //L0_delay_1us(); Lc_delay_ms(900);//100--70ms } void L1_app_POWER_handle(void) { //// fixme: 需要调试 /********************** if(1 == s_mu_b.power) { s_mu_b.power = 0; if(INT1)///___/``` {// 催眠cpu L0_uart0_uc('`'); //给主循环传递标志 s_mu_b.work = 0; }else {// 唤醒cpu/// ```\____ L0_uart0_uc('L'); s_mu_b.work = 1; } } if(P30)///___/``` {// // L0_uart0_uc('`'); }else {// 唤醒cpu/// ```\____ L0_uart0_uc('L'); s_mu_b.work = 1; } ************************/ if(1 == ts_task_power.power) { ts_task_power.power = 0; ///L0_uart0_uc('L'); } } if(0 == s_mu_b.work) {/// step 1: 关闭一些耗电的东西 /// fixme: vcc1 因为下载的原因需要 改进 /// vcc1 ch340e Uart4.txd // L2_power_AS_OFF(); /// L0_mcu_mode_powerdown(); /// L2_power_AS_ON(); //// step : 打开电源 } void Int0_Routine(void) interrupt D_ISR_int1 { s_mu_b.power = 1; } #endif