ZDBMS/output/Main.lst

173 lines
10 KiB
Plaintext
Raw Normal View History

2025-02-14 08:59:29 +00:00
C51 COMPILER V9.01 MAIN 02/13/2025 10:07:27 PAGE 1
2025-02-06 07:35:32 +00:00
C51 COMPILER V9.01, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\output\Main.obj
COMPILER INVOKED BY: D:\Tool\Keil\C51\BIN\C51.EXE code_app\Main.c LARGE OPTIMIZE(7,SIZE) REGFILE(.\output\MCUCore_Load.O
-RC) 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\Main.lst) OBJECT(.\output\Main.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 #include "stdio.h"
11
12 // <20><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
13 char putchar(char c)
14 {
15 1 REN = 0; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
16 1 IO_485_DE = 1; // <20><><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD>
17 1 SBUF = c; // <20><>
18 1 while(!TI);
19 1 IO_485_DE = 0; // <20>ر<EFBFBD>485<38><35><EFBFBD><EFBFBD>
20 1 TI = 0;
21 1 return c;
22 1 }
23
24 /*************************************************************************************************
25 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: main
26 * <20><> <20><>: <20><>
27 * <20><><EFBFBD><EFBFBD>ֵ: <20><>
28 * <20><> <20><>: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󣬳<EFBFBD><F3A3ACB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>While(1)<29><><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>
29 1.<2E><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>
30 2.<2E><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧģ<D3A6><C4A3><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>
31 *************************************************************************************************/
32 void main(void)
33 {
34 1 Initial(); //<2F><>ʼ<EFBFBD><CABC>ϵͳ
35 1
2025-02-08 07:27:19 +00:00
36 1 // printf("SystemClock: 8MHz");
2025-02-06 07:35:32 +00:00
37 1
38 1 while(1)
39 1 {
40 2 //KeyProcess(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
41 2
42 2 if(bTimer50msFlg) //50mS<6D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>AFE<46><45><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>ݲɼ<DDB2><C9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
43 2 {
44 3 McuWDTClear(); //<2F><>ʱ<EFBFBD>
2025-02-08 07:27:19 +00:00
45 3
2025-02-06 07:35:32 +00:00
46 3 bTimer50msFlg = 0;
47 3 AFEInfoProcess(); //<2F><>ȡAFE<46><45>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>¶ȡ<C2B6><C8A1><EFBFBD><EFBFBD><EFBFBD>
48 3
49 3 BalanceProcess(); //ƽ<><EFBFBD><E2BCB0><EFBFBD>ߴ<EFBFBD><DFB4><EFBFBD>
50 3
51 3 ProtectProcess(); //<2F><>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶ȱ<C2B6><C8B1><EFBFBD>
52 3
53 3 PorSelfTest(); //<2F><>һ<EFBFBD><D2BB><EFBFBD>ϵ籣<CFB5><E7B1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2A3A8>ʱ<EFBFBD>϶̣<CFB6><CCA3>ݶ<EFBFBD>50mSһ<53>μ<EFBFBD><CEBC>
2025-02-14 08:59:29 +00:00
C51 COMPILER V9.01 MAIN 02/13/2025 10:07:27 PAGE 2
2025-02-06 07:35:32 +00:00
54 3
55 3 LoadCheck(); //<2F><><EFBFBD><EFBFBD><E2B8BA><EFBFBD>Ƿ<EFBFBD><C7B7>ͷ<EFBFBD>
56 3
57 3 ChgerCheck(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ͷ<EFBFBD>
58 3
59 3 MosCtrl(); //MOS״̬<D7B4><CCAC><EFBFBD><EFBFBD><E2BCB0><EFBFBD><EFBFBD>
60 3
61 3 ProtectOCRecover(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Իָ<D4BB>
62 3
63 3 //LedDisplay(); //LED<45><44>ʾ
64 3
65 3 #if (UART0_DEFINE != 0)
66 3 Uart0Check(); //<2F><><EFBFBD><EFBFBD>UART0<54>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λָ<CEBB><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
67 3 #endif
68 3
69 3 #if (UART1_DEFINE != 0)
Uart1Check(); //<2F><><EFBFBD><EFBFBD>UART1<54>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λָ<CEBB><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#endif
72 3
73 3 #if (UART2_DEFINE != 0)
Uart2Check(); //<2F><><EFBFBD><EFBFBD>UART2<54>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λָ<CEBB><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#endif
76 3 }
77 2
78 2 if(bTimer1sFlg) //1s<31><73>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
79 2 {
80 3 IO_LED = ~IO_LED; //LED
81 3
2025-02-07 03:00:30 +00:00
82 3 // printf("\r\n");
83 3 // printf("BAT0:%.2f mV\r\n", AFE.uiCell[0]*1.0*CALIVOL/E2uiVPackGain);
84 3 // printf("BAT1:%.2f mV\r\n", AFE.uiCell[1]*1.0*CALIVOL/E2uiVPackGain);
85 3 // printf("BAT2:%.2f mV\r\n", AFE.uiCell[2]*1.0*CALIVOL/E2uiVPackGain);
86 3 // printf("BAT3:%.2f mV\r\n", AFE.uiCell[3]*1.0*CALIVOL/E2uiVPackGain);
87 3 // printf("BAT4:%.2f mV\r\n", AFE.uiCell[4]*1.0*CALIVOL/E2uiVPackGain);
88 3 // printf("TOTAL:%.2f mV\r\n",(AFE.uiCell[1]+AFE.uiCell[2]+AFE.uiCell[3]+AFE.uiCell[4])*1.0*CALIVOL/E2ui
-VPackGain);
89 3 //
90 3 // printf("\r\n");
91 3 // printf("TEMP I0:%.2f C\r\n", AFE.uiICTempe[0]*17.0/100.0-270);
92 3 // printf("TEMP I1:%.2f C\r\n", AFE.uiICTempe[1]*17.0/100.0-270);
93 3 // printf("TEMP E0:%.2f C\r\n", AFE.uiTS[0]*1.0);
94 3 // printf("TEMP E1:%.2f C\r\n", AFE.uiTS[1]*1.0);
95 3 //
96 3 // printf("\r\n");
97 3 // printf("CURR I1:%.2f mA\r\n", AFE.siCurr*1000.0*1000.0/16384/5);
2025-02-08 07:27:19 +00:00
98 3 // printf("\r\nBSTATUS:%x\r\n", REG.AFEBSTATUS);
2025-02-07 03:00:30 +00:00
99 3
100 3 bTimer1sFlg = 0;
101 3 GasGaugeManage(); //Calculate the battery charge and discharge capacity
102 3
103 3 AFERamCheck(); //<2F><><EFBFBD><EFBFBD>AFE<46>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>д
104 3
105 3 AFETwiCheck(); //<2F><><EFBFBD><EFBFBD>AFE<46><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5SͨѶ<CDA8><D1B6><EFBFBD><EFBFBD>
106 3 E2PRomTwiCheck(); //<2F><><EFBFBD><EFBFBD>EEPROM<4F><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5SͨѶ<CDA8><D1B6><EFBFBD><EFBFBD>
107 3 RTCTwiCheck(); //<2F><><EFBFBD><EFBFBD>RTC<54><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5SͨѶ<CDA8><D1B6><EFBFBD><EFBFBD>
2025-02-06 07:35:32 +00:00
108 3
2025-02-07 03:00:30 +00:00
109 3 if(!RamCheckProcess()) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>д
110 3 {
111 4 SysParaInit();
112 4 }
113 3
114 3 McuFlashWrWaitCheck(); //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>²<EFBFBD><C2B2><EFBFBD><EFBFBD><EFBFBD>MCU Flash
2025-02-14 08:59:29 +00:00
C51 COMPILER V9.01 MAIN 02/13/2025 10:07:27 PAGE 3
2025-02-06 07:35:32 +00:00
2025-02-07 03:00:30 +00:00
115 3
116 3 E2PRomBKCheck(); //<2F><><EFBFBD><EFBFBD>EEPROM
117 3
118 3 //LowPowerCheck(); //<2F>͹<EFBFBD><CDB9>ļ<EFBFBD><C4BC><EFBFBD>
119 3
120 3
121 3 }
122 2
123 2 SystemResetProcess(); //ϵͳ<CFB5><CDB3>λ
124 2
125 2 ISPProcess(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
126 2
127 2 CaliProcess(); //У׼
128 2
129 2 McuFlashProcess(); //<2F><><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD>MCU Flash<73><68>
130 2
131 2 E2PRomBKProcess(); //<2F><><EFBFBD><EFBFBD>EEPROM<4F><4D><EFBFBD><EFBFBD>
2025-02-06 07:35:32 +00:00
132 2
2025-02-07 03:00:30 +00:00
133 2 //LowPowerProcess(); //<2F>͹<EFBFBD><CDB9>Ĵ<EFBFBD><C4B4><EFBFBD>
134 2
135 2 Info.uiPackStatus = uiPackStatus; //<2F><><EFBFBD><EFBFBD>PACK<43><4B>Battery<72><79><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>UART<52><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
136 2 Info.uiBatStatus = uiBatStatus;
137 2
138 2 }
139 1 }
140
141
142
2025-02-06 07:35:32 +00:00
MODULE INFORMATION: STATIC OVERLAYABLE
2025-02-08 07:27:19 +00:00
CODE SIZE = 124 ----
CONSTANT SIZE = ---- ----
2025-02-06 07:35:32 +00:00
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)