From 72def895431ad7a08e635b11f3da738e2b2c4618 Mon Sep 17 00:00:00 2001
From: wujiazhi <1147861305@qq.com>
Date: Thu, 13 Jun 2024 11:31:04 +0800
Subject: [PATCH] add lower model test
---
Function/POWER_MANAGE/power_manage.h | 183 ++++++++++++++++-----------------------------
1 files changed, 65 insertions(+), 118 deletions(-)
diff --git a/Function/POWER_MANAGE/power_manage.h b/Function/POWER_MANAGE/power_manage.h
index 7eabc88..24a681c 100644
--- a/Function/POWER_MANAGE/power_manage.h
+++ b/Function/POWER_MANAGE/power_manage.h
@@ -1,147 +1,96 @@
#ifndef _POWER_MANAGE_H_
#define _POWER_MANAGE_H_
-#include "define_all.h"
+#include "define_all.h"
+#include "administrator.h"
// ����������־λ����
#define __VCC_PARA_FLAG_SET_(__HANDLE__) ((&pwr_vol_g)->__HANDLE__ = SET)
// ����������־λ���
#define __VCC_PARA_FLAG_CLEAR_(__HANDLE__) ((&pwr_vol_g)->__HANDLE__ = RESET)
-// ﮵綪ʧ
-#define LITH_PWR_LOSE_PORT GPIOD
-#define LITH_PWR_LOSE_PIN GPIO_Pin_0
-#define LITH_PWR_LOSE_IO_READ GPIO_ReadInputDataBit(LITH_PWR_LOSE_PORT, LITH_PWR_LOSE_PIN)
+// ﮵����
+#define LITHIUM_PWR_DOWN_PORT GPIOF
+#define LITHIUM_PWR_DOWN_PIN GPIO_Pin_11
+// ﮵�Ƿѹ
+#define LIT_PWR_UNDER_PORT GPIOF
+#define LIT_PWR_UNDER_PIN GPIO_Pin_6
// ﮵����
-#define LITH_DETECTION_PORT GPIOF
-#define LITH_DETECTION_PIN GPIO_Pin_3
+#define LITHIUM_DETECTION_PORT GPIOD
+#define LITHIUM_DETECTION_PIN GPIO_Pin_2
-#define LIT_DEC_ON GPIO_SetBits(LITH_DETECTION_PORT,LITH_DETECTION_PIN)
-#define LIT_DEC_OFF GPIO_ResetBits(LITH_DETECTION_PORT,LITH_DETECTION_PIN)
+#define LIT_DEC_ON GPIO_SetBits(LITHIUM_DETECTION_PORT, LITHIUM_DETECTION_PIN)
+#define LIT_DEC_OFF GPIO_ResetBits(LITHIUM_DETECTION_PORT, LITHIUM_DETECTION_PIN)
-
-// ��綪ʧ
-#define ALKA_PWR_LOSE_PORT GPIOF
-#define ALKA_PWR_LOSE_PIN GPIO_Pin_11
-#define ALKA_PWR_LOSE_IO_READ GPIO_ReadInputDataBit(ALKA_PWR_LOSE_PORT, ALKA_PWR_LOSE_PIN)
+// ������
+#define ALKALI_PWR_DOWN_PORT GPIOA
+#define ALKALI_PWR_DOWN_PIN GPIO_Pin_4
// ������
-#define ALKA_DETECTION_PORT GPIOF
-#define ALKA_DETECTION_PIN GPIO_Pin_4
+#define ALKALI_DETECTION_PORT GPIOB
+#define LITH_TEST_ENALKALI_DETECTION_PIN GPIO_Pin_2
-#define ALK_DEC_ON GPIO_SetBits(ALKA_DETECTION_PORT,ALKA_DETECTION_PIN)
-#define ALK_DEC_OFF GPIO_ResetBits(ALKA_DETECTION_PORT,ALKA_DETECTION_PIN)
+#define ALK_DEC_ON GPIO_SetBits(ALKALI_DETECTION_PORT, ALKALI_DETECTION_PIN)
+#define ALK_DEC_OFF GPIO_ResetBits(ALKALI_DETECTION_PORT, ALKALI_DETECTION_PIN)
+#define Ad_LITH_PF6_BAT_CH 5
+#define Ad_LITH_PF6_BAT_CNT 8
+#define LITH_PF6_VOL_COE 1.206f
-// ���
-#define BORROW_PWR_PORT GPIOG
-#define BORROW_PWR_PIN GPIO_Pin_2
+#define Ad_LITH_BAT_REF_VOL 5.0f
+#define Ad_LITH_BAT_CH 5
+#define Ad_LITH_BAT_CNT 8
+#define LITH_VOL_COE 3.20 // 2.01f
-#define BORROW_PWR_ON GPIO_ResetBits(BORROW_PWR_PORT,BORROW_PWR_PIN)
-#define BORROW_PWR_OFF GPIO_SetBits(BORROW_PWR_PORT,BORROW_PWR_PIN)
+#define Ad_ALKA_BAT_REF_VOL 5.0f
+#define Ad_ALKA_BAT_CH 10
+#define Ad_ALKA_BAT_CNT 8
+#define ALKA_VOL_COE 2.70 // 3.14f
-//�����˿�
-#define HWIDO_EX_PWR_PORT GPIOF
-#define HWIDO_EX_PWR_PIN GPIO_Pin_5
-
-#define HWIDO_EX_PWR_IO_READ GPIO_ReadInputDataBit(HWIDO_EX_PWR_PORT, HWIDO_EX_PWR_PIN)
-
-//�����ƶ˿�
-#define EX_PWR_EN_PORT GPIOG
-#define EX_PWR_EN_PIN GPIO_Pin_3
-#define EX_PWR_ON GPIO_SetBits(EX_PWR_EN_PORT,EX_PWR_EN_PIN)
-#define EX_PWR_OFF GPIO_ResetBits(EX_PWR_EN_PORT,EX_PWR_EN_PIN)
-
-
-#define AD_LITH_PF6_BAT_CH 5
-#define AD_LITH_PF6_BAT_CNT 8
-#define LITH_PF6_VOL_COE 1.206f
-
-#define AD_LITH_BAT_REF_VOL 5.0f
-#define AD_LITH_BAT_CH 4
-#define AD_LITH_BAT_CNT 8
-#define LITH_VOL_COE 2.01f
-
-#define AD_ALKA_BAT_REF_VOL 5.0f
-#define AD_ALKA_BAT_CH 8
-#define AD_ALKA_BAT_CNT 8
-#define ALKA_VOL_COE 3.14f
-
-#define AD_VTEM_CH ADC_CFGR_BUFSEL_TS
-#define AD_VTEM_CNT 8
-
-
-//ʣ������ٷֱȼ���
-#define BAT_PERSENT_LEVEL_3 70
-#define BAT_PERSENT_LEVEL_2 40
-#define BAT_PERSENT_LEVEL_1 20
-#define BAT_PERSENT_LEVEL_0 0
-
+#define AD_VTEM_CH ADC_CFGR_BUFSEL_TS
+#define AD_VTEM_CNT 8
typedef enum
{
- LMS_NONE,
- LMS_PERIOD,
- LMS_KEY,
- LMS_OPEN_VALVE_BEFORE,
-}LITH_MEASURE_STATUS;
+ LMS_NONE,
+ LMS_PERIOD,
+ LMS_KEY,
+ LMS_OPEN_VALVE_BEFORE,
+} LITH_MEASURE_STATUS;
typedef enum
{
- AMS_NONE,
- AMS_PERIOD,
- AMS_KEY,
- AMS_WRC_BEFORE,
-}ALKA_MEASURE_STATUS;
+ AMS_NONE,
+ AMS_PERIOD,
+ AMS_KEY,
+ AMS_GPRS_BEFORE,
+} ALKA_MEASURE_STATUS;
-typedef enum
+#pragma pack(1)
+// ��������
+// �ŵ㣺ʹ�öѿռ䣬��ַ����������Ƭ�ڴ棨���ָ�����ݣ�
+// ȱ�㣺ÿ��ʹ������Ҫ�ֶ��ͷ�
+typedef struct ad_data_get
{
- BAT_V_NONE, //��״̬
-// BAT_V_LOSE, //��ʧ��������ѹ���ͣ���Ϊ��ض�ʧ
- BAT_V_DOWN, //Ƿѹ
- BAT_V_LOW, //�͵�
-}BAT_V_STATUS;
+ u8 ad_ch;
+ u16 ad_buffer_cnt;
+ uint32_t ad_get_buffer[];
+} ad_data_s;
-
-
-#pragma pack(1)
-//��������
-//�ŵ㣺ʹ�öѿռ䣬��ַ����������Ƭ�ڴ棨���ָ�����ݣ�
-//ȱ�㣺ÿ��ʹ������Ҫ�ֶ��ͷ�
-typedef struct ad_data_get{
- u8 ad_ch;
- u16 ad_buffer_cnt;
- uint32_t ad_get_buffer[];
-}ad_data_s;
+typedef struct pwr_vol
+{
+ LITH_MEASURE_STATUS lith_flag; // ����������־λ
+ ALKA_MEASURE_STATUS alka_flag;
+ FlagStatus mcu_temp_flag; // mcu�¶ȱ�־λ
+ float lith_vcc;
+ float alka_vcc;
+ float mcu_temperature;
+ int8_t lith_vcc_per;
+} PWR_VOL_T;
#pragma pack()
-
-typedef struct pwr_vol{
- LITH_MEASURE_STATUS lith_flag; //����������־λ
- ALKA_MEASURE_STATUS alka_flag;
- FlagStatus mcu_temp_flag; //mcu�¶ȱ�־λ
- FlagStatus lith_lose_check_flag; //����﮵�������־
- FlagStatus alka_lose_check_flag; //�������������־
- float lith_vcc;
- BAT_V_STATUS lith_vcc_status;
- float alka_vcc;
- BAT_V_STATUS alka_vcc_status;
- float mcu_temperature;
- int8_t lith_vcc_per; //���ݵ�ѹ����İٷֱ�
- int8_t lith_remain_use_time_per; //����ʹ��ʱ������ʣ��ٷֱ�
- int8_t lith_synthesize_per; //���ݵ�ѹ��ʹ��ʱ��ϳɵİٷֱȣ����ն�������İٷֱ�
-
- int8_t alka_vcc_per; //���ݵ�ѹ����İٷֱ�
-
- int8_t ex_pwr_in_cnt; //��������������
- int8_t ex_pwr_out_cnt; //��粻������������
-
-}PWR_VOL_T;
-
-
-
-
+extern uint8_t sys_bst_flag;
extern uint8_t first_power_get_cnt_g;
@@ -152,10 +101,8 @@
float Get_Alka_Bat_Voltage(void);
float Get_Lith_Bat_Voltage(void);
-void GetPwrStatusPro(PWR_VOL_T * pwr_vol_p);
+void Get_Double_Bat_Voltage(PWR_VOL_T *pwr_vol_p);
-void PowerManagrInit(void);
-
+uint32_t Get_vol_average(ad_data_s *data_p);
+float Get_Mcu_Temp(void);
#endif
-
-
--
Gitblit v1.9.3