ZDBMS/output/ChargerLoad.lst

126 lines
6.1 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

C51 COMPILER V9.01 CHARGERLOAD 02/19/2025 10:42:27 PAGE 1
C51 COMPILER V9.01, COMPILATION OF MODULE CHARGERLOAD
OBJECT MODULE PLACED IN .\output\ChargerLoad.obj
COMPILER INVOKED BY: D:\Tool\Keil\C51\BIN\C51.EXE code_drv\ChargerLoad.c LARGE OPTIMIZE(7,SIZE) REGFILE(.\output\MCUCore
-_Load.ORC) BROWSE INTVECTOR(0X1000) INCDIR(.\header_app;.\header_drv;.\code_gasguage;.\code_classb\iec60730_lib\include;
-.\code_classb\iec60730_proc\Include;.\code_classb\config) DEBUG OBJECTEXTEND PRINT(.\output\ChargerLoad.lst) OBJECT(.\ou
-tput\ChargerLoad.obj)
line level source
1 /********************************************************************************
2 Copyright (C), Sinowealth Electronic. Ltd.
3 Author: Sino
4 Version: V0.0
5 Date: 2020/04/26
6 History:
7 V2.0 2020/04/26 Preliminary
8 ********************************************************************************/
9 #include "Main.h"
10
11
12 //充电器和负载检测
13 BOOL bChgerStartCheckFlg;
14 BOOL bChgerChkingFlg;
15 BOOL bLoadStartCheckFlg;
16 BOOL bLoadChkingFlg;
17 U8 xdata ucChgerRCnt;
18 U8 xdata ucLoadRCnt;
19
20 /*************************************************************************************************
21 * 函数名: LoadCheck
22 * 参 数: 无
23 * 返回值: 无
24 * 描 述: 负载检测,欠压和过流保护后,需启动负载锁定功能
25 *************************************************************************************************/
26 void LoadCheck(void)
27 {
28 1 if(bLoadStartCheckFlg) //如果发生欠压保护,且电压已经恢复;如果已经发生过流保护
29 1 {
30 2 bLoadStartCheckFlg = 0;
31 2 bLoadChkingFlg = 1;
32 2 ucLoadRCnt = 0;
33 2 AFELoadCheckEn(); //开启AFE负载检测
34 2 }
35 1 else if(bLoadChkingFlg)
36 1 {
37 2 AFERdStatus();
38 2 if(!bAfeLoad) //检测到负载释放
39 2 {
40 3 if(++ucLoadRCnt >= LOAD_DELAY_CNT)
41 3 {
42 4 bLoadChkingFlg = 0;
43 4 ucLoadRCnt = 0;
44 4 AFELoadCheckDis(); //关闭负载检测
45 4 if(bUVLock)
46 4 {
47 5 bUV = 0; //释放欠压、过流
48 5 }
49 4 bOCD1 = 0;
50 4 bOCD2 = 0;
51 4 if(bAFE_SC)
52 4 {
C51 COMPILER V9.01 CHARGERLOAD 02/19/2025 10:42:27 PAGE 2
53 5 bAFE_SC = 0;
54 5 AFEClrFlg(); //清除短路保护标志
55 5 }
56 4 }
57 3 }
58 2 }
59 1 }
60
61
62 /*************************************************************************************************
63 * 函数名: ChgerCheck
64 * 参 数: 无
65 * 返回值: 无
66 * 描 述: 检测充电器,当发生欠压后检测充电器是否连接;当发生充电过流后检测充电器是否移除
67 *************************************************************************************************/
68 void ChgerCheck(void)
69 {
70 1 if(bChgerStartCheckFlg)
71 1 {
72 2 bChgerStartCheckFlg = 0;
73 2 bChgerChkingFlg = 1;
74 2 ucChgerRCnt = 0;
75 2 AFEChgerCheckEn(); //开启充电器检测
76 2 }
77 1 else if(bChgerChkingFlg)
78 1 {
79 2 AFERdStatus();
80 2 if(!bAfeChger) //充电器移除
81 2 {
82 3 if(++ucChgerRCnt >= CHGER_DELAY_CNT)
83 3 {
84 4 bChgerChkingFlg = 0;
85 4 ucChgerRCnt = 0;
86 4 AFEChgerCheckDis(); //关闭充电器检测
87 4 if(bOVLock)
88 4 {
89 5 bOV = 0; //释放过压
90 5 bAFE_OV = 0;
91 5 AFEClrFlg();
92 5 }
93 4 bOCC = 0;
94 4 }
95 3 }
96 2 }
97 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 151 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 2 ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = 4 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)