# GD32F303CCXWOS **Repository Path**: xwos/GD32F303CCXWOS ## Basic Information - **Project Name**: GD32F303CCXWOS - **Description**: 此工程是在GD32F303CC上移植XWOS的示例工程。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-07-30 - **Last Updated**: 2026-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 介绍 本项目包括一个示例工程。此工程是在GD32F303CC上移植XWOS的示例工程。 + 硬件:[BluePill-Plus](https://gitee.com/WeAct-TC/BluePill-Plus) + IDE:Eclipse Embedded C/C++ + MCU:GD32F303CC ![BluePill-Plus](Doc/BluePillPlus.jpg) ## XWOS 玄武操作系统(XWOS®)开发于2015年,是一款运行在嵌入式微控制器上的通用实时操作系统, 主要面向可靠、实时、安全的应用领域,包括汽车、物联网、工控等。 + + + + # 下载源码 ```shell git clone --recursive https://gitee.com/xwos/GD32F303CCXWOS.git ``` ## 源码结构 + XWOS:XWOS + Board:电路板描述层 + GD32FmwLib:GD官方的Firmware库 + App:用户程序 + Tools:工具 + Doc:文档 + DebugConfiguration:调试配置 + CHANGELOG.md:变更日志 + LICENSE.txt:开源协议 + README.md:使用说明 + .git:git仓库 + .gitignore:git commit时忽略的文件 + .gitmodules:git子仓库 + .gitemplate:git commit的模板 + .cproject:IDE工程文件 + .project:IDE工程文件 + .settings:IDE工程文件 # 开发环境搭建指南 ## vscode 调试需要先安装 [vscode](https://code.visualstudio.com/) 。 ## 安装编译环境 `xwtc` 是XWOS编译的工具集合,可以从百度网盘下载,按照内部 **说明.md** 安装就可。 + + 提取码:xwos + **注意** :一定要设置环境变量 `XWTC` , `.vscode/launch.json` 中配置的gdb路径会使用此环境变量。 若用户使用 **Ubuntu-24.04** 作为开发环境,需要额外安装一些工具: ```shell sudo dpkg-reconfigure dash # 选择“否” sudo apt install build-essential sudo apt install emacs # 如果是无图形界面的服务器,改为emacs-nox ``` ## pyocd + 需要先安装python3 + Ubuntu: `sudo apt install python3` + Windows: + 用途:为gdb提供调试服务 + 安装 + Ubuntu: `sudo apt install python3-pyocd` + Windows: `pip install pyocd` # 客制化 ## 工程改名 1. 可通过命令 `find . -type f -name "*GD32F303CCXWOS*"` 搜索所有文件名包含 `GD32F303CCXWOS` 的文件,将其改为 **新工程名** 。 2. 可通过命令 `find . -path "./.git" -prune -o -type f -exec grep -i -H "GD32F303CCXWOS" {} \;` 搜索所有内容包含 `GD32F303CCXWOS` 的文件, 然后依次打开,将其全部替换为 **新工程名** 。 ## 连接到外部静态库 可在文件 `board/lib.mk` 中定义外部静态库: + `EINCDIRS` :外部静态库头文件列表 + `EINCDIRS_gcc` :只对gcc编译器生效的外部静态库头文件列表 + `EINCDIRS_llvm` :只对clang编译器生效的外部静态库头文件列表 + `ELIBS` :外部静态库列表 + `ELIBS_gcc` :只对gcc编译器生效的外部静态库列表 + `ELIBS_llvm` :只对clang编译器生效的外部静态库列表