first commit
This commit is contained in:
41
README.md
Normal file
41
README.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# GD32E23x 工程模板
|
||||
|
||||
本仓库为 GD32E23x 系列 MCU 的 CMake + VSCode 工程模板。
|
||||
|
||||
## 适用范围
|
||||
- 适用于兆易创新 GD32E23x 系列 Cortex-M23 内核单片机
|
||||
- 支持标准外设库开发
|
||||
- 推荐使用 VSCode + CMake + ARM GCC 工具链
|
||||
|
||||
## 默认配置
|
||||
- MCU 主频:内部 RC 振荡器,系统时钟配置为 72MHz
|
||||
- 工程结构清晰,便于二次开发和移植
|
||||
|
||||
## 使用说明
|
||||
1. 手动准备工具链:
|
||||
- 请将 ARM GCC 工具链(如 xpack-arm-none-eabi-gcc)和 OpenOCD 解压到本工程的 Toolchain 目录下。
|
||||
- Toolchain 目录内容不会被 git 跟踪,需自行维护。
|
||||
2. 使用 CMake 构建工程:
|
||||
- 推荐使用 VSCode 的 CMake Tools 插件,或命令行执行:
|
||||
```bash
|
||||
cmake -S . -B Build/Debug -G "Ninja" -DCMAKE_TOOLCHAIN_FILE=cmake/arm-none-eabi-gcc.cmake
|
||||
cmake --build Build/Debug
|
||||
```
|
||||
3. 通过 OpenOCD 烧录固件:
|
||||
- 可直接使用 VSCode 任务栏的 Flash MCU 任务,或命令行运行 OpenOCD。
|
||||
|
||||
## 时钟配置说明
|
||||
本工程默认系统时钟为内部 IRC8M 振荡器经 PLL 倍频后的 72MHz。
|
||||
|
||||
如需修改主频或时钟源,请编辑 `Src/system_gd32e23x.c` 文件:
|
||||
1. 查找如下宏定义区:
|
||||
```c
|
||||
// #define __SYSTEM_CLOCK_8M_HXTAL (__HXTAL)
|
||||
// #define __SYSTEM_CLOCK_8M_IRC8M (__IRC8M)
|
||||
// #define __SYSTEM_CLOCK_72M_PLL_HXTAL (uint32_t)(72000000)
|
||||
#define __SYSTEM_CLOCK_72M_PLL_IRC8M_DIV2 (uint32_t)(72000000)
|
||||
```
|
||||
2. 取消你需要的时钟方案的注释,并注释掉其它方案。
|
||||
3. 保存后重新编译工程即可生效。
|
||||
|
||||
详细时钟初始化流程可参考 `system_gd32e23x.c` 文件中的 `system_clock_config` 及相关函数实现。
|
Reference in New Issue
Block a user