示例工程演示
开发环境搭建完成之后,以本章节的示例工程为例,演示如何构建一个完整的工程并编译运行。
1.示例工程的构建
OneOS v2.0.0版本已经为开发者搭建了OneOS当前所支持的MCU的标准工程模板,存放在"OneOS\templates"目录下,需要注意的是,开发者在使用OneOS-Cube生成工程时,使用的就是这个目录下的标准工程模板,所以禁止开发者在不和OneOS系统支持团队沟通的前提下,随意修改此目录下的任意文件。
工程模板的目录如下图所示:
以上只是简单介绍工程代码是如何生成的,接下来将会向开发者演示,如何创建一个基于STM32L475VGT6的演示工程。
打开OneOS\project目录,如下图所示:
在安装OneOS-Cube的时候,就把OneOS-Cube添加到右键菜单栏中,目的就是为了使OneOS-Cube在特定的目录下启动,在OneOS\project目录下打开右键菜单栏,选择OneOS-Cube Here,如下图所示:
OneOS-Cube启动之后,命令行窗口如下图所示:
输入"project.bat"命令,如下图所示:
按"Enter"键执行"project.bat"命令之后,开始选择工程代码的MCU型号,按照 芯片厂商MANUFACTORY-->芯片系列SERIES-->芯片型号MODEL-->芯片子型号SUB MODEL,依次选取所需的MCU,演示工程我们选择的MCU是STM32L475VGT6,所以选择的结果如下图所示:
选择好所需的芯片型号之后,按下"Q"键退出设置菜单,这将会自动保存当前设置并生成工程代码,如下图所示:
如果配置没有问题,那么OnsOS-Cube将会开始生成工程代码,整个过程如下图所示:
当工程代码生成结束之后,看到最后一行的"scons: done building targets"意味着工程构建成功,工程可以正常使用。
打开目录"OneOS\project",可以看到演示工程已经建立完成,演示工程的目录名称默认就是芯片的型号,如下图所示:
打开演示工程目录"OneOS\projects\stm32l475-cmcc-oneos",可以看到project.uvprojx,双击即可在MDK5中打开演示工程,如下图所示:
在演示工程目录中,可以看到"application"文件夹,这个目录就是存放功能代码的目录,比如在演示工程中,主要的功能只有LED的演示代码,这段代码写在main.c文件中,所以在"OneOS\projects\stm32l475-cmcc-oneos\application"目录下就可以看到main.c这个文件。
开发者在后续的开发过程中,业务功能相关的代码文件都可以放到"OneOS\projects\stm32l475-cmcc-oneos\application"目录下。
2.示例工程演示
在MDK5中打开演示工程,点击Build编译按钮,编译成功之后如下图所示:
编译成功之后,打开"application\mian.c"文件,主函数"main()"的内容是一段演示代码,向开发者演示如何创建一个线程。线程的功能函数"user_task()",在这个函数中可以看到每隔200ms翻转1次LED灯的状态,也就是通过这段代码实现了LED流水灯的功能。
点击MDK5的"Options for target oneos",修改下载的选项,找到Debug-->settings,并根据下载器类型和硬件下载口类型,选择合适的设置,如下图所示:
万耦创世L475开发板使用的是SW口,这里选择J-LINK,下载口选择SW。
确定好下载选项之后,就可以把代码下载到开发板中,下载完成如下图所示:
按下开发板的"reset"按键,可以看到开发板上的LED灯开始按照设定的频率闪烁,如下图所示: