diff --git a/.cproject b/.cproject index e87c260..317b301 100644 --- a/.cproject +++ b/.cproject @@ -114,7 +114,7 @@ - + diff --git a/APP/peripheral_main.c b/APP/peripheral_main.c index 3f545cf..a0d3a7c 100644 --- a/APP/peripheral_main.c +++ b/APP/peripheral_main.c @@ -79,7 +79,7 @@ void Main_Circulation() while(1) { TMOS_SystemProcess(); -// KEY_ProcessLoop(); + KEY_ProcessLoop(); } } @@ -104,7 +104,7 @@ int main(void) #endif #ifdef DEBUG - // BSP_UART3_Init(); + BSP_UART3_Init(); logDebug("%s", TxBuff); #endif @@ -120,20 +120,19 @@ int main(void) Peripheral_Init(); logDebug("Peripheral init ok\n"); -// BSP_MOTOR_Init(); -// -// VALVE_OPEN(); -// -// BSP_LED_Init(); -// + BSP_MOTOR_Init(); + VALVE_OPEN(); + + BSP_LED_Init(); + BSP_VBAT_Init(); logDebug("VBAT init ok\n"); -// + // BSP_Ml307r_Init(); // logDebug("BSP_M1307r ok\n"); -// -// BSP_KEY_Init(app_task_handler); -// + + BSP_KEY_Init(app_task_handler); + BSP_PRESS_Init(); logDebug("BSP init ok\n"); diff --git a/HAL/include/CONFIG.h b/HAL/include/CONFIG.h index 571fd74..02bce9f 100644 --- a/HAL/include/CONFIG.h +++ b/HAL/include/CONFIG.h @@ -99,16 +99,16 @@ #define HAL_LED FALSE #endif #ifndef TEM_SAMPLE -#define TEM_SAMPLE TRUE +#define TEM_SAMPLE FALSE //TRUE #endif #ifndef BLE_CALIBRATION_ENABLE -#define BLE_CALIBRATION_ENABLE TRUE +#define BLE_CALIBRATION_ENABLE FALSE //TRUE #endif #ifndef BLE_CALIBRATION_PERIOD #define BLE_CALIBRATION_PERIOD 120000 #endif #ifndef BLE_SNV -#define BLE_SNV TRUE +#define BLE_SNV TRUE //TRUE #endif #ifndef BLE_SNV_ADDR #define BLE_SNV_ADDR 0x77E00-FLASH_ROM_MAX_SIZE diff --git a/IoT_SCV_CH584M1.wvproj b/IoT_SCV_CH584M1.wvproj index a96e9bd..80b2667 100644 --- a/IoT_SCV_CH584M1.wvproj +++ b/IoT_SCV_CH584M1.wvproj @@ -151,7 +151,7 @@ "preprocess_only": false, "defined_symbols": [ "CLK_OSC32K=0", - "DEBUG=5" + "DEBUG=3" ], "undefined_symbols": [] }, diff --git a/bsp/inc/bsp_led.h b/bsp/inc/bsp_led.h index 6d91a6b..a202890 100644 --- a/bsp/inc/bsp_led.h +++ b/bsp/inc/bsp_led.h @@ -16,6 +16,7 @@ #define LED_ALARM_PIN GPIO_Pin_9 #define LED_VBAT_PIN GPIO_Pin_4 +/*********************************************************************************************** #define LED_VALVE_OPEN {GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ GPIOA_SetBits(LED_VALVE_G_PIN);} @@ -35,6 +36,73 @@ #define LED_ALL_CLOSE {GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ GPIOA_ResetBits(LED_ALARM_PIN | LED_VBAT_PIN);} +****************************************************************************************************/ + +/**********LED_VALVE**************/ +#define LED_VALVE_OPEN \ + do \ + { \ + GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ + GPIOA_SetBits(LED_VALVE_G_PIN); \ + GPIOA_ModeCfg(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +#define LED_VALVE_CLOSE \ + do \ + { \ + GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ + GPIOA_SetBits(LED_VALVE_R_PIN); \ + GPIOA_ModeCfg(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +/**********LED_ALARM**************/ +#define LED_ALARM_OPEN \ + do \ + { \ + GPIOB_SetBits(LED_ALARM_PIN); \ + GPIOB_ModeCfg(LED_ALARM_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +#define LED_ALARM_CLOSE \ + do \ + { \ + GPIOB_ResetBits(LED_ALARM_PIN); \ + GPIOB_ModeCfg(LED_ALARM_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +/**********LED_VBAT**************/ +#define LED_VBAT_OPEN \ + do \ + { \ + GPIOB_SetBits(LED_VBAT_PIN); \ + GPIOB_ModeCfg(LED_VBAT_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +#define LED_VBAT_CLOSE \ + do \ + { \ + GPIOB_ResetBits(LED_VBAT_PIN); \ + GPIOB_ModeCfg(LED_VBAT_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +/**********LED_ALL**************/ +#define LED_ALL_OPEN \ + do \ + { \ + GPIOA_SetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ + GPIOB_SetBits(LED_ALARM_PIN | LED_VBAT_PIN);\ + GPIOA_ModeCfg(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN, GPIO_ModeOut_PP_5mA); \ + GPIOB_ModeCfg(LED_ALARM_PIN | LED_VBAT_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); + +#define LED_ALL_CLOSE \ + do \ + { \ + GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN);\ + GPIOB_ResetBits(LED_ALARM_PIN | LED_VBAT_PIN); \ + GPIOA_ModeCfg(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN, GPIO_ModeOut_PP_5mA); \ + GPIOB_ModeCfg(LED_ALARM_PIN | LED_VBAT_PIN, GPIO_ModeOut_PP_5mA); \ + } while (0); void BSP_LED_Init(void); diff --git a/bsp/src/bsp_adc.c b/bsp/src/bsp_adc.c index b9fd484..d757c16 100644 --- a/bsp/src/bsp_adc.c +++ b/bsp/src/bsp_adc.c @@ -48,7 +48,7 @@ uint16_t VBAT_ProcessEvent(uint8_t task_id, uint16_t events) logDebug("adc_vbat =%d \n", adc_vbat); vbat = (adc_vbat/1024.0-1)*1.05; logDebug("vbat =%f \n", vbat); - tmos_start_task(vbat_task_id, VBAT_EVT_START, MS1_TO_SYSTEM_TIME(1000*60)); //1000*60 + tmos_start_task(vbat_task_id, VBAT_EVT_START, MS1_TO_SYSTEM_TIME(1000*10)); //1000*60 return (events ^ VBAT_EVT_START); } return 0; diff --git a/bsp/src/bsp_bmp390.c b/bsp/src/bsp_bmp390.c index 827d233..4d4b77c 100644 --- a/bsp/src/bsp_bmp390.c +++ b/bsp/src/bsp_bmp390.c @@ -1,6 +1,7 @@ #include "bsp_bmp390.h" #include "bsp_motor.h" #include "bsp_led.h" +#include "bsp_key.h" #include "CONFIG.h" #include "log.h" #include "bsp_ml307r.h" @@ -354,16 +355,16 @@ void PRESS_LowerIO_Init(void) void Lower_IO_Deinit(void) { // LED - GPIOA_ResetBits(GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9); - GPIOA_ModeCfg(GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9, GPIO_ModeIN_PD); - GPIOB_ResetBits(GPIO_Pin_4 | GPIO_Pin_9); - GPIOB_ModeCfg(GPIO_Pin_4 | GPIO_Pin_9, GPIO_ModeIN_PD); + GPIOA_ResetBits(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN); + GPIOA_ModeCfg(LED_VALVE_R_PIN | LED_VALVE_G_PIN | LED_VALVE_Y_PIN, GPIO_ModeIN_PD); + GPIOB_ResetBits(LED_VBAT_PIN | LED_ALARM_PIN); + GPIOB_ModeCfg(LED_VBAT_PIN | LED_ALARM_PIN, GPIO_ModeIN_PD); // KEY | RESET KEY | boot KEY - GPIOB_ResetBits(GPIO_Pin_0 ); - GPIOB_ModeCfg(GPIO_Pin_0, GPIO_ModeIN_Floating); - GPIOB_ResetBits(GPIO_Pin_23 | GPIO_Pin_22); - GPIOB_ModeCfg(GPIO_Pin_23 | GPIO_Pin_22, GPIO_ModeIN_PD); + GPIOB_ResetBits(KEY_B_PIN ); + GPIOB_ModeCfg(KEY_B_PIN, GPIO_ModeIN_PU); + // GPIOB_ResetBits(GPIO_Pin_23 | GPIO_Pin_22); + // GPIOB_ModeCfg(GPIO_Pin_23 | GPIO_Pin_22, GPIO_ModeIN_PD); // ADC GPIOA_ResetBits(GPIO_Pin_4); @@ -373,14 +374,14 @@ void Lower_IO_Deinit(void) // BMP390 //片选低电平有效,初始为输出拉高 // CSB3: PA0 | CSB2: PA3 | CSB1: PA5 - GPIOA_SetBits(GPIO_Pin_0 | GPIO_Pin_3 | GPIO_Pin_5); - GPIOA_ModeCfg(GPIO_Pin_0 | GPIO_Pin_3 | GPIO_Pin_5, GPIO_ModeOut_PP_5mA); + //GPIOA_SetBits(GPIO_Pin_0 | GPIO_Pin_3 | GPIO_Pin_5); + // GPIOA_ModeCfg(GPIO_Pin_0 | GPIO_Pin_3 | GPIO_Pin_5, GPIO_ModeIN_PD); //GPIO_ModeOut_PP_5mA //中断引脚推挽和高电平有效模式 // INT1: PA2 | INT2: PA6 | INT3: PA12 GPIOA_ModeCfg(GPIO_Pin_2 | GPIO_Pin_6 | GPIO_Pin_12, GPIO_ModeIN_PD); // spi初始化 - GPIOA_ModeCfg(GPIO_Pin_13 | GPIO_Pin_14, GPIO_ModeOut_PP_5mA); - GPIOA_ModeCfg(GPIO_Pin_15, GPIO_ModeIN_PU); + GPIOA_ModeCfg(GPIO_Pin_13 | GPIO_Pin_14, GPIO_ModeIN_PD); //GPIO_ModeOut_PP_5mA + GPIOA_ModeCfg(GPIO_Pin_15, GPIO_ModeIN_PD); //GPIO_ModeIN_PU //4G // 关闭3.8V供电 @@ -402,7 +403,7 @@ void Lower_IO_Deinit(void) GPIOB_ModeCfg(COIL_A | COIL_B, GPIO_ModeIN_PD); // UART3 -/***************************************/ +/*************************************** // 禁用UART3中断 GPIOPinRemap(DISABLE, RB_PIN_UART3); UART3_INTCfg(DISABLE, RB_IER_LINE_STAT | RB_IER_RECV_RDY | RB_IER_THR_EMPTY); @@ -418,7 +419,7 @@ void Lower_IO_Deinit(void) // 关闭shell和日志系统 shell.write = NULL; // 禁用shell输出 -/*************************************************/ +*************************************************/ } void PRESS_LowPower(void) @@ -746,7 +747,7 @@ uint16_t Check_ProcessEvent(uint8_t task_id, uint16_t events) { VALVE_CLOSE(); fault_state = 1; - tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1000)); + tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1500)); //1000 logDebug("motor high close"); } //欠压检测 @@ -754,7 +755,7 @@ uint16_t Check_ProcessEvent(uint8_t task_id, uint16_t events) { VALVE_CLOSE(); fault_state = 2; - tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1000)); + tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1500)); //1000 logDebug("motor low close"); } //过流检测 @@ -762,7 +763,7 @@ uint16_t Check_ProcessEvent(uint8_t task_id, uint16_t events) { VALVE_CLOSE(); fault_state = 3; - tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1000)); + tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1500)); //1000 logDebug("motor ver close"); } } @@ -773,16 +774,18 @@ uint16_t Check_ProcessEvent(uint8_t task_id, uint16_t events) VALVE_OPEN(); fault_state = 0; tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1000)); - //LED_VALVE_OPEN; + LED_VALVE_OPEN; + logDebug("motor/LED open"); } else if(motor_flag == 2) { motor_flag = 0; VALVE_CLOSE(); tmos_start_task(check_task_id, MOTOR_STOP_EVT, MS1_TO_SYSTEM_TIME(1000)); - //LED_VALVE_CLOSE; + LED_VALVE_CLOSE; + logDebug("motor/LED close"); } - tmos_start_task(check_task_id, CHECK_EVT_START, MS1_TO_SYSTEM_TIME(1000)); //100 + tmos_start_task(check_task_id, CHECK_EVT_START, MS1_TO_SYSTEM_TIME(500)); //100 return (events ^ CHECK_EVT_START); } if (events & MOTOR_STOP_EVT) @@ -808,20 +811,20 @@ void GPIOA_IRQHandler(void) R16_PA_INT_IF = GPIO_Pin_6; flag = 1; tmos_set_event(press_task_id, BMP390_EVT_READ); - //printf("interrupt1\r\n"); + logDebug("INT2 \r\n"); } else if (R16_PA_INT_IF & GPIO_Pin_12) { R16_PA_INT_IF = GPIO_Pin_12; flag = 2; tmos_set_event(press_task_id, BMP390_EVT_READ); - //printf("interrupt2\r\n"); + logDebug("INT3 \r\n"); } else if (R16_PA_INT_IF & GPIO_Pin_2) { R16_PA_INT_IF = GPIO_Pin_2; flag = 3; tmos_set_event(press_task_id, BMP390_EVT_READ); - //printf("interrupt3\r\n"); + logDebug("INT1 \r\n"); } } diff --git a/bsp/src/bsp_key.c b/bsp/src/bsp_key.c index 11c6feb..78b7b6c 100644 --- a/bsp/src/bsp_key.c +++ b/bsp/src/bsp_key.c @@ -302,7 +302,7 @@ void KEY_ProcessLoop(void) logDebug("motor close"); } tmos_set_event(key_task_id, KEY_SCAN_EVT); - logDebug("KEY_ProcessLoop"); + // logDebug("KEY_ProcessLoop"); } // if (key_wakeup_flag) diff --git a/common/letter-shell-master/src/log.h b/common/letter-shell-master/src/log.h index e9cf349..14f6100 100644 --- a/common/letter-shell-master/src/log.h +++ b/common/letter-shell-master/src/log.h @@ -35,7 +35,7 @@ extern "C" { #endif #ifndef LOG_ENABLE - #define LOG_ENABLE 0 /**< 浣胯兘log */ + #define LOG_ENABLE 1 /**< 浣胯兘log */ #endif #if LOG_USING_LOCK == 1