(域格)X09open编译环境搭建及编译
YM310 X09 是一款基于EC716S/EC716E平台设计的小尺寸,高性能,超低功耗的 CAT1数据传输模组。模组支持LTE-FDD和LTE-TDD网络数据连接通信协议,支持3GPP Rel-13 Cat 1 bis,支持 WatchDog 硬件看门狗功能。YM310 X09 设计为片式模组,采用LGA贴片封装,共有109个LGA引脚。模组尺 寸只有:(17.7±0.15) ×(15.8±0
模块介绍
YM310 X09 是一款基于EC716S/EC716E平台设计的小尺寸,高性能,超低功耗的 CAT1数据传输模组。模组支持LTE-FDD和LTE-TDD网络数据连接通信协议,支持3GPP Rel-13 Cat 1 bis,支持 WatchDog 硬件看门狗功能。 YM310 X09 设计为片式模组,采用LGA贴片封装,共有109个LGA引脚。模组尺 寸只有:(17.7±0.15) ×(15.8±0.15) ×(2.3±0.15)mm;YM310 X09 小身材,大应用,其和主流 的GSM和NB-IOT模组尺寸相同,能满足几乎所有M2M应用需求。
软件框架

环境准备
- windows环境(建议win10或以上)版本
- 安装python3(推荐python3.12.5)
- arm-gcc交叉编译器(下载链接)
- YM310_X09系列模组以及USB线等硬件环境
- Yopen软件代码(推荐使用git工具clone下载)
软件代码目录
| 目录 | 介绍 |
|---|---|
| api |
功能 api 接⼝
|
|
bsp
|
底层代码,适配不同硬件(⼀般不需要了解)
|
|
components
|
功能组件,例如 http,mqtt,json 等
|
|
demo
|
样例代码,api 或者功能组件的代码样例
|
|
doc
|
帮助⽂档,api ⽂档或者⼯具使⽤说明等
|
|
project
|
⼯程构建⽂件,每个⽂件表⽰⼀个代码⼯程
|
|
out
|
中间⽂件,编译⾃动产⽣
|
|
tools
|
⼯程构建过程中使⽤的⼯具或脚本集合
|
系统启动流程
系统启动后,首先执行 RomeCode,检查是否需要进入下载模式,如果没有进入下载,就跳入正常程序执行。正常程序依次执行三个部分:
- 1、bootloader
- 2、bsp
- 3、app
其中 app 为 yopen 应用程序,入口函数app_main位于bsp\EC7XX\app_main.c文件中,这部分逻辑默认启动了位于Image$$LOAD_APP_TABLE区域的多个 demo 程序。可以根据自身需求做修改,但不能在这个函数中执行阻塞操作,这样会造成整个系统阻塞。建议在这里做一些初始化程序,然后创建 task,再做相应业务。
static void applicationsStartup(void)
{
u32 appRegItemNum = (appRegItem_t *)(&(Image$$LOAD_APP_TABLE$$Limit)) - (appRegItem_t *)(&(Image$$LOAD_APP_TABLE$$Base));
appRegItem_t * appRegTable = (appRegItem_t *)(&(Image$$LOAD_APP_TABLE$$Base));
u32 itemIdx = 0;
for(; itemIdx < appRegItemNum; itemIdx++)
{
yopen_task_t appTaskRef = NULL;
yopen_rtos_task_create(&appTaskRef, appRegTable[itemIdx].stack_size_byte, appRegTable[itemIdx].startup_prio, appRegTable[itemIdx].app_name, appRegTable[itemIdx].app_entry, appRegTable[itemIdx].arvg);
}
}
int app_main(void *argv)
{
applicationsStartup();
return 1;
}
主要工程文件
主工程文件位于project目录下的xx.cmake文件,这个文件作为 cmake 的主要配置文件,告知 cmake,该工程需要的相关配置,下面是demo.cmake工程文件:
#####################################
#### 宏定义
#####################################
# add_compile_definitions(DEFINE_MACRO_TEST
# PAHO_MQTT_STATIC
# NO_PERSISTENCE
# HIGH_PERFORMANCE
# )
#####################################
#### 编译模块
#####################################
add_subdirectory(demo)
add_subdirectory(bsp/${YOPEN_BSP})
#####################################
#### 头文件
#####################################
# target_include_directories(${target} PRIVATE dir)
代码编译
编译环境依赖两个工具,需要提前安装好:
- 1、python3(已经验证过的版本 python3.12.5、3.8.5,其他版本如有问题请反馈 FAE)
- 2、arm-gcc 交叉编译器
将提供的 arm-gcc 交叉编译器复制到 C 盘,修改gcc-arm-none-eabi-10-2020-q4-major文件名为gcc,确保 CMake 可以通过c:\gcc\bin\arm-none-eabi-gcc访问到编译。目录结构如下:
C:\gcc\bin\arm-none-eabi-gcc.exe
添加环境变量:

默认编译
准备好编译环境后,就可以通过命令行运行build.bat进行编译:
编译成功后就会有如下显示:

选择工程编译
build.bat默认使用YM310_X90S.U62 demo作为默认参数,也支持通过添加参数,编译不同bsp_module和project项目,参数格式如下:
## 编译参数:
build.bat [bsp_module] [project]
## 举例:
build YM310_X09C.S60 demo
build YM310_X09S.U62 demo
编译完成
在out目录下生成编译完成文件。
更多推荐



所有评论(0)