系统初始化与任务调度:全面解析嵌入式系统架构
该思维导图概述了一个基于FreeRTOS的系统初始化与任务调度框架。系统从main.c入口开始,初始化时钟、IO端口、Flash、EEPROM及I2C总线。主要任务包括数据采集与处理、异常警告监控、SOC管理和系统控制,配合实时中断处理和通信管理及电池状态监控,确保系统的高效运行与数据完整性。此外,板级支持包和应用支持包共同提供硬件抽象和系统配置服务。
源码
# 系统初始化与任务调度
## 系统初始化
- **系统入口**: main.c
- **调用函数**
- SystemClock_Init - 初始化系统时钟
- IO_Init - 初始化IO端口
- Flash_Init - 初始化Flash存储
- EEPROM_Init - 初始化EEPROM
- I2C_Init - 初始化I2C总线
- **任务调度**: FreeRTOS
- **任务数目**: 多任务并发管理
## 任务
- **Sample_Main任务**
- **功能**
- 数据采集与处理
- **调用文件**
- SampleMain.c - 温度电压采集
- **核心函数**
- RealDataCopy - 复制真实数据
- CalTempdata - 计算温度数据
- CalVoldata - 计算电压数据
- TempConvert_ConverTemp - 温度转换
- 使用: OBIT_TempTable - 温度转换表
- **Warn_Main任务**
- **功能**
- 异常与警告监控
- **调用文件**
- WarnDealWith.c - 处理警告
- **核心函数**
- ChargeVolHigh - 充电电压高警告
- 设置: WarnFlag_3 - 三级警告标志
- DisChargeTempHigh - 放电温度高警告
- **Soc_Main任务**
- **功能**
- SOC管理
- **调用文件**
- SocDealWith.c - SOC计算与存储
- **核心函数**
- SocDataSave - 保存SOC数据
- 操作: EEPROM_PageWrite - 写入EEPROM
- SocStaticCheck - SOC静态检查
- 执行: OCV校准 - 开放电压校准
- **ConTrol_Main任务**
- **功能**
- 系统控制
- **调用文件**
- ControlMain.c - 继电器与状态管理
- **核心函数**
- RunMain - 运行主逻辑
- 控制: Main_Relay - 主继电器控制
- ChargeMain - 充电逻辑
- 控制: HotCharge_Relay - 加热继电器控制
## 中断处理
- **实时响应**
- **调用文件**
- isr.c - 中断服务程序
- **核心函数**
- PIT_IRQHandler - 定时器中断处理
- ExternalInterrupt - 外部事件处理
## 通信管理
- **数据传输**
- **调用文件**
- Rn8209.c - 通信接口
- **初始化**
- fnUSART_RN8209_Init - 初始化UART
- **校验**
- CheckDataIntegrity - 数据完整性校验
## 电池管理
- **状态监控**
- **调用文件**
- SampleMain.c - 数据采集
- **功能**
- 监控: 温度电压采集 - 实时监控
- 处理: 数据处理 - 数据校准与转换
## 数据存储
- **参数与校准**
- **调用文件**
- SocDealWith.c - 数据管理
- **调用文件**
- EEPROM_Flash.c - EEPROM操作
- **操作**
- EEPROM_PageWrite - 写入操作
- EEPROM_PageRead - 读取操作
## 板级支持包
- **硬件抽象**
- **调用文件**
- Bsp - 硬件配置
- **文件**
- McuHal.c - 微控制器抽象层
- SYSCan_Bspcfg.c - CAN配置
## 应用支持包
- **系统配置**
- **调用文件**
- Asp - 应用配置
- **文件**
- Fpara_Aspcfg.c - 参数配置
- ProtCfg_Aspcfg.c - 协议配置
图片
