赞
踩
常用指令说明
OneOS-Cube常用的用户指令非常简单,常用指令简单介绍如下:
在OneOS 3.0及以上版本使用:
oos project:创建工程命令,提供菜单交互环境创建工程。
oos config:系统配置命令,提供菜单交互环境对系统功能宏进行控制,宏配置结果自动保存到oneos_config.h文件中。
oos build:代码编译命令,将根据编译配置文件的描述进行代码编译。
oos clean:清理工程命令,对前期编译生成的中间文件和二进制结果文件进行删除。
oos init -i XXX:生成IDE工程命令,其中"XXX"代表目标IDE环境,具体支持的IDE参考oos help init命令说明。例如生成Keil工程:oos init -i keil 。
oos pack:第三方组件操作命令,能够进行组件的上传、下载、搜索等。
oos:查看oos命令选项说明。
在OneOS 2.4及以下版本使用:
project: 创建工程命令,提供菜单交互环境创建工程。
menuconfig: 系统配置命令,提供菜单交互环境对系统功能宏进行控制,宏配置结果自动保存到oneos_config.h文件中。
scons: 代码编译命令,将根据SConstruct、SConscript脚本的描述进行代码编译。
scons --ide=XXX: 制作IDE工程命令,其中"XXX"代表目标IDE环境,具体支持的IDE参考scons --help命令说明。例如生成Keil工程:scons --ide=MDK。
scons --help: 查看scons命令扩展选项说明。
版本V3.1.0
1.下载OneOS-Lite 源码;
2.进入projrct文件;
3.输入指令,选择芯片类型并创建工程;
oos project
4.进入工程,进行编译
cd GD32F450Zk
oos build
5.输入指令,进行系统配置命令,提供菜单交互环境对系统功能宏进行控制,宏配置结果自动保存到oneos_config.h文件中。
menuconfig
6.重新生成工程,例如
oos init -i keil
内核启动介绍了整个系统从硬件上电如何一步步进入用户程序的过程。一般情况下,启动过程分为硬件上电,首先运行和体系架构相关的启动汇编文件,进行一些最基本硬件的初始化(例如CPU配置,时钟,栈地址,RAM等),为内核运行铺垫好环境,然后初始化内核各模块(例如调度器,定时器等),接着创建系统任务(例如空闲任务)和用户任务,最后启动调度和运行用户程序。
自动初始化:
自动初始化的实现是利用编译器的段和段排序的特性,以GCC编译器为例具体如下:
编译之后,初始化宏对应的段结构如下:
整个系统启动过程和内核启动过程
内核启动主要有下面几个步骤:
1.系统先从启动文件开始运行,然后进入 OneOS Lite的内核启动函数 os_kernel_init()和os_kernel_start();
2.os_kernel_init中调用_k_run_init_call函数执行OS_INIT_LEVEL_PRE_KERNEL_1,进行内核启动前的第一阶段的初始化;
3.初始化内核各模块,如tick队列,调度器,定时器等;
4.创建recycle,idle,timer,sys系统任务;
5.启动调度器,最后会运行sys任务,sys任务调用_k_run_init_call函数依次执行其他自动化宏注册的函数,最后调用main函数进入用户程序入口。
boot设置,根据要求修改,保存退出;
输入指令,重新生成工程,例如 keil MDK工程
oos init -i keil
时钟修改
修改函数,每秒钟打印 led 指示灯的状态,如下:
static void user_task(void *parameter)
{
int i = 0;
for (i = 0; i < led_table_size; i++)
{
os_pin_mode(led_table[i].pin, PIN_MODE_OUTPUT);
}
while (1)
{
for (i = 0; i < led_table_size; i++)
{
printf("led on\r\n");
os_pin_write(led_table[i].pin, led_table[i].active_level);
os_task_msleep(1000);
printf("led off\r\n");
os_pin_write(led_table[i].pin, !led_table[i].active_level);
os_task_msleep(1000);
}
}
}
保存,编译下载到开发板,即可。
打开串口测试软件,可以看到每隔 1s 打印一次 led 指示灯的状态。
参考:
中移物联网 OneOS 操作系统环境搭建和工程创建
文档中心/操作系统/OneOS Lite/V3.1.0/快速开发指南
V3.1.0/内核/内核启动
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。