126 lines
6.1 KiB
Plaintext
126 lines
6.1 KiB
Plaintext
C51 COMPILER V9.01 CHARGERLOAD 02/13/2025 10:07:28 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/13/2025 10:07:28 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)
|