# KEA128XWOS
**Repository Path**: xwos/KEA128XWOS
## Basic Information
- **Project Name**: KEA128XWOS
- **Description**: 此工程是在NXP KEA128上移植XWOS的示例工程。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-07-07
- **Last Updated**: 2024-08-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 介绍
本项目包括一个示例工程。此工程是在NXP KEA128上移植XWOS的示例工程。
+ IDE:[S32 Design Studio for Arm](https://www.nxp.com/design/software/development-software/s32-design-studio-ide/s32-design-studio-for-arm:S32DS-ARM)
## XWOS
玄武操作系统(XWOS®)开发于2015年,是一款运行在嵌入式微控制器上的通用实时操作系统,
主要面向可靠、实时、安全的应用领域,包括汽车、物联网、工控等。
+
+
+
+
# 下载源码
```shell
git clone --recursive https://gitee.com/xwos/KEA128XWOS.git
```
## 源码结构
+ Board:电路板描述层
+ SDK:官方的驱动库
+ XWOS:XWOS
+ Tools:工具
+ CHANGELOG.md:变更日志
+ LICENSE.txt:开源协议
+ README.md:使用说明
+ .git:git仓库
+ .gitignore:git commit时忽略的文件
+ .gitmodules:git子仓库
+ .gitemplate:git commit的模板
+ .cproject:IDE工程文件
+ .project:IDE工程文件
+ .settings:IDE工程文件
+ Project_Settings:IDE的调试配置文件
# 开发环境搭建指南
## 安装IDE
+ 1. 下载并安装 [S32 Design Studio for Arm](https://www.nxp.com/design/software/development-software/s32-design-studio-ide/s32-design-studio-for-arm:S32DS-ARM) ;
## 安装工具集合
`xwtc` 是XWOS编译的工具集合,可以从百度网盘下载,按照内部 **说明.md** 安装就可。
+
+ 提取码:xwos
若用户使用 **Ubuntu** 作为开发环境,需要额外安装一些工具:
```shell
sudo dpkg-reconfigure dash # 选择“否”
sudo apt install build-essential
sudo apt-add-repository ppa:kelleyk/emacs
sudo apt-get update
sudo apt install emacs28 # 如果是无图形界面的服务器,改为emacs28-nox
```
## 导入工程
通过菜单 **File --> Open Projects from File System...** 可导入工程。
## 设置编译器路径
编译前,需要设置编译器路径。
如果用户已经正确安装 `xwtc` 并配置环境变量 `PATH` ,当前配置可自动解析为正确的路径。
打开 `Board/makefile` ,在最开始处增加环境变量 `CROSS_COMPILE` 的定义可以覆盖默认编译器路径,例如:
`export CROSS_COMPILE = C:/app/xwtc/armgcc/bin/arm-none-eabi-`
## 编译
有两种方法可以编译,两种方法结果产生一样:
+ 打开终端,并将当前路径切换到工程的 `Board` 目录,执行 `make` 命令。
+ 在IDE中点击 **编译** 按钮。
## 调试
工程内提供JLink的调试配置,通过菜单 **Run --> Debug Configurations...** 选择 **KEA128XWOS_JLink** 调试。
# 客制化
## 工程改名
1. 可通过命令 `find . -type f -name "*KEA128XWOS*"` 搜索所有文件名包含 `KEA128XWOS` 的文件,将其改为 **新工程名** 。
2. 可通过命令 `find . -path "./.git" -prune -o -type f -exec grep -i -H "KEA128XWOS" {} \;` 搜索所有内容包含 `KEA128XWOS` 的文件,然后依次打开,将其全部替换为 **新工程名** 。
## 连接到外部静态库
可在文件 `Board/lib.mk` 中定义外部静态库:
+ `EINCDIRS` :外部静态库头文件列表
+ `EINCDIRS_gcc` :只对gcc编译器生效的外部静态库头文件列表
+ `EINCDIRS_llvm` :只对clang编译器生效的外部静态库头文件列表
+ `ELIBS` :外部静态库列表
+ `ELIBS_gcc` :只对gcc编译器生效的外部静态库列表
+ `ELIBS_llvm` :只对clang编译器生效的外部静态库列表