域格移芯平台模块之open二次开发(一):环境搭建

📅 2026/7/19 17:42:26
域格移芯平台模块之open二次开发(一):环境搭建
适用模块YM310 X09、YM310 X19、YM310 X08、YM310 W09环境准备代码下载编译环境python3交叉编译器编译编译错误排查记录此时不应有|xxx 不是内部或外部命令也不是可运行的程序环境准备windows环境建议win10或以上版本安装python3 及 arm-gcc交叉编译器YM310_X09/X19/W09系列模组以及USB线等硬件环境代码下载选择一个文件夹使用git执行以下指令拉取SDK代码。git clone--recursive https://gitee.com/yuge-info/yopen.git注必须添加 --recursive 参数 因为有bsp子仓库。打印如下完成后出现yopen文件夹内容如下其中doc目录中包含开发指南、模块GPIO表、API接口说明等文档。《YOPEN 开发指南》中介绍了软件架构、软件目录、系统启动流程、主工程文件、demo介绍、代码编译、RAM空间查询、Flash空间查询、Flash空间调整、新增代码模块、API接口、bsp_moudule功能差异、软件调试、FOTA升级、死机问题分析等内容。编译环境编译环境依赖python3 和 arm-gcc交叉编译器。python3已经验证过的版本有python 3.12.5、3.8.5可以到python官网下载。win10及以上版本可以选择3.12.5。下载好exe后双击安装注意勾选“Add python.exe to PATH”以便程序自动配置环境变量否则编译的时候会出现“Could NOT find Python3……”的错误。之后选择“Install Now”或按照需要更换安装目录。安装成功后在cmd命令窗口发送python -V可以核对版本交叉编译器下载交叉编译器gcc-arm-none-eabi-10-2020-q4-majorARM官方下载链接。编译器解压到C盘修改gcc-arm-none-eabi-10-2020-q4-major文件名为gcc以便CMake可以通过c:\gcc\bin\arm-none-eabi-gcc访问编译。c:\gcc\bin的目录结构如下编译在SDK目录下双击“cmd”打开命令行输入build.bat选择需要编译的模块对应关系如下[1] YM310_W09C.A60 —— W09 44普通功能[2] YM310_W09C.M60 —— W09 44A60支持IMS短信[3] YM310_W09S.H60 —— W09 88[4] YM310_X08C.S60 —— X08 12基础数传[5] YM310_X08C.S61 —— X08 12S60USB口支持基础AT[6] YM310_X08C.W60 —— X08 12S61wifiscan[7] YM310_X08S.U62 —— X08 14[8] YM310_X09C.S60 —— X09 12基础数传[9] YM310_X09C.S61 —— X09 12S60USB口支持基础AT[10] YM310_X09C.W60 —— X09 12S61wifiscan[11] YM310_X09S.U62 —— X09 14[12] YM310_X19C.S60 —— X19 12基础数传[13] YM310_X19C.S61 —— X19 12S60USB口支持基础AT[14] YM310_X19C.W60 —— X19 12S61wifiscan[15] YM310_X19S.U62 —— X19 14如当前需要在W09 ACNCX上跑demo则BSP模块选择1编译的项目选择11。在短暂的等待后将看到编译成功的提示。上滚打印日志可以看到Flash空间情况下图红框中内容为ROM剩余大小会随着代码的差异发生改变。生成的烧录文件位于out目录对应项目下烧录到模块中可验证相关功能。编译错误排查记录此时不应有|原因setlocal enabledelayedexpansion 管道的组合在这台机器的环境变量下被误解析了。处理方法将bsp\EC7XX\kernel\PLAT\GccBuild_ec718pm_app.bat若编译的其他项目则为对应的.bat的 2-4行改为set __MSYS_BIN%~dp0tools\msys64\usr\bin set __MSYS_CHK%PATH:msys64\usr\bin% if %__MSYS_CHK%%PATH% set PATH%__MSYS_BIN%;%PATH%‘xxx’ 不是内部或外部命令也不是可运行的程序处理方法把bsp\EC7XX\kernel\PLAT\GccBuild_ec718pm_app.bat若编译的其他项目则为对应的.bat文件行尾从 LF\nUnix 格式转成 CRLF\r\nWindows 格式。原因cmd.exe 解析 .bat 是靠 \r\n 分行的。遇到纯 \n 的文件它把整 900 行当成一整行来处理再按空格拆词——echo 被拆成 echo→’cho’前面那段变成 ‘et’所以会看到一堆 ‘et’ ‘cho’ ‘ho’ ‘ho’ 的不识别指令。转成 CRLF 后cmd 正常分行错误消失。