208 lines
9.0 KiB
Plaintext
208 lines
9.0 KiB
Plaintext
|
C51 COMPILER V9.01 CALIBRATE 02/06/2025 15:28:45 PAGE 1
|
|||
|
|
|||
|
|
|||
|
C51 COMPILER V9.01, COMPILATION OF MODULE CALIBRATE
|
|||
|
OBJECT MODULE PLACED IN .\output\Calibrate.obj
|
|||
|
COMPILER INVOKED BY: D:\Tool\Keil\C51\BIN\C51.EXE code_drv\Calibrate.c LARGE OPTIMIZE(7,SIZE) REGFILE(.\output\MCUCore_L
|
|||
|
-oad.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\Calibrate.lst) OBJECT(.\output
|
|||
|
-\Calibrate.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 BOOL bCaliFlg; //<2F><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ñ<EFBFBD>־
|
|||
|
13 U16 xdata ulExtVPack;
|
|||
|
14 S32 xdata slExtCur;
|
|||
|
15 U16 xdata uiExtTemp1;
|
|||
|
16 U16 xdata uiExtTemp2;
|
|||
|
17 U8 xdata ucExtRTC[7];
|
|||
|
18 U8 xdata ucExtcaliSwitch1;
|
|||
|
19
|
|||
|
20 /*************************************************************************************************
|
|||
|
21 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliVoltage
|
|||
|
22 * <20><> <20><>: <20><>
|
|||
|
23 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
24 * <20><> <20><>: У<D0A3>ܵ<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E2uiVPackGain<69><6E><EFBFBD><EFBFBD>
|
|||
|
25 *************************************************************************************************/
|
|||
|
26 void CaliVoltage(void)
|
|||
|
27 {
|
|||
|
28 1 U8 i;
|
|||
|
29 1 U16 VPackTemp = 0;
|
|||
|
30 1
|
|||
|
31 1 for(i=ucCellNumOffset; i<(ucCellNumOffset+ucCellNum); i++)
|
|||
|
32 1 {
|
|||
|
33 2 VPackTemp += AFE.uiCell[i];
|
|||
|
34 2 }
|
|||
|
35 1
|
|||
|
36 1 E2uiVPackGain = (U32)CALIPACKVOL*VPackTemp/ulExtVPack;
|
|||
|
37 1 }
|
|||
|
38
|
|||
|
39
|
|||
|
40 /*************************************************************************************************
|
|||
|
41 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliCurrentGain
|
|||
|
42 * <20><> <20><>: <20><>
|
|||
|
43 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
44 * <20><> <20><>: У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E2siCadcGain<69><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>βɼ<CEB2><C9BC>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<D0A3><D7BC><EFBFBD><EFBFBD>
|
|||
|
45 *************************************************************************************************/
|
|||
|
46 void CaliCurrentGain(void)
|
|||
|
47 {
|
|||
|
48 1 S16 TempGain;
|
|||
|
49 1
|
|||
|
50 1 TempGain = (S32)CALICUR*(AFE.siCurr-E2siCadcOffset)/slExtCur;
|
|||
|
51 1 if(TempGain != 0)
|
|||
|
52 1 {
|
|||
|
C51 COMPILER V9.01 CALIBRATE 02/06/2025 15:28:45 PAGE 2
|
|||
|
|
|||
|
53 2 E2siCadcGain = TempGain;
|
|||
|
54 2 }
|
|||
|
55 1 }
|
|||
|
56
|
|||
|
57
|
|||
|
58 /*************************************************************************************************
|
|||
|
59 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliCurZero
|
|||
|
60 * <20><> <20><>: <20><>
|
|||
|
61 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
62 * <20><> <20><>: У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
63 *************************************************************************************************/
|
|||
|
64 void CaliCurZero(void)
|
|||
|
65 {
|
|||
|
66 1 E2siCadcOffset = AFE.siCurr;
|
|||
|
67 1 }
|
|||
|
68
|
|||
|
69
|
|||
|
70 /*************************************************************************************************
|
|||
|
71 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliTS1<53><31>CaliTS2
|
|||
|
72 * <20><> <20><>: <20><>
|
|||
|
73 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
74 * <20><> <20><>: У<D0A3>¶ȣ<C2B6><C8A3>¶<EFBFBD>ƫ<EFBFBD><C6AB>С<EFBFBD><D0A1>15<31><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У
|
|||
|
75 *************************************************************************************************/
|
|||
|
76 void CaliTS1(void)
|
|||
|
77 {
|
|||
|
78 1 S16 Tempe;
|
|||
|
79 1
|
|||
|
80 1 Tempe = uiExtTemp1 - CalcuTemp(AFE.uiTS[0]);
|
|||
|
81 1 if(((Tempe-E2siTS0Offset)<150) && ((Tempe-E2siTS0Offset)>-150))
|
|||
|
82 1 {
|
|||
|
83 2 E2siTS0Offset = Tempe;
|
|||
|
84 2 }
|
|||
|
85 1 }
|
|||
|
86
|
|||
|
87 void CaliTS2(void)
|
|||
|
88 {
|
|||
|
89 1 S16 Tempe;
|
|||
|
90 1
|
|||
|
91 1 Tempe = uiExtTemp2 - CalcuTemp(AFE.uiTS[1]);
|
|||
|
92 1 if(((Tempe-E2siTS1Offset)<150) && ((Tempe-E2siTS1Offset)>-150))
|
|||
|
93 1 {
|
|||
|
94 2 E2siTS1Offset = Tempe;
|
|||
|
95 2 }
|
|||
|
96 1 }
|
|||
|
97
|
|||
|
98
|
|||
|
99
|
|||
|
100 /*************************************************************************************************
|
|||
|
101 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliRTCTime
|
|||
|
102 * <20><> <20><>: <20><>
|
|||
|
103 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
104 * <20><> <20><>: УRTC
|
|||
|
105 *************************************************************************************************/
|
|||
|
106 void CaliRTCTime(void)
|
|||
|
107 {
|
|||
|
108 1 RTC.Second = ucExtRTC[0];
|
|||
|
109 1 RTC.Minute = ucExtRTC[1];
|
|||
|
110 1 RTC.Hour = ucExtRTC[2];
|
|||
|
111 1 RTC.Date = ucExtRTC[3];
|
|||
|
112 1 RTC.Month = ucExtRTC[4];
|
|||
|
113 1 RTC.Year = ucExtRTC[5];
|
|||
|
114 1 RTC.Week = ucExtRTC[6];
|
|||
|
C51 COMPILER V9.01 CALIBRATE 02/06/2025 15:28:45 PAGE 3
|
|||
|
|
|||
|
115 1
|
|||
|
116 1 RTCModifyTime(&RTC);
|
|||
|
117 1
|
|||
|
118 1 bE2PProcessFlg = 1; //УRTC֮<43><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>RTC<54><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⲿEEP
|
|||
|
119 1 bE2PBKRtc = 1;
|
|||
|
120 1 }
|
|||
|
121
|
|||
|
122
|
|||
|
123
|
|||
|
124 /*************************************************************************************************
|
|||
|
125 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: CaliProcess
|
|||
|
126 * <20><> <20><>: <20><>
|
|||
|
127 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
|
|||
|
128 * <20><> <20><>: <20><><EFBFBD><EFBFBD>У<D0A3><D7BC>ͨѶ<CDA8>жϻ<D0B6><CFBB><EFBFBD>λ<EFBFBD><CEBB>ǰ<EFBFBD><C7B0>ҪУģ<D7BC><C4A3><EFBFBD><EFBFBD>Ӧ<EFBFBD>ı<EFBFBD>־<EFBFBD><D6BE>
|
|||
|
129 У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<D0A3><D7BC><EFBFBD><EFBFBD>д<EFBFBD><D0B4>Flash
|
|||
|
130 *************************************************************************************************/
|
|||
|
131 void CaliProcess(void)
|
|||
|
132 {
|
|||
|
133 1 if(bCaliFlg)
|
|||
|
134 1 {
|
|||
|
135 2 bCaliFlg = 0;
|
|||
|
136 2
|
|||
|
137 2 if((ucExtcaliSwitch1 & 0x01) != 0) //У<D0A3>ܵ<EFBFBD>ѹ
|
|||
|
138 2 {
|
|||
|
139 3 CaliVoltage();
|
|||
|
140 3 }
|
|||
|
141 2
|
|||
|
142 2 if((ucExtcaliSwitch1 & 0x10) != 0) //У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
143 2 {
|
|||
|
144 3 CaliCurrentGain();
|
|||
|
145 3 }
|
|||
|
146 2
|
|||
|
147 2 if((ucExtcaliSwitch1 & 0x20) != 0) //У<D0A3><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
148 2 {
|
|||
|
149 3 CaliCurZero();
|
|||
|
150 3 }
|
|||
|
151 2
|
|||
|
152 2 if((ucExtcaliSwitch1 & 0x04) != 0) //УTS1
|
|||
|
153 2 {
|
|||
|
154 3 CaliTS1();
|
|||
|
155 3 }
|
|||
|
156 2
|
|||
|
157 2 if((ucExtcaliSwitch1 & 0x08) != 0) //УTS2
|
|||
|
158 2 {
|
|||
|
159 3 CaliTS2();
|
|||
|
160 3 }
|
|||
|
161 2
|
|||
|
162 2 if((ucExtcaliSwitch1 & 0x80) != 0) //УRTC
|
|||
|
163 2 {
|
|||
|
164 3 CaliRTCTime();
|
|||
|
165 3 }
|
|||
|
166 2
|
|||
|
167 2 ucExtcaliSwitch1 = 0;
|
|||
|
168 2 bMcuFlashWrWaitFlg = 1; //<2F><><EFBFBD><EFBFBD>Flash<73><68><EFBFBD><EFBFBD>
|
|||
|
169 2 bMcuFlashWrWaitCnt = MCU_FLASH_WATI_DELAY; //<2F><><EFBFBD><EFBFBD>д
|
|||
|
170 2 }
|
|||
|
171 1 }
|
|||
|
172
|
|||
|
173
|
|||
|
174
|
|||
|
175
|
|||
|
|
|||
|
C51 COMPILER V9.01 CALIBRATE 02/06/2025 15:28:45 PAGE 4
|
|||
|
|
|||
|
|
|||
|
MODULE INFORMATION: STATIC OVERLAYABLE
|
|||
|
CODE SIZE = 469 ----
|
|||
|
CONSTANT SIZE = ---- ----
|
|||
|
XDATA SIZE = 18 2
|
|||
|
PDATA SIZE = ---- ----
|
|||
|
DATA SIZE = ---- ----
|
|||
|
IDATA SIZE = ---- ----
|
|||
|
BIT SIZE = 1 ----
|
|||
|
END OF MODULE INFORMATION.
|
|||
|
|
|||
|
|
|||
|
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
|