C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 1 C51 COMPILER V9.01, COMPILATION OF MODULE INITIAL OBJECT MODULE PLACED IN .\output\Initial.obj COMPILER INVOKED BY: D:\Tool\Keil\C51\BIN\C51.EXE code_app\Initial.c LARGE OPTIMIZE(7,SIZE) REGFILE(.\output\MCUCore_Loa -d.ORC) BROWSE INTVECTOR(0X1000) INCDIR(.\header_app;.\header_drv;.\code_gasguage;.\code_classb\iec60730_lib\include;.\co -de_classb\iec60730_proc\Include;.\code_classb\config) DEBUG OBJECTEXTEND PRINT(.\output\Initial.lst) OBJECT(.\output\Ini -tial.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 * 函数名: InitVar 14 * 参 数: 无 15 * 返回值: 无 16 * 描 述: 初始化变量,主要是非0变量。在ClrRam()函数中,已将所有Xdata/Idata/Data区全部清零 17 *************************************************************************************************/ 18 void InitVar(void) 19 { 20 1 ucBalanceStep = BALANCE_ENABLE; 21 1 MemorySet((U8 xdata *)slCadcCurBuf, 0, sizeof(slCadcCurBuf)); 22 1 MemorySet((U8 xdata *)Info.uiVCell, 0, sizeof(Info.uiVCell)); 23 1 Info.uiTS[0] = 2731; 24 1 Info.uiTS[1] = 2731; 25 1 26 1 bSlowDischarge = 0; 27 1 bMidDischarge = 0; 28 1 ucDsgingSpeed = 2; 29 1 bFastDischarge = 1; 30 1 bPorSelfTestFlg = 1; 31 1 32 1 ucTempeMiddle = 80; 33 1 } 34 35 /************************************************************************************************* 36 * 函数名: SysParaInit 37 * 参 数: 无 38 * 返回值: 无 39 * 描 述: 从MCU Flash参数区读取数据,并针对部分变量进行初始化 40 *************************************************************************************************/ 41 void SysParaInit(void) 42 { 43 1 if(McuFlashCheckFlg(MCUFLASH_BK1_FLG_ADDR)) 44 1 { 45 2 McuFlashRead(MCUFLASH_BK1_ADDR, XRAM_MAP_ADDR, 512); 46 2 if(!McuFlashCheckFlg(MCUFLASH_BK2_FLG_ADDR)) 47 2 { 48 3 McuFlashWrite(MCUFLASH_BK2_ADDR, XRAM_MAP_ADDR); //更新备份区2 49 3 } 50 2 } 51 1 else if(McuFlashCheckFlg(MCUFLASH_BK2_FLG_ADDR)) 52 1 { C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 2 53 2 McuFlashRead(MCUFLASH_BK2_ADDR, XRAM_MAP_ADDR, 512); 54 2 McuFlashWrite(MCUFLASH_BK1_ADDR, XRAM_MAP_ADDR); //更新备份区1 55 2 } 56 1 else 57 1 { 58 2 bMcuFlashErr = 1; 59 2 return; 60 2 } 61 1 62 1 uiPackConfig = E2uiPackConfigMap; 63 1 Info.uiPackConfig = uiPackConfig; 64 1 Info.ulFCC = E2ulFCC; 65 1 Info.uiCycleCount = E2uiCycleCount; 66 1 67 1 ucCellNum = (uiPackConfig&0x0007)+3; //根据配置初始化电芯串数和Offset 68 1 69 1 if(ucCellNum==5 || ucCellNum==10) 70 1 { 71 2 ucCellNumOffset = 0; 72 2 } 73 1 else if(ucCellNum==4 || ucCellNum==9) 74 1 { 75 2 ucCellNumOffset = 1; 76 2 } 77 1 else 78 1 { 79 2 ucCellNumOffset = 2; 80 2 } 81 1 } 82 83 /************************************************************************************************* 84 * 函数名: InitIRQ 85 * 参 数: 无 86 * 返回值: 无 87 * 描 述: 初始化中断 88 *************************************************************************************************/ 89 void InitIRQ(void) 90 { 91 1 IrqDis(); //关闭总中断源 92 1 #if (UART0_DEFINE != 0) 93 1 IrqUart0En(); //初始化UART0中断使能,根据具体使用UART模块来进行选择 //检查UART -0是否正常,如果不正常,则复位指针向量 94 1 #endif 95 1 #if (UART1_DEFINE != 0) IrqUart1En(); //初始化UART1中断使能,根据具体使用UART模块来进行选择 #endif 98 1 #if (UART2_DEFINE != 0) IrqUart2En(); //初始化UART2中断使能,根据具体使用UART模块来进行选择 #endif 101 1 102 1 IrqTimer3FlgClr(); //使能Timer3中断 103 1 IrqTimer3En(); 104 1 105 1 IrqINT4xChEn(INT4_EXS45 | INT4_EXS46); 106 1 IrqINT4Trig(INT4_TRIG_FALLING); //下降沿触发 107 1 IrqINT4FlgClr(); //清外部中断标志 108 1 IrqINT4En(); //使能外部中断4 109 1 110 1 IrqEn(); 111 1 } 112 113 C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 3 114 /************************************************************************************************* 115 * 函数名: InitGPIO 116 * 参 数: 无 117 * 返回值: 无 118 * 描 述: 初始化I/O端口,未使用的I/O,默认配置为输出低电平,降低MCU功耗 119 P0.7[TXD], P0.6[RXD], P0.5[SCL], P0.4[SDA], P0.3[BLPW], P0.2[], P0.1[], P0.0[], 120 P0.7ST[1], P0.6ST[1], P0.5ST[1], P0.4ST[1], P0.3ST[1], P0.2ST[0], P0.1ST[0], P0.0ST[0], P0 = 0xF8; 121 P0.7CR[1], P0.6CR[0], P0.5CR[0], P0.4CR[0], P0.3CR[1], P0.2CR[1], P0.1CR[1], P0.0CR[1], P0CR = 0x8 -F; 122 P0.7PC[1], P0.6PC[1], P0.5PC[0], P0.4PC[0], P0.3PC[1], P0.2PC[0], P0.1PC[0], P0.0PC[0], P0PCR = 0x -C8; 123 124 P1.7[RESET],P1.6[], P1.5[], P1.4[], P1.3[], P1.2[], P1.1[], P1.0[], 125 P1.7ST[1], P1.6ST[0], P1.5ST[0], P1.4ST[0], P1.3ST[0], P1.2ST[0], P1.1ST[0], P1.0ST[0], P1 = 0x80; 126 P1.7CR[0], P1.6CR[1], P1.5CR[1], P1.4CR[1], P1.3CR[1], P1.2CR[1], P1.1CR[1], P1.0CR[1], P1CR = 0x7 -F; 127 P1.7PC[1], P1.6PC[0], P1.5PC[0], P1.4PC[0], P1.3PC[0], P1.2PC[0], P1.1PC[0], P1.0PC[0], P1PCR = 0x -80; 128 129 P2.7[KEY_M],P2.6[ALARM],P2.5[CTLD], P2.4[LED5], P2.3[LED4], P2.2[LED3], P2.1[LED2], P2.0[LED1], 130 P2.7ST[1], P2.6ST[1], P2.5ST[1], P2.4ST[0], P2.3ST[0], P2.2ST[0], P2.1ST[0], P2.0ST[0], P2 = 0xE0; 131 P2.7CR[0], P2.6CR[0], P2.5CR[1], P2.4CR[1], P2.3CR[1], P2.2CR[1], P2.1CR[1], P2.0CR[1], P2CR = 0x3 -F; 132 P2.7PC[1], P2.6PC[1], P2.5PC[0], P2.4PC[0], P2.3PC[0], P2.2PC[0], P2.1PC[0], P2.0PC[0], P2PCR = 0x -C0; 133 134 P3.7[], P3.6[], P3.5[LED6], P3.4[XTAL1],P3.3[XTAL2],P3.2[], P3.1[], P3.0[KLED], 135 P3.7ST[0], P3.6ST[0], P3.5ST[0], P3.4ST[1], P3.3ST[1], P3.2ST[0], P3.1ST[0], P3.0ST[1], P3 = 0x19; 136 P3.7CR[1], P3.6CR[1], P3.5CR[1], P3.4CR[0], P3.3CR[0], P3.2CR[1], P3.1CR[1], P3.0CR[0], P3CR = 0xE -6; 137 P3.7PC[0], P3.6PC[0], P3.5PC[0], P3.4PC[1], P3.3PC[1], P3.2PC[0], P3.1PC[0], P3.0PC[1], P3PCR = 0x -19; 138 *************************************************************************************************/ 139 /************************************************************************************************* 140 * 函数名: InitGPIO_SL 141 * 参 数: 无 142 * 返回值: 无 143 * 描 述: 初始化I/O端口,未使用的I/O,默认配置为输出低电平,降低MCU功耗 144 P0.7[TX], P0.6[RX], P0.5[SCL], P0.4[SDA], P0.3[], P0.2[], P0.1[], P0.0[], IO状态:P0.[ -7,6,5,4,3]有效 145 P0.7ST[1], P0.6ST[1], P0.5ST[1], P0.4ST[1], P0.3ST[0], P0.2ST[0], P0.1ST[0], P0.0ST[0], P0 = 0xF0; - IO状态:P0.[7,6,5,4,3]有效 146 P0.7CR[1], P0.6CR[0], P0.5CR[0], P0.4CR[0], P0.3CR[1], P0.2CR[1], P0.1CR[1], P0.0CR[1], P0CR = 0x8 -F; IO方向:P0.[7,6,5,4,3]有效,1输出,0输入 147 P0.7PC[1], P0.6PC[1], P0.5PC[0], P0.4PC[0], P0.3PC[0], P0.2PC[0], P0.1PC[0], P0.0PC[0], P0PCR = 0x -C0; 内部上拉:1开启,0关闭 148 149 P1.7[RESET],P1.6[], P1.5[], P1.4[], P1.3[], P1.2[], P1.1[], P1.0[], IO状态:P1.[7,6,5,4 -,3,2]有效 150 P1.7ST[1], P1.6ST[0], P1.5ST[0], P1.4ST[0], P1.3ST[0], P1.2ST[0], P1.1ST[0], P1.0ST[0], P1 = 0x80; - IO状态:P1.[7,6,5,4,3,2]有效 151 P1.7CR[0], P1.6CR[1], P1.5CR[1], P1.4CR[1], P1.3CR[1], P1.2CR[1], P1.1CR[1], P1.0CR[1], P1CR = 0x7 -F; IO方向:P1.[7,6,5,4,3,2]有效,1输出,0输入 152 P1.7PC[1], P1.6PC[0], P1.5PC[0], P1.4PC[0], P1.3PC[0], P1.2PC[0], P1.1PC[0], P1.0PC[0], P1PCR = 0x -80; 内部上拉:1开启,0关闭 153 154 P2.7[], P2.6[ALARM],P2.5[], P2.4[LED], P2.3[], P2.2[], P2.1[], P2.0[485_DE], IO状态:P2.[7,6,5, -4,3,2,1,0]有效 155 P2.7ST[0], P2.6ST[1], P2.5ST[0], P2.4ST[0], P2.3ST[0], P2.2ST[1], P2.1ST[1], P2.0ST[0], P2 = 0x46; - IO状态:P2.[7,6,5,4,3,2,1,0]有效 156 P2.7CR[1], P2.6CR[0], P2.5CR[1], P2.4CR[1], P2.3CR[1], P2.2CR[0], P2.1CR[1], P2.0CR[1], P2CR = 0xB -B; IO方向:P2.[7,6,5,4,3,2,1,0]有效,1输出,0输入 C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 4 157 P2.7PC[0], P2.6PC[1], P2.5PC[0], P2.4PC[0], P2.3PC[0], P2.2PC[1], P2.1PC[1], P2.0PC[1], P2PCR = 0x -46; 内部上拉:1开启,0关闭 158 159 P3.7[], P3.6[], P3.5[BAT_V_C], P3.4[XTAL1],P3.3[XTAL2],P3.2[], P3.1[], P3.0[BAT_V], I -O状态:P3.[5,4,3,...,0]有效 160 P3.7ST[0], P3.6ST[0], P3.5ST[0], P3.4ST[1], P3.3ST[1], P3.2ST[0], P3.1ST[0], P3.0ST[0], P3 = 0 -x18; IO状态:P3.[5,4,3,...,0]有效 161 P3.7CR[1], P3.6CR[1], P3.5CR[1], P3.4CR[0], P3.3CR[0], P3.2CR[1], P3.1CR[1], P3.0CR[0], P3CR = - 0xE6; IO方向:P3.[5,4,3,...,0]有效,1输出,0输入 162 P3.7PC[0], P3.6PC[0], P3.5PC[0], P3.4PC[1], P3.3PC[1], P3.2PC[0], P3.1PC[0], P3.0PC[0], P3PCR = 0 -x18; 内部上拉:1开启,0关闭 163 *************************************************************************************************/ 164 void InitGPIO(void) 165 { 166 1 167 1 P0 = 0xF0; 168 1 P0CR = 0x8F; 169 1 P0PCR = 0xC0; 170 1 171 1 P1 = 0x80; 172 1 P1CR = 0x7F; 173 1 P1PCR = 0x80; 174 1 175 1 P2 = 0x46; 176 1 P2CR = 0xBB; 177 1 P2PCR = 0x46; 178 1 179 1 P3 = 0x18; 180 1 P3CR = 0xE6; 181 1 P3PCR = 0x18; 182 1 183 1 //UART0相关IO配置 串口功能映射时注意配置相应IO口的寄存器值,保证功能可正常实现 184 1 #if (UART0_DEFINE == 1) 185 1 P0 |= 0xC0; 186 1 P0PCR |= 0x80; 187 1 #endif 188 1 189 1 #if (UART0_DEFINE == 2) P0 |= 0x40; P2 |= 0x10; P2PCR |= 0x10; #endif 194 1 195 1 #if (UART0_DEFINE == 3) P0 |= 0x40; P2 |= 0x20; P2PCR |= 0x20; #endif 200 1 201 1 #if (UART0_DEFINE == 4) P0 |= 0x41; P0PCR |= 0x01; #endif 205 1 206 1 #if (UART0_DEFINE == 5) P0 |= 0x42; P0PCR |= 0x02; #endif 210 1 211 1 #if (UART0_DEFINE == 6) P0 |= 0xC0; P0PCR |= 0x40; C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 5 #endif 215 1 216 1 #if (UART0_DEFINE == 7) P0 |= 0x80; P2 |= 0x10; P2PCR |= 0x10; #endif 221 1 222 1 #if (UART0_DEFINE == 8) P0 |= 0x80; P2 |= 0x20; P2PCR |= 0x20; #endif 227 1 228 1 #if (UART0_DEFINE == 9) P0 |= 0x81; P0PCR |= 0x01; #endif 232 1 233 1 #if (UART0_DEFINE == 10) P0 |= 0x82; P0PCR |= 0x02; #endif 237 1 238 1 #if (UART0_DEFINE == 11) P0 |= 0x40; P2 |= 0x10; P0PCR |= 0x40; #endif 243 1 244 1 #if (UART0_DEFINE == 12) P0 |= 0x80; P2 |= 0x10; P0PCR |= 0x80; #endif 249 1 250 1 #if (UART0_DEFINE == 13) P2 |= 0x30; P2PCR |= 0x20; #endif 254 1 255 1 #if (UART0_DEFINE == 14) P0 |= 0x01; P2 |= 0x10; P0PCR |= 0x01; #endif 260 1 261 1 #if (UART0_DEFINE == 15) P0 |= 0x02; P2 |= 0x10; P0PCR |= 0x02; #endif 266 1 267 1 #if (UART0_DEFINE == 16) P0 |= 0x40; P2 |= 0x20; P0PCR |= 0x40; #endif 272 1 273 1 #if (UART0_DEFINE == 17) P0 |= 0x80; P2 |= 0x20; C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 6 P0PCR |= 0x80; #endif 278 1 279 1 #if (UART0_DEFINE == 18) P2 |= 0x30; P2PCR |= 0x10; #endif 283 1 284 1 #if (UART0_DEFINE == 19) P0 |= 0x01; P2 |= 0x20; P0PCR |= 0x01; #endif 289 1 290 1 #if (UART0_DEFINE == 20) P0 |= 0x02; P2 |= 0x20; P0PCR |= 0x02; #endif 295 1 296 1 #if (UART0_DEFINE == 21) P0 |= 0x81; P0PCR |= 0x80; #endif 300 1 301 1 #if (UART0_DEFINE == 22) P0 |= 0x01; P2 |= 0x10; P2PCR |= 0x10; #endif 306 1 307 1 #if (UART0_DEFINE == 23) P0 |= 0x01; P2 |= 0x20; P2PCR |= 0x20; #endif 312 1 313 1 #if (UART0_DEFINE == 24) P0 |= 0x41; P0PCR |= 0x40; #endif 317 1 318 1 #if (UART0_DEFINE == 25) P0 |= 0x03; P0PCR |= 0x02; #endif 322 1 323 1 #if (UART0_DEFINE == 26) P0 |= 0x82; P0PCR |= 0x80; #endif 327 1 328 1 #if (UART0_DEFINE == 27) P0 |= 0x02; P2 |= 0x10; P2PCR |= 0x10; #endif 333 1 334 1 #if (UART0_DEFINE == 28) P0 |= 0x02; P2 |= 0x20; P2PCR |= 0x20; C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 7 #endif 339 1 340 1 #if (UART0_DEFINE == 29) P0 |= 0x42; P0PCR |= 0x40; #endif 344 1 345 1 #if (UART0_DEFINE == 30) P0 |= 0x03; P0PCR |= 0x01; #endif 349 1 350 1 //UART1相关IO配置 351 1 #if (UART1_DEFINE == 1) P1 |= 0x03; P1PCR |= 0x02; #endif 355 1 356 1 #if (UART1_DEFINE == 2) P1 |= 0x01; P3 |= 0x08; P3PCR |= 0x08; #endif 361 1 362 1 #if (UART1_DEFINE == 3) P1 |= 0x01; P3 |= 0x10; P3PCR |= 0x10; #endif 367 1 368 1 #if (UART1_DEFINE == 4) P1 |= 0x01; P2 |= 0x40; P2PCR |= 0x40; #endif 373 1 374 1 #if (UART1_DEFINE == 5) P1 |= 0x01; P2 |= 0x80; P2PCR |= 0x80; #endif 379 1 380 1 #if (UART1_DEFINE == 6) P1 |= 0x03; P1PCR |= 0x01; #endif 384 1 385 1 #if (UART1_DEFINE == 7) P1 |= 0x02; P3 |= 0x08; P3PCR |= 0x08; #endif 390 1 391 1 #if (UART1_DEFINE == 8) P1 |= 0x02; P3 |= 0x10; P3PCR |= 0x10; #endif 396 1 397 1 #if (UART1_DEFINE == 9) P1 |= 0x02; P2 |= 0x40; C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 8 P2PCR |= 0x40; #endif 402 1 403 1 #if (UART1_DEFINE == 10) P1 |= 0x02; P2 |= 0x80; P2PCR |= 0x80; #endif 408 1 409 1 #if (UART1_DEFINE == 11) P1 |= 0x01; P3 |= 0x08; P1PCR |= 0x01; #endif 414 1 415 1 #if (UART1_DEFINE == 12) P1 |= 0x02; P3 |= 0x08; P1PCR |= 0x01; #endif 420 1 421 1 #if (UART1_DEFINE == 13) P3 |= 0x18; P3PCR |= 0x10; #endif 425 1 426 1 #if (UART1_DEFINE == 14) P3 |= 0x08; P2 |= 0x40; P2PCR |= 0x40; #endif 431 1 432 1 #if (UART1_DEFINE == 15) P3 |= 0x08; P2 |= 0x80; P2PCR |= 0x80; #endif 437 1 438 1 #if (UART1_DEFINE == 16) P1 |= 0x01; P3 |= 0x10; P1PCR |= 0x01; #endif 443 1 444 1 #if (UART1_DEFINE == 17) P1 |= 0x02; P3 |= 0x10; P1PCR |= 0x02; #endif 449 1 450 1 #if (UART1_DEFINE == 18) P3 |= 0x18; P3PCR |= 0x08; #endif 454 1 455 1 #if (UART1_DEFINE == 19) P3 |= 0x10; P2 |= 0x40; P2PCR |= 0x40; #endif 460 1 461 1 #if (UART1_DEFINE == 20) C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 9 P3 |= 0x10; P2 |= 0x80; P2PCR |= 0x80; #endif 466 1 467 1 #if (UART1_DEFINE == 21) P1 |= 0x01; P2 |= 0x40; P1PCR |= 0x01; #endif 472 1 473 1 #if (UART1_DEFINE == 22) P1 |= 0x02; P2 |= 0x40; P1PCR |= 0x02; #endif 478 1 479 1 #if (UART1_DEFINE == 23) P2 |= 0x40; P3 |= 0x08; P3PCR |= 0x08; #endif 484 1 485 1 #if (UART1_DEFINE == 24) P3 |= 0x10; P2 |= 0x40; P3PCR |= 0x10; #endif 490 1 491 1 #if (UART1_DEFINE == 25) P2 |= 0xC0; P2PCR |= 0x80; #endif 495 1 496 1 #if (UART1_DEFINE == 26) P1 |= 0x01; P2 |= 0x80; P1PCR |= 0x01; #endif 501 1 502 1 #if (UART1_DEFINE == 27) P1 |= 0x02; P2 |= 0x80; P1PCR |= 0x02; #endif 507 1 508 1 #if (UART1_DEFINE == 28) P2 |= 0x80; P3 |= 0x08; P3PCR |= 0x08; #endif 513 1 514 1 #if (UART1_DEFINE == 29) P3 |= 0x10; P2 |= 0x80; P3PCR |= 0x10; #endif 519 1 520 1 #if (UART1_DEFINE == 30) P2 |= 0xC0; P2PCR |= 0x40; #endif C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 10 524 1 525 1 //UART2相关IO配置,当前demo板此串口做LED灯显示功能,不支持串口通讯,故demo板配置为不使能uart2串口功能 526 1 #if (UART2_DEFINE == 1) P2 |= 0x06; P2PCR |= 0x04; #endif 530 1 } 531 532 /************************************************************************************************* 533 * 函数名: Initial 534 * 参 数: 无 535 * 返回值: 无 536 * 描 述: 初始化 537 *************************************************************************************************/ 538 void Initial(void) 539 { 540 1 McuClockSet(MCU_CLK_24MHz); //设置系统工作在24MHz 541 1 542 1 InitGPIO(); //初始化GPIO 543 1 544 1 // ClrRam(); //清空MCU RAM(XDATA、IDATA、DATA) 545 1 546 1 SysParaInit(); //初始化系统参数 547 1 548 1 InitVar(); //初始化变量 549 1 550 1 McuTimer3Set(TIM_CLK_128KHz, 5); //初始化Timer,采用128KHz外置晶振,周期为5mS 551 1 552 1 #if (UART0_DEFINE != 0) 553 1 UART0Init(); //初始化UART0模块,9600Bps 554 1 #endif 555 1 556 1 #if (UART1_DEFINE != 0) UART1Init(); //初始化UART0模块,9600Bps #endif 559 1 560 1 #if (UART2_DEFINE != 0) UART2Init(); //初始化UART0模块,9600Bps #endif 563 1 564 1 TwiInit(); //初始化TWI模块,通讯频率为100Khz 565 1 566 1 McuPWM2Set(4000, 100); //初始化PWM2,占空比100% 567 1 568 1 AFEInitReg(); //初始化AFE寄存器 569 1 if(!AFEInit()) //初始化AFE,MCU是由AFE的V33供电的,当MCU工作时,AFE已经准备好通讯了 570 1 { 571 2 bAfeErr = 1; 572 2 } 573 1 AFEClrFlg(); //清零AFE状态寄存器 574 1 575 1 if(bEnEEPRomBK) 576 1 { 577 2 if(!E2PRomInit()) 578 2 { 579 3 bE2PRErr = 1; //外挂EEPROM模块出错 580 3 } 581 2 582 2 if(!RTCInitTime(&RTC)) 583 2 { 584 3 bRTCErr = 1; //外置RTC模块出错 585 3 } C51 COMPILER V9.01 INITIAL 02/06/2025 15:28:44 PAGE 11 586 2 } 587 1 588 1 InitIRQ(); //初始化中断 589 1 } MODULE INFORMATION: STATIC OVERLAYABLE CODE SIZE = 376 ---- CONSTANT SIZE = ---- ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- DATA SIZE = ---- ---- IDATA SIZE = ---- ---- BIT SIZE = ---- ---- END OF MODULE INFORMATION. C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)