# STC32G144项目案例 **Repository Path**: zyly2033/stc32g144 ## Basic Information - **Project Name**: STC32G144项目案例 - **Description**: STC32G144作为控制器,智能车案例程序 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-13 - **Last Updated**: 2026-11-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一、项目简介 本仓库包含基于 STC32G144K246 和 Keil C251 的智能车应用、可复用平台代码,以及用于验证外设功能的独立示例工程。主应用使用 RT-Thread Nano 进行任务调度。 # 二、目录结构 | 路径 | 内容 | | --- | --- | | [`car_project/`](car_project/README.md) | 智能车主工程:循迹、控制、显示、状态管理及 RT-Thread 任务 | | [`platform/`](platform/README.md) | 主工程和示例共享的芯片驱动、HAL、平台适配及工具代码 | | [`examples/`](examples/README.md) | 独立的外设功能示例,每个示例均有自己的 Keil 工程和说明 | | [`原理图/核心板&扩展板.pdf`](原理图/核心板&扩展板.pdf) | 核心板与扩展板原理图 | | [`嵌入式C工程编码规范.md`](嵌入式C工程编码规范.md) | 本仓库适用的 C 编码与工程约定 | # 三、环境与构建 - 硬件目标:STC32G144K246(工程配置时钟为 35 MHz)。 - 工具链:Keil µVision / C251;主工程文件为 [`car_project/car_project.uvproj`](car_project/car_project.uvproj)。 - 烧录:使用与目标板匹配的 STC 下载工具及配置。烧录前请核对实际板卡接线、引脚复用和工程配置。 在 Keil µVision 中打开 `car_project/car_project.uvproj`,选择目标并执行 **Rebuild**。工程配置为生成 HEX 文件,构建输出位于 `car_project/output/`。该目录中的内容是构建产物,不是源码。 示例工程彼此独立。请进入对应的 `examples/<示例名>/` 目录打开其 `.uvproj`,并参考该目录 README 中的接线、配置和验证步骤。修改 `platform/` 中共享驱动时,可能同时影响主工程和引用该代码的示例。 # 四、主工程分层 主工程的职责大致如下: - `car_project/app/`:应用业务、循迹算法、控制、显示和状态管理。 - `car_project/bsp/`:当前板卡的外设组合与板级初始化。 - `car_project/config/`:系统配置及运行参数默认值。 - `car_project/services/`、`car_project/arch/`:应用服务约定、日志和同步等基础设施。 - `platform/hal/`:硬件抽象接口;`platform/port/`:面向当前芯片和板卡的具体适配;`platform/drivers/`:芯片及外设驱动。 - `platform/rtthread/`:RT-Thread Nano 内核和 STC32G144K246 C251 适配。 应用代码通过 BSP/HAL 使用硬件能力,避免直接依赖芯片寄存器和具体驱动实现。分层约束、启动流程及内存注意事项见 [`car_project/README.md`](car_project/README.md) 和 [`platform/rtthread/README.md`](platform/rtthread/README.md)。 # 五、示例 示例索引和构建说明见 [`examples/README.md`](examples/README.md),涵盖 GPIO、按键、LCD、IMU、PWM、定时器、ADC、EEPROM、编码器、UART、USB CDC、摄像头和 RT-Thread 多线程等功能。每个示例的 README 是其接线和操作说明的准确信息来源。 # 六、维护与检查 主工程提供架构和代码使用检查脚本,可在安装 Python 3 的环境中从仓库根目录运行: ```powershell python car_project/tools/arch_check.py python car_project/tools/field_usage_check.py python car_project/tools/dead_code_check.py ``` 这些脚本用于静态检查,不替代 Keil C251 的编译、板上运行验证或烧录前的硬件核对。新增或调整代码时,请遵守 [`嵌入式C工程编码规范.md`](嵌入式C工程编码规范.md) 及对应子目录 README 中的约束。