ROBOT_V2 APP 汽车电子静态测试报告

范围:业务代码 Algorithm/、device/、sys/、main.cpp、main.h;排除第三方 GD32 RTE。
本版本已加入补充筛查:Doxygen 覆盖、全局状态、switch default、无限循环、关中断成对性、ISR、magic number、浮点比较等。只生成报告,不修改源码逻辑。
未发现 Error 级硬性高风险项
扫描文件数
29
非空代码行估算
4272
主规则 Warning
40
补充 Warning
207

主规则命中分布

AUTO-ARRAY-001251
AUTO-CAST-001223
AUTO-FUNC-00231
AUTO-MACRO-00129
AUTO-ASM-00110
AUTO-CTRL-0026
AUTO-MET-0013

补充规则命中分布

SUP-MAG-001439
SUP-GLB-001189
SUP-GLB-00247
SUP-ISR-00118
SUP-CMP-00114
SUP-DOC-00112
SUP-LOOP-0014
SUP-IRQ-0013
SUP-SW-0011

高优先级结论

可保存修复确认清单

每条审查项都可以打勾。勾选状态会自动保存到当前浏览器的 localStorage。Chromium 浏览器还可以点“绑定进度 JSON 文件”,授权后每次勾选都会同步写入该 JSON;每次打开可点“读取绑定文件”恢复。为防止换电脑或清缓存丢失,也可以用“导出/导入进度 JSON”。
0 / 254
文件同步:未绑定
本清单共 254 项:error 0,warning 250,info 4。保存键:robot_v2_app_static_report_checklist_v1
确认级别分组规则位置说明证据建议
warning 主规则 AUTO-CTRL-002 device/Can.cpp:1124 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-CTRL-002 device/Can.cpp:1194 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-CTRL-002 device/Can.cpp:1199 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-CTRL-002 main.cpp:80 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-CTRL-002 sys/flash.cpp:693 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-CTRL-002 sys/systick.cpp:264 continue 需避免或说明偏离 continue; 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:100 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:161 printf/格式化输出需确认调试隔离和实时性影响 printf("", 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:195 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:198 printf/格式化输出需确认调试隔离和实时性影响 printf("", angle_deg, cogging_table[i]); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:203 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:206 printf/格式化输出需确认调试隔离和实时性影响 printf("", angle_deg, cogging_table_rev[i]); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:211 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:212 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:214 printf/格式化输出需确认调试隔离和实时性影响 if (i % 8 == 0) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:215 printf/格式化输出需确认调试隔离和实时性影响 printf("", cogging_table[i]); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:216 printf/格式化输出需确认调试隔离和实时性影响 if (i < COGGING_TABLE_SIZE - 1) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:217 printf/格式化输出需确认调试隔离和实时性影响 if (i % 8 == 7 || i == COGGING_TABLE_SIZE - 1) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:220 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:223 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:224 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:226 printf/格式化输出需确认调试隔离和实时性影响 if (i % 8 == 0) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:227 printf/格式化输出需确认调试隔离和实时性影响 printf("", cogging_table_rev[i]); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:228 printf/格式化输出需确认调试隔离和实时性影响 if (i < COGGING_TABLE_SIZE - 1) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:229 printf/格式化输出需确认调试隔离和实时性影响 if (i % 8 == 7 || i == COGGING_TABLE_SIZE - 1) printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:232 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 Algorithm/FOC.cpp:234 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 device/Can.cpp:30 printf/格式化输出需确认调试隔离和实时性影响 #define CAN_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 device/ang_sensor.cpp:22 printf/格式化输出需确认调试隔离和实时性影响 #define ANG_SENS_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 device/motor.cpp:38 printf/格式化输出需确认调试隔离和实时性影响 printf(""); 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 main.cpp:22 printf/格式化输出需确认调试隔离和实时性影响 #define MAIN_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/flash.cpp:22 printf/格式化输出需确认调试隔离和实时性影响 #define EEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/flash.cpp:31 printf/格式化输出需确认调试隔离和实时性影响 #define OTA_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/initial.cpp:23 printf/格式化输出需确认调试隔离和实时性影响 #define OTA_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/initial.cpp:32 printf/格式化输出需确认调试隔离和实时性影响 #define EEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/initial.cpp:129 printf/格式化输出需确认调试隔离和实时性影响 snprintf(buffer, bufSize, "", version.major, version.minor, 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-FUNC-002 sys/systick.cpp:47 printf/格式化输出需确认调试隔离和实时性影响 #define SLEEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__) 人工确认是否符合项目编码规范;如合理则记录偏离说明。
warning 主规则 AUTO-MET-001 Algorithm/FOC.cpp:75 圈复杂度 33 超过建议阈值 15 FOC_Controller::calibrate_cogging_tick 建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。
warning 主规则 AUTO-MET-001 device/Can.cpp:1076 圈复杂度 27 超过建议阈值 15 CAN_transmiter::communication_check 建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。
warning 主规则 AUTO-MET-001 main.cpp:120 圈复杂度 17 超过建议阈值 15 do_task 建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:53 浮点变量比较需确认容差或离散状态含义 if (rt_velocity < -0.5f) last_table = cogging_table_rev; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:54 浮点变量比较需确认容差或离散状态含义 else if (rt_velocity > 0.5f) last_table = cogging_table; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:404 浮点变量比较需确认容差或离散状态含义 u8 sector_code = (X > 0.0f ? 1u : 0u) 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:405 浮点变量比较需确认容差或离散状态含义 + (Y > 0.0f ? 2u : 0u) 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:406 浮点变量比较需确认容差或离散状态含义 + (Z > 0.0f ? 4u : 0u); 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:534 浮点变量比较需确认容差或离散状态含义 if (HOLD_PWM_DUTY > 0.95f) { 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:536 浮点变量比较需确认容差或离散状态含义 } else if (HOLD_PWM_DUTY < 0.0f) { 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:569 浮点变量比较需确认容差或离散状态含义 if (voltage < 36.0f and voltage > 8.0f) { 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:763 浮点变量比较需确认容差或离散状态含义 if (target_velocity < -120.0f) { 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/FOC.cpp:765 浮点变量比较需确认容差或离散状态含义 } else if (target_velocity < -30.0f) { 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/Filter.cpp:190 浮点变量比较需确认容差或离散状态含义 if (error > 180.0f) error -= 360.0f; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 Algorithm/Filter.cpp:191 浮点变量比较需确认容差或离散状态含义 else if (error < -180.0f) error += 360.0f; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 sys/config.h:427 浮点变量比较需确认容差或离散状态含义 while (angle >= 360.0f) angle -= 360.0f; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-CMP-001 sys/config.h:428 浮点变量比较需确认容差或离散状态含义 while (angle < 0.0f) angle += 360.0f; 建议确认是否应使用阈值/容差比较。
warning 补充筛查 SUP-GLB-001 Algorithm/FOC.cpp:23 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 FOC_Controller FOC; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:20 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ADC_SCALE = 3.3f / 4096.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:22 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float TEMP_FACTOR = 1000.0f / 4.3f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:24 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VCC_FACTOR = 11.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:26 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_FACTOR = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:30 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 sampler sampler; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ADC.cpp:33 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 adc_current_frame_ready = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:37 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANX = CAN0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:48 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 dma_parameter_struct dma_rx_parameter; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:51 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile bool can_rx_dma_busy = false; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:52 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static can_receive_message_struct can_rx_dma_message; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:72 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 rx_queue_head = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:73 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 rx_queue_tail = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:74 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 rx_queue_count = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:77 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 tx_queue_head = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:78 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 tx_queue_tail = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:79 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static volatile u8 tx_queue_count = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Can.cpp:84 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 CAN_transmiter CAN0_transmiter; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/Timer.cpp:18 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile u32 total_us100_counter = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ang_sensor.cpp:38 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile bool spi_dma_tx_complete = false; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ang_sensor.cpp:39 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile bool spi_dma_rx_complete = false; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 device/ang_sensor.cpp:41 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 angle_sensor KTH7823; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 main.cpp:39 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 TaskScheduler scheduler = {0}; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 main.cpp:40 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 u32 motor_runtime_50us = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 main.cpp:41 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 u32 cnt_test = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:32 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 SOFTWARE_VERSION_MAJOR = 26; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:34 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 SOFTWARE_VERSION_MINOR = 5; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:36 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 SOFTWARE_VERSION_PATCH = 19; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:38 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 SOFTWARE_VERSION_BUILD = 2; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:41 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 HARDWARE_VERSION_MAJOR = 25; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:43 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 HARDWARE_VERSION_MINOR = 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:45 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 HARDWARE_VERSION_PATCH = 01; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:47 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 HARDWARE_VERSION_BUILD = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:50 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 BOOT_VERSION_MAJOR = 26; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:52 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 BOOT_VERSION_MINOR = 1; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:54 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 BOOT_VERSION_PATCH = 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:56 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 BOOT_VERSION_BUILD = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:60 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 BOOTLOADER_SIZE = 0x6000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:62 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 BOOTLOADER_START_ADDR = 0x08000000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:64 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 APPLATEST_START_ADDR = 0x08012000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:66 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 APPBACK_START_ADDR = 0x08006000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:68 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 APP_MAX_SIZE = 0xC000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:70 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 FMC_PAGE_SIZE = 0x400; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:72 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 SLEEP_CONFIG_START = 0x0801E400; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:74 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 SLEEP_CONFIG_END = 0x0801E800; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:76 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 FLASH_EMPTY = 0xFFFFFFFF; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:78 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 SLEEP_ENABLE = 0x11111111; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:80 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 SLEEP_DISABLE = 0x00000000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:92 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 NODE_ID_PAGE_ADDR = 0x0801E800; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:94 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 NODE_ID_PRIMARY_ADDR = 0x0801E800; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:96 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 NODE_ID_BACKUP_ADDR = 0x0801E840; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:98 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 NODE_ID_MAGIC = 0x4E4F4445; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:100 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 DEFAULT_NODE_ID = 1; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:102 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 BROADCAST_NODE_ID = 0x1FFF; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:104 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 MAX_NODE_ID = 0x1FFE; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:113 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 NODE_ID_STRUCT_SIZE = 0x10; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:115 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 NODE_ID_MAGIC_OFFSET = 0x00; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:117 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 NODE_ID_VALUE_OFFSET = 0x04; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:119 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 NODE_ID_COUNTER_OFFSET = 0x08; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:121 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 NODE_ID_CRC_OFFSET = 0x0C; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:125 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 OTA_CONFIG_NUM = 6; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:127 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_LATEST_AVAL_ADDR = 0x0801E000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:129 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_BACKUP_AVAL_ADDR = 0x0801E004; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:131 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_LATEST_EN_ADDR = 0x0801E008; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:133 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_BACKUP_EN_ADDR = 0x0801E00C; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:135 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_LATEST_CHECK_ADDR = 0x0801E010; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:137 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 n_APP_BACKUP_CHECK_ADDR = 0x0801E014; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:139 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 OTA_NOT_AVAL = 0xFFFFFFFF; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:141 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 OTA_AVAL = 0x00000000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:145 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 PP = 11; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:147 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DIR = 1.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:149 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 REDUCTION_RATIO = 25; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:151 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_OFFSET = -3.31f / 2.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:153 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float HOLD_PWM_DUTY = 0.1f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:155 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 ANGLESENS_OFFSET = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:157 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLESENS_CALIBRATION_ANGLE = 83.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:159 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float KE_FACTOR = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:163 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_KALMAN_INITIAL_STATE = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:165 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_KALMAN_INITIAL_COVARIANCE = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:167 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_KALMAN_PROCESS_NOISE_Q = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:169 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_KALMAN_MEASUREMENT_NOISE_R = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:171 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_OBSERVER_ALPHA = 0.75f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:173 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_OBSERVER_BETA = 0.002f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:177 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VELOCITY_KALMAN_INITIAL_STATE = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:179 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VELOCITY_KALMAN_INITIAL_COVARIANCE = 1e-3f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:181 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VELOCITY_KALMAN_PROCESS_NOISE_Q = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:184 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VELOCITY_KALMAN_MEASUREMENT_NOISE_R = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:189 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_KALMAN_INITIAL_STATE = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:191 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_KALMAN_INITIAL_COVARIANCE = 100.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:193 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_KALMAN_PROCESS_NOISE_Q = 10.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:195 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float CURRENT_KALMAN_MEASUREMENT_NOISE_R = 5e-5f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:199 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_current_loop_p = 0.1f / 100 * 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:201 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float current_loop_Ki = 0.55f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:203 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float current_loop_Kd = 3e-4f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:206 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_vel_loop_p = 0.018f / 100 * 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:208 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_loop_Ku = 3.600000e-03 * 0.7 * 100 / 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:210 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_loop_Tu = 17.0f * 1e-3f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:212 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_loop_Ki = 1.2 * vel_loop_Ku / vel_loop_Tu; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:214 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_loop_Kd = 0.075 * vel_loop_Ku * vel_loop_Tu * 2; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:217 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_vel_angloop_p = 0.4f / 100; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:219 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_angloop_Ki = 5.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:221 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_angloop_Kd = 5e-05f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:224 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_angle_angloop_p = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:227 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ang_angloop_Ki = 0.00f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:229 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ang_angloop_Kd = 8e-04f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:232 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_angle_loop_p = 60.0f / 100 * 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:235 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_angle_MIT_p = 100.0f / 100 * 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:237 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float angle_MIT_Ki = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:239 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float angle_MIT_Kd = 8e-04f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:242 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_vel_MIT_p = 5.0f / 100; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:244 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_MIT_Ki = 15.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:246 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float vel_MIT_Kd = 1e-04f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:249 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEFAULT_current_MIT_p = 0.2f / 100 * 12; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:251 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float current_MIT_Ki = 0.1f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:253 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float current_MIT_Kd = 3e-4f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:260 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ADC_MAX = 65536.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:262 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float PI = 3.14159265358979323846f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:264 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float INV_PI_3 = 3.0f / PI; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:266 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float PI_3 = PI / 3.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:268 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float _1_SQRT3 = 0.57735026919f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:270 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float _3PI_2 = 4.71238898038f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:272 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float SQRT3 = 1.7320508075688772f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:274 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float SQRT3DV2 = 0.8660254037844386f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:276 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float COS_PI_3 = 0.5f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:278 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_FACTOR = 25.0f / 180.0f * PI; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:280 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float DEG2RAD = 1.0f / 180.0f * PI; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:282 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float RAD2DEG = 180.0f / PI; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:284 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 DEFAULT_VALUE = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:286 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 CONFIG_SAVED_NUM = 6; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:290 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 LUT_SIZE = 1024; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:301 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 DEV_CAN0_ID = 0x0000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:303 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 DEV_CAN0_MASK = 0x0000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:305 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 DEV_CAN_LOOPBACK_ID = 0x0000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:308 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_STATUS_ID = 0x0100; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:310 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_CONFIG_ID = 0x0101; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:312 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_VERSION_ID = 0x00FF; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:315 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_CMD_ID = 0x0200; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:317 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_RESET_ID = 0x0301; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:320 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_SET_NODE_ID = 0x0400; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:322 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_GET_NODE_ID = 0x0401; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:326 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_BOOT_ID = 0x0000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:328 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_OTA_REQ_ID = 0x0100; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:330 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_OTA_DATA_ID = 0x0101; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:332 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_OTA_ACK_ID = 0x0102; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:334 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 CANFD_OTA_WAIT_ID = 0x0103; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:338 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 ADC_FILTER_SIZE = 6; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:340 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u8 BLOCK_SIZE = ADC_FILTER_SIZE * SIZE_FLOAT; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:342 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ERROR_ADC_VAL = 255.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:344 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MAX_TEMP = 150.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:346 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MIN_TEMP = -40.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:348 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MAX_CURRENT = 40.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:350 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MIN_CURRENT = -40.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:352 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MAX_VCC = 65.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:354 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MIN_VCC = -0.1f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:358 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 VEL_FILTER_SIZE = 4; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:360 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 DEFAULT_COMMAND = 0x0000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:362 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 FAULT_RECEIVE = 0xFFFF; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:364 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_WRAP_THRESHOLD = 300.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:366 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLE_WRAP_VALUE = 360.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:368 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float RAD_FACTOR = 1.0f / ADC_MAX * 2.0f * PI; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:370 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float ANGLESENS_FACTOR = 1.0f / ADC_MAX * 360.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:374 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER2_PRESCALER = 119; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:376 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER2_PERIOD = 49; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:378 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int MOTOR_PERIOD = 1; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:380 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float TIME_SLICE = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:383 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float TIMER2_FREQUENCY = 1 / TIME_SLICE; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:385 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float MOTOR_FREQUENCY = 1 / TIME_SLICE / MOTOR_PERIOD; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:389 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER1_PRESCALER = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:391 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER1_PERIOD = 2999; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:393 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER1_DEFAULT_PULSE = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:395 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr int TIMER1_CH3_COMPARE_VALUE = 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:400 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 COGGING_TABLE_SIZE = 128; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:402 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float COGGING_COMP_SCALE = 0.005f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:413 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VBUS_DROP_THRESHOLD = 5.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:415 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VBUS_ABSOLUTE_MIN = 12.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:417 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u32 VBUS_DEBOUNCE_COUNT = 5; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/config.h:419 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr float VBUS_RECOVERY_RATIO = 0.9f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/health.cpp:19 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 ThermalController thermalController; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/health.cpp:25 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 constexpr u16 PROTECT_TIME = 6000; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/health.cpp:28 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static VoltageState voltage_state = VoltageState::NORMAL; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/health.cpp:29 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 static float last_vbus_slow = 0.0f; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/initial.cpp:39 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 VersionManager Version; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:53 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint32_t delay; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:54 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint32_t systick_ms = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:70 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint32_t task_enter_cyccnt = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:71 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint32_t busy_cycles_accum = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:72 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint16_t sample_seconds = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:73 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint8_t cpu_usage = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-GLB-001 sys/systick.cpp:74 文件作用域可变全局对象,需确认封装、并发访问和初始化顺序 volatile static uint8_t dwt_initialized = 0; 建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
warning 补充筛查 SUP-IRQ-001 device/Can.cpp:709 关中断后未在短窗口内看到开中断,需人工确认成对性 __disable_irq(); 确认所有路径均恢复中断;避免临界区过长。
warning 补充筛查 SUP-IRQ-001 sys/flash.cpp:888 关中断后未在短窗口内看到开中断,需人工确认成对性 __disable_irq(); 确认所有路径均恢复中断;避免临界区过长。
warning 补充筛查 SUP-IRQ-001 sys/systick.cpp:256 关中断后未在短窗口内看到开中断,需人工确认成对性 __disable_irq(); 确认所有路径均恢复中断;避免临界区过长。
warning 补充筛查 SUP-SW-001 Algorithm/FOC.cpp:89 switch 语句疑似缺少 default 分支 switch (cog_calib_state) { MISRA 通常要求 default;如枚举已全覆盖也建议显式说明。
warning 复杂度评审 METRIC-CC Algorithm/FOC.cpp:75 FOC_Controller::calibrate_cogging_tick 圈复杂度 33,risk=high Algorithm/FOC.cpp:75-238 FOC_Controller::calibrate_cogging_tick 人工评审分支完整性;必要时补单元测试或后续拆分。
warning 复杂度评审 METRIC-CC device/Can.cpp:1076 CAN_transmiter::communication_check 圈复杂度 27,risk=high device/Can.cpp:1076-1300 CAN_transmiter::communication_check 人工评审分支完整性;必要时补单元测试或后续拆分。
warning 复杂度评审 METRIC-CC main.cpp:120 do_task 圈复杂度 17,risk=high main.cpp:120-205 do_task 人工评审分支完整性;必要时补单元测试或后续拆分。
info 复杂度评审 METRIC-CC Algorithm/FOC.cpp:392 FOC_Controller::setSVPWM_PhaseVoltage 圈复杂度 15,risk=medium Algorithm/FOC.cpp:392-490 FOC_Controller::setSVPWM_PhaseVoltage 人工评审分支完整性;必要时补单元测试或后续拆分。
info 复杂度评审 METRIC-CC sys/flash.cpp:308 FlashEEPROM::writeFloat 圈复杂度 12,risk=medium sys/flash.cpp:308-383 FlashEEPROM::writeFloat 人工评审分支完整性;必要时补单元测试或后续拆分。
info 复杂度评审 METRIC-CC sys/health.cpp:35 ThermalController::update 圈复杂度 12,risk=medium sys/health.cpp:35-94 ThermalController::update 人工评审分支完整性;必要时补单元测试或后续拆分。
info 复杂度评审 METRIC-CC device/Can.cpp:597 can_loopback_test 圈复杂度 11,risk=medium device/Can.cpp:597-665 can_loopback_test 人工评审分支完整性;必要时补单元测试或后续拆分。

Top 圈复杂度

风险复杂度位置函数
high33Algorithm/FOC.cpp:75-238FOC_Controller::calibrate_cogging_tick
high27device/Can.cpp:1076-1300CAN_transmiter::communication_check
high17main.cpp:120-205do_task
medium15Algorithm/FOC.cpp:392-490FOC_Controller::setSVPWM_PhaseVoltage
medium12sys/flash.cpp:308-383FlashEEPROM::writeFloat
medium12sys/health.cpp:35-94ThermalController::update
medium11device/Can.cpp:597-665can_loopback_test
low10device/Can.cpp:1448-1504CAN_transmiter::CANFD_AsyncSend
low10sys/flash.cpp:90-161FlashEEPROM::read_saved_system_config
low10sys/flash.cpp:237-300FlashEEPROM::write
low10sys/flash.cpp:657-717FlashEEPROM::writeNodeId
low10sys/flash.cpp:928-1030move_app_data
low9device/Can.cpp:534-589canfd_loopback_test
low9sys/flash.cpp:413-482FlashEEPROM::save_system_config
low9sys/flash.cpp:792-879OTA_SET
low9sys/health.cpp:113-149power_manage
low8device/ADC.cpp:194-219sampler::get_current
low8sys/flash.cpp:724-776FlashEEPROM::writeCRC
low8sys/systick.cpp:244-298app_prepare_deep_sleep
low7device/Timer.cpp:134-184TIMER2_IRQHandler
low7sys/initial.cpp:256-290get_reset_cause
low6Algorithm/FOC.cpp:603-642FOC_Controller::fast_voltage_check
low6device/Can.cpp:1399-1440CAN_transmiter::CAN_AsyncSend
low6sys/flash.cpp:521-558read_node_id_struct
low6sys/initial.cpp:296-351OTA_initial
low5Algorithm/Filter.cpp:162-200EncoderAngleKalman::update
low5device/Can.cpp:800-824CAN_RX_ReadMetadata
low5device/Can.cpp:1355-1383DMA0_Channel4_IRQHandler
low5sys/flash.cpp:169-192FlashEEPROM::read
low5sys/flash.cpp:200-229FlashEEPROM::readFloat

优先级评审清单

**P1 复杂度超阈值** `Algorithm/FOC.cpp:75` `FOC_Controller::calibrate_cogging_tick`
CC=33,需人工评审分支/异常路径;后续可加单元测试或拆分。
**P1 复杂度超阈值** `device/Can.cpp:1076` `CAN_transmiter::communication_check`
CC=27,需人工评审分支/异常路径;后续可加单元测试或拆分。
**P1 复杂度超阈值** `main.cpp:120` `do_task`
CC=17,需人工评审分支/异常路径;后续可加单元测试或拆分。
**P2 continue 偏离候选** `device/Can.cpp:1124`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 continue 偏离候选** `device/Can.cpp:1194`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 continue 偏离候选** `device/Can.cpp:1199`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 continue 偏离候选** `main.cpp:80`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 continue 偏离候选** `sys/flash.cpp:693`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 continue 偏离候选** `sys/systick.cpp:264`
确认是否可重构;若暂不改逻辑,形成偏离说明。
**P2 调试输出隔离** `Algorithm/FOC.cpp`
21 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `device/Can.cpp`
1 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `device/ang_sensor.cpp`
1 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `device/motor.cpp`
1 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `main.cpp`
1 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `sys/flash.cpp`
2 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `sys/initial.cpp`
3 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P2 调试输出隔离** `sys/systick.cpp`
1 处 printf/snprint 类调用;确认宏隔离、量产关闭、实时性影响。
**P3 平台/中断指令偏离候选** `device/Can.cpp`
1 处关中断/开中断/WFI/汇编;确认临界区长度和安全机制。
**P3 平台/中断指令偏离候选** `main.cpp`
3 处关中断/开中断/WFI/汇编;确认临界区长度和安全机制。
**P3 平台/中断指令偏离候选** `sys/flash.cpp`
5 处关中断/开中断/WFI/汇编;确认临界区长度和安全机制。
**P3 平台/中断指令偏离候选** `sys/systick.cpp`
1 处关中断/开中断/WFI/汇编;确认临界区长度和安全机制。

主规则清单

级别规则数量说明参考
infoAUTO-ARRAY-001251数组下标访问需审查边界保护MISRA C:2012 Rule 18.x
infoAUTO-ASM-00110关中断/低功耗/内联汇编等平台相关指令需审查MISRA C:2012 Dir 4.3 / project safety rule
infoAUTO-CAST-001223C 风格强制类型转换需审查必要性和范围MISRA C:2012 Rule 10.x / MISRA C++ 5-2-x
warningAUTO-CTRL-0026continue 需避免或说明偏离MISRA C:2012 Rule 15.5 advisory / structured control flow
warningAUTO-FUNC-00231printf/格式化输出需确认调试隔离和实时性影响MISRA Dir 4.12 / project safety rule
infoAUTO-MACRO-00129函数式宏需审查括号、副作用和类型安全MISRA C:2012 Rule 20.x
warningAUTO-MET-0013圈复杂度 33 超过建议阈值 15Project metric threshold CC <= 15

补充规则清单

级别规则数量说明建议
warningSUP-CMP-00114浮点变量比较需确认容差或离散状态含义建议确认是否应使用阈值/容差比较。
infoSUP-DOC-00112接口/函数缺少紧邻 Doxygen 注释建议补充 @brief/@param/@return;内部小函数可按项目规范豁免。
warningSUP-GLB-001189文件作用域可变全局对象,需确认封装、并发访问和初始化顺序建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
infoSUP-GLB-00247extern 全局对象引用,需确认单一定义和共享访问保护确认是否跨 ISR/主循环共享;共享变量建议 volatile 或临界区保护。
warningSUP-IRQ-0013关中断后未在短窗口内看到开中断,需人工确认成对性确认所有路径均恢复中断;避免临界区过长。
infoSUP-ISR-00118中断处理函数需确认执行时间、共享数据保护和禁止阻塞调用人工确认 ISR 内无阻塞、无长耗时,并检查共享变量 volatile/临界区。
infoSUP-LOOP-0014无限循环需确认退出策略、看门狗喂狗和低功耗策略确认循环内任务调度、异常退出/复位策略和看门狗策略。
infoSUP-MAG-001439业务代码中存在裸数字常量,需确认是否应命名化安全相关阈值/时间/比例建议用具名常量或配置宏。
warningSUP-SW-0011switch 语句疑似缺少 default 分支MISRA 通常要求 default;如枚举已全覆盖也建议显式说明。

主规则 Warning 明细

规则位置说明证据建议
AUTO-CTRL-002device/Can.cpp:1124continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-CTRL-002device/Can.cpp:1194continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-CTRL-002device/Can.cpp:1199continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-CTRL-002main.cpp:80continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-CTRL-002sys/flash.cpp:693continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-CTRL-002sys/systick.cpp:264continue 需避免或说明偏离continue;人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:100printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:161printf/格式化输出需确认调试隔离和实时性影响printf("",人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:195printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:198printf/格式化输出需确认调试隔离和实时性影响printf("", angle_deg, cogging_table[i]);人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:203printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:206printf/格式化输出需确认调试隔离和实时性影响printf("", angle_deg, cogging_table_rev[i]);人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:211printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:212printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:214printf/格式化输出需确认调试隔离和实时性影响if (i % 8 == 0) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:215printf/格式化输出需确认调试隔离和实时性影响printf("", cogging_table[i]);人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:216printf/格式化输出需确认调试隔离和实时性影响if (i < COGGING_TABLE_SIZE - 1) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:217printf/格式化输出需确认调试隔离和实时性影响if (i % 8 == 7 || i == COGGING_TABLE_SIZE - 1) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:220printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:223printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:224printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:226printf/格式化输出需确认调试隔离和实时性影响if (i % 8 == 0) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:227printf/格式化输出需确认调试隔离和实时性影响printf("", cogging_table_rev[i]);人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:228printf/格式化输出需确认调试隔离和实时性影响if (i < COGGING_TABLE_SIZE - 1) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:229printf/格式化输出需确认调试隔离和实时性影响if (i % 8 == 7 || i == COGGING_TABLE_SIZE - 1) printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:232printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002Algorithm/FOC.cpp:234printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002device/Can.cpp:30printf/格式化输出需确认调试隔离和实时性影响#define CAN_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002device/ang_sensor.cpp:22printf/格式化输出需确认调试隔离和实时性影响#define ANG_SENS_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002device/motor.cpp:38printf/格式化输出需确认调试隔离和实时性影响printf("");人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002main.cpp:22printf/格式化输出需确认调试隔离和实时性影响#define MAIN_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/flash.cpp:22printf/格式化输出需确认调试隔离和实时性影响#define EEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/flash.cpp:31printf/格式化输出需确认调试隔离和实时性影响#define OTA_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/initial.cpp:23printf/格式化输出需确认调试隔离和实时性影响#define OTA_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/initial.cpp:32printf/格式化输出需确认调试隔离和实时性影响#define EEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/initial.cpp:129printf/格式化输出需确认调试隔离和实时性影响snprintf(buffer, bufSize, "", version.major, version.minor,人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-FUNC-002sys/systick.cpp:47printf/格式化输出需确认调试隔离和实时性影响#define SLEEP_DEBUG_PRINT(fmt, ...) printf(fmt, ##__VA_ARGS__)人工确认是否符合项目编码规范;如合理则记录偏离说明。
AUTO-MET-001Algorithm/FOC.cpp:75圈复杂度 33 超过建议阈值 15FOC_Controller::calibrate_cogging_tick建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。
AUTO-MET-001device/Can.cpp:1076圈复杂度 27 超过建议阈值 15CAN_transmiter::communication_check建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。
AUTO-MET-001main.cpp:120圈复杂度 17 超过建议阈值 15do_task建议人工评审分支完整性;后续允许时再考虑拆分或增加单元测试覆盖。

补充筛查 Warning 明细

规则位置说明证据建议
SUP-CMP-001Algorithm/FOC.cpp:53浮点变量比较需确认容差或离散状态含义if (rt_velocity < -0.5f) last_table = cogging_table_rev;建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:54浮点变量比较需确认容差或离散状态含义else if (rt_velocity > 0.5f) last_table = cogging_table;建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:404浮点变量比较需确认容差或离散状态含义u8 sector_code = (X > 0.0f ? 1u : 0u)建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:405浮点变量比较需确认容差或离散状态含义+ (Y > 0.0f ? 2u : 0u)建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:406浮点变量比较需确认容差或离散状态含义+ (Z > 0.0f ? 4u : 0u);建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:534浮点变量比较需确认容差或离散状态含义if (HOLD_PWM_DUTY > 0.95f) {建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:536浮点变量比较需确认容差或离散状态含义} else if (HOLD_PWM_DUTY < 0.0f) {建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:569浮点变量比较需确认容差或离散状态含义if (voltage < 36.0f and voltage > 8.0f) {建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:763浮点变量比较需确认容差或离散状态含义if (target_velocity < -120.0f) {建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/FOC.cpp:765浮点变量比较需确认容差或离散状态含义} else if (target_velocity < -30.0f) {建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/Filter.cpp:190浮点变量比较需确认容差或离散状态含义if (error > 180.0f) error -= 360.0f;建议确认是否应使用阈值/容差比较。
SUP-CMP-001Algorithm/Filter.cpp:191浮点变量比较需确认容差或离散状态含义else if (error < -180.0f) error += 360.0f;建议确认是否应使用阈值/容差比较。
SUP-CMP-001sys/config.h:427浮点变量比较需确认容差或离散状态含义while (angle >= 360.0f) angle -= 360.0f;建议确认是否应使用阈值/容差比较。
SUP-CMP-001sys/config.h:428浮点变量比较需确认容差或离散状态含义while (angle < 0.0f) angle += 360.0f;建议确认是否应使用阈值/容差比较。
SUP-GLB-001Algorithm/FOC.cpp:23文件作用域可变全局对象,需确认封装、并发访问和初始化顺序FOC_Controller FOC;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:20文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ADC_SCALE = 3.3f / 4096.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:22文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float TEMP_FACTOR = 1000.0f / 4.3f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:24文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VCC_FACTOR = 11.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:26文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_FACTOR =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:30文件作用域可变全局对象,需确认封装、并发访问和初始化顺序sampler sampler;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ADC.cpp:33文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 adc_current_frame_ready = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:37文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANX = CAN0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:48文件作用域可变全局对象,需确认封装、并发访问和初始化顺序dma_parameter_struct dma_rx_parameter;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:51文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile bool can_rx_dma_busy = false;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:52文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static can_receive_message_struct can_rx_dma_message;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:72文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 rx_queue_head = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:73文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 rx_queue_tail = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:74文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 rx_queue_count = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:77文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 tx_queue_head = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:78文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 tx_queue_tail = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:79文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static volatile u8 tx_queue_count = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Can.cpp:84文件作用域可变全局对象,需确认封装、并发访问和初始化顺序CAN_transmiter CAN0_transmiter;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/Timer.cpp:18文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile u32 total_us100_counter = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ang_sensor.cpp:38文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile bool spi_dma_tx_complete = false;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ang_sensor.cpp:39文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile bool spi_dma_rx_complete = false;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001device/ang_sensor.cpp:41文件作用域可变全局对象,需确认封装、并发访问和初始化顺序angle_sensor KTH7823;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001main.cpp:39文件作用域可变全局对象,需确认封装、并发访问和初始化顺序TaskScheduler scheduler = {0};建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001main.cpp:40文件作用域可变全局对象,需确认封装、并发访问和初始化顺序u32 motor_runtime_50us = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001main.cpp:41文件作用域可变全局对象,需确认封装、并发访问和初始化顺序u32 cnt_test = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:32文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 SOFTWARE_VERSION_MAJOR = 26;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:34文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 SOFTWARE_VERSION_MINOR = 5;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:36文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 SOFTWARE_VERSION_PATCH = 19;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:38文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 SOFTWARE_VERSION_BUILD = 2;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:41文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 HARDWARE_VERSION_MAJOR = 25;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:43文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 HARDWARE_VERSION_MINOR = 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:45文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 HARDWARE_VERSION_PATCH = 01;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:47文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 HARDWARE_VERSION_BUILD = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:50文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 BOOT_VERSION_MAJOR = 26;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:52文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 BOOT_VERSION_MINOR = 1;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:54文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 BOOT_VERSION_PATCH = 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:56文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 BOOT_VERSION_BUILD = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:60文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 BOOTLOADER_SIZE = 0x6000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:62文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 BOOTLOADER_START_ADDR = 0x08000000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:64文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 APPLATEST_START_ADDR = 0x08012000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:66文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 APPBACK_START_ADDR = 0x08006000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:68文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 APP_MAX_SIZE = 0xC000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:70文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 FMC_PAGE_SIZE = 0x400;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:72文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 SLEEP_CONFIG_START = 0x0801E400;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:74文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 SLEEP_CONFIG_END = 0x0801E800;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:76文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 FLASH_EMPTY = 0xFFFFFFFF;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:78文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 SLEEP_ENABLE = 0x11111111;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:80文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 SLEEP_DISABLE = 0x00000000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:92文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 NODE_ID_PAGE_ADDR = 0x0801E800;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:94文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 NODE_ID_PRIMARY_ADDR = 0x0801E800;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:96文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 NODE_ID_BACKUP_ADDR = 0x0801E840;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:98文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 NODE_ID_MAGIC = 0x4E4F4445;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:100文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 DEFAULT_NODE_ID = 1;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:102文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 BROADCAST_NODE_ID = 0x1FFF;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:104文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 MAX_NODE_ID = 0x1FFE;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:113文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 NODE_ID_STRUCT_SIZE = 0x10;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:115文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 NODE_ID_MAGIC_OFFSET = 0x00;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:117文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 NODE_ID_VALUE_OFFSET = 0x04;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:119文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 NODE_ID_COUNTER_OFFSET = 0x08;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:121文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 NODE_ID_CRC_OFFSET = 0x0C;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:125文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 OTA_CONFIG_NUM = 6;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:127文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_LATEST_AVAL_ADDR = 0x0801E000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:129文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_BACKUP_AVAL_ADDR = 0x0801E004;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:131文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_LATEST_EN_ADDR = 0x0801E008;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:133文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_BACKUP_EN_ADDR = 0x0801E00C;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:135文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_LATEST_CHECK_ADDR = 0x0801E010;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:137文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 n_APP_BACKUP_CHECK_ADDR = 0x0801E014;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:139文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 OTA_NOT_AVAL = 0xFFFFFFFF;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:141文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 OTA_AVAL = 0x00000000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:145文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 PP = 11;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:147文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DIR = 1.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:149文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 REDUCTION_RATIO = 25;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:151文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_OFFSET = -3.31f / 2.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:153文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float HOLD_PWM_DUTY = 0.1f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:155文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 ANGLESENS_OFFSET = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:157文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLESENS_CALIBRATION_ANGLE = 83.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:159文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float KE_FACTOR = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:163文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_KALMAN_INITIAL_STATE = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:165文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_KALMAN_INITIAL_COVARIANCE = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:167文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_KALMAN_PROCESS_NOISE_Q = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:169文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_KALMAN_MEASUREMENT_NOISE_R = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:171文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_OBSERVER_ALPHA = 0.75f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:173文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_OBSERVER_BETA = 0.002f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:177文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VELOCITY_KALMAN_INITIAL_STATE = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:179文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VELOCITY_KALMAN_INITIAL_COVARIANCE = 1e-3f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:181文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VELOCITY_KALMAN_PROCESS_NOISE_Q =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:184文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VELOCITY_KALMAN_MEASUREMENT_NOISE_R =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:189文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_KALMAN_INITIAL_STATE = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:191文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_KALMAN_INITIAL_COVARIANCE = 100.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:193文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_KALMAN_PROCESS_NOISE_Q = 10.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:195文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float CURRENT_KALMAN_MEASUREMENT_NOISE_R = 5e-5f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:199文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_current_loop_p = 0.1f / 100 * 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:201文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float current_loop_Ki = 0.55f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:203文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float current_loop_Kd = 3e-4f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:206文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_vel_loop_p = 0.018f / 100 * 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:208文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_loop_Ku = 3.600000e-03 * 0.7 * 100 / 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:210文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_loop_Tu = 17.0f * 1e-3f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:212文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_loop_Ki = 1.2 * vel_loop_Ku / vel_loop_Tu;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:214文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_loop_Kd = 0.075 * vel_loop_Ku * vel_loop_Tu * 2;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:217文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_vel_angloop_p = 0.4f / 100;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:219文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_angloop_Ki = 5.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:221文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_angloop_Kd = 5e-05f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:224文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_angle_angloop_p =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:227文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ang_angloop_Ki = 0.00f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:229文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ang_angloop_Kd = 8e-04f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:232文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_angle_loop_p = 60.0f / 100 * 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:235文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_angle_MIT_p = 100.0f / 100 * 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:237文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float angle_MIT_Ki = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:239文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float angle_MIT_Kd = 8e-04f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:242文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_vel_MIT_p = 5.0f / 100;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:244文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_MIT_Ki = 15.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:246文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float vel_MIT_Kd = 1e-04f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:249文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEFAULT_current_MIT_p = 0.2f / 100 * 12;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:251文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float current_MIT_Ki = 0.1f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:253文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float current_MIT_Kd = 3e-4f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:260文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ADC_MAX = 65536.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:262文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float PI = 3.14159265358979323846f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:264文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float INV_PI_3 = 3.0f / PI;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:266文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float PI_3 = PI / 3.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:268文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float _1_SQRT3 = 0.57735026919f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:270文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float _3PI_2 = 4.71238898038f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:272文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float SQRT3 = 1.7320508075688772f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:274文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float SQRT3DV2 = 0.8660254037844386f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:276文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float COS_PI_3 = 0.5f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:278文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_FACTOR = 25.0f / 180.0f * PI;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:280文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float DEG2RAD = 1.0f / 180.0f * PI;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:282文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float RAD2DEG = 180.0f / PI;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:284文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 DEFAULT_VALUE = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:286文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 CONFIG_SAVED_NUM = 6;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:290文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 LUT_SIZE = 1024;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:301文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 DEV_CAN0_ID = 0x0000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:303文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 DEV_CAN0_MASK = 0x0000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:305文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 DEV_CAN_LOOPBACK_ID = 0x0000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:308文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_STATUS_ID = 0x0100;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:310文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_CONFIG_ID = 0x0101;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:312文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_VERSION_ID = 0x00FF;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:315文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_CMD_ID = 0x0200;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:317文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_RESET_ID = 0x0301;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:320文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_SET_NODE_ID = 0x0400;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:322文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_GET_NODE_ID = 0x0401;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:326文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_BOOT_ID = 0x0000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:328文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_OTA_REQ_ID = 0x0100;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:330文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_OTA_DATA_ID = 0x0101;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:332文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_OTA_ACK_ID = 0x0102;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:334文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 CANFD_OTA_WAIT_ID = 0x0103;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:338文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 ADC_FILTER_SIZE = 6;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:340文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u8 BLOCK_SIZE = ADC_FILTER_SIZE * SIZE_FLOAT;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:342文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ERROR_ADC_VAL = 255.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:344文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MAX_TEMP = 150.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:346文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MIN_TEMP = -40.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:348文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MAX_CURRENT = 40.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:350文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MIN_CURRENT = -40.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:352文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MAX_VCC = 65.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:354文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MIN_VCC = -0.1f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:358文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 VEL_FILTER_SIZE = 4;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:360文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 DEFAULT_COMMAND = 0x0000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:362文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 FAULT_RECEIVE = 0xFFFF;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:364文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_WRAP_THRESHOLD = 300.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:366文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLE_WRAP_VALUE = 360.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:368文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float RAD_FACTOR = 1.0f / ADC_MAX * 2.0f * PI;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:370文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float ANGLESENS_FACTOR = 1.0f / ADC_MAX * 360.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:374文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER2_PRESCALER = 119;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:376文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER2_PERIOD = 49;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:378文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int MOTOR_PERIOD = 1;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:380文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float TIME_SLICE =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:383文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float TIMER2_FREQUENCY = 1 / TIME_SLICE;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:385文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float MOTOR_FREQUENCY = 1 / TIME_SLICE / MOTOR_PERIOD;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:389文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER1_PRESCALER = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:391文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER1_PERIOD = 2999;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:393文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER1_DEFAULT_PULSE = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:395文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr int TIMER1_CH3_COMPARE_VALUE =建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:400文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 COGGING_TABLE_SIZE = 128;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:402文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float COGGING_COMP_SCALE = 0.005f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:413文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VBUS_DROP_THRESHOLD = 5.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:415文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VBUS_ABSOLUTE_MIN = 12.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:417文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u32 VBUS_DEBOUNCE_COUNT = 5;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/config.h:419文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr float VBUS_RECOVERY_RATIO = 0.9f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/health.cpp:19文件作用域可变全局对象,需确认封装、并发访问和初始化顺序ThermalController thermalController;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/health.cpp:25文件作用域可变全局对象,需确认封装、并发访问和初始化顺序constexpr u16 PROTECT_TIME = 6000;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/health.cpp:28文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static VoltageState voltage_state = VoltageState::NORMAL;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/health.cpp:29文件作用域可变全局对象,需确认封装、并发访问和初始化顺序static float last_vbus_slow = 0.0f;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/initial.cpp:39文件作用域可变全局对象,需确认封装、并发访问和初始化顺序VersionManager Version;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:53文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint32_t delay;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:54文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint32_t systick_ms = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:70文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint32_t task_enter_cyccnt = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:71文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint32_t busy_cycles_accum = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:72文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint16_t sample_seconds = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:73文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint8_t cpu_usage = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-GLB-001sys/systick.cpp:74文件作用域可变全局对象,需确认封装、并发访问和初始化顺序volatile static uint8_t dwt_initialized = 0;建议确认初始化顺序、访问边界;必要时封装或添加偏离说明。
SUP-IRQ-001device/Can.cpp:709关中断后未在短窗口内看到开中断,需人工确认成对性__disable_irq();确认所有路径均恢复中断;避免临界区过长。
SUP-IRQ-001sys/flash.cpp:888关中断后未在短窗口内看到开中断,需人工确认成对性__disable_irq();确认所有路径均恢复中断;避免临界区过长。
SUP-IRQ-001sys/systick.cpp:256关中断后未在短窗口内看到开中断,需人工确认成对性__disable_irq();确认所有路径均恢复中断;避免临界区过长。
SUP-SW-001Algorithm/FOC.cpp:89switch 语句疑似缺少 default 分支switch (cog_calib_state) {MISRA 通常要求 default;如枚举已全覆盖也建议显式说明。

输出文件