# Mini_Core 核心板 STM32F105RBT6 适配扩展版 -- Sick 中心板 --- ![图片](img/IMG_9086.JPG) ## 硬件说明 ### 核心板 - **型号**: STM32F105RBT6 - **扩展功能**: Sick 数据处理中心板。 ![核心板图片](img/IMG_9083.JPG) ### 扩展版 - **CAN1**: 接收 Sick 数据。 - **CAN2**: 发送 Sick 数据。 - **USART3**: PC通信。 - **USART2**: 串口通信。 ![核心板图片](img/IMG_9084.JPG) ## 功能概述 ### CAN 通信 - **CAN1**: 接收 4 个 Sick 数据帧(ID: `0x101`, `0x102`, `0x103`, `0x104`)。 - **CAN2**: 发送格式为 `Sick1 Sick2 Sick3 Sick4` 的数据帧。 - **ID**: `0x110` - **帧类型**: 标准帧 - **数据长度**: DLC 8 位 - **频率**: 100Hz ### UART 通信 - **Micro USB**: 数据发送频率为 100Hz。 ### LED 指示 - 绿色 LED 闪烁,指示系统运行状态。 --- ## 当前进展 ### 已实现 - CAN1 接收 Sick 数据。 - CAN2 发送 Sick 数据。 - 串口通信功能正常运行。 ### 待完成 1. **屏幕适配**: - 当前屏幕尺寸为 1.14 英寸,需适配至 0.96 英寸。 2. **按键功能**: - 按键功能尚未实现。 3. **LVGL 绘制优化**: - LVGL 的绘制功能未使用 DMA。 4. **串口 DMA**: - USART3 的 DMA 功能未启用(启用后系统异常,需要进一步调试)。 --- ## 系统架构 ### 数据流 1. **CAN1 接收**: - 接收 Sick 数据帧并存储到消息队列。 2. **CAN2 发送**: - 从消息队列读取 Sick 数据并发送。 3. **UART 发送**: - 通过 USART3 以 100Hz 频率发送 Sick 数据。 ### 任务分配 - **Task_Can**: - 初始化 CAN。 - 接收 CAN 数据并存储到消息队列。 - 定时发送 Sick 数据。 - **Task_PC**: - 从消息队列读取 Sick 数据。 - 通过 USART3 发送数据。 - **Task_Disp**: - 初始化屏幕和 LVGL。 - 显示 Sick 数据。 --- ## 硬件说明 ### 核心板 - **型号**: STM32F105RBT6 - **扩展功能**: Sick 数据处理中心板。 ### 通信接口 - **CAN1**: 接收 Sick 数据。 - **CAN2**: 发送 Sick 数据。 - **USART3**: 串口通信。 --- ## 使用说明 1. **编译与烧录**: - 使用 Keil 或 STM32CubeIDE 编译项目。 - 通过 ST-Link 烧录固件到核心板。 2. **运行环境**: - 供电方式: Micro USB 或外部电源。 - 数据通信: 通过 CAN 和 UART 接口。 3. **调试**: - 使用串口调试工具查看 Sick 数据发送情况。 - 使用 CAN 分析仪监控 CAN 数据帧。 --- ## 贡献者 - **作者**: Robofish - **项目名称**: Mini_Core - **版本**: v1.0