关于GD32F303移植华为LiteOS

[复制链接]
8769|5
手机看帖
扫描二维码
随时随地手机跟帖
zeshoufx|  楼主 | 2019-11-19 17:57 | 显示全部楼层 |阅读模式
一、华为LiteOS
Huawei LiteOS 是华为公司针对物联网领域推出的面向万物感知、互联、智能的轻量级
操作系统,为终端厂商开发人员提供“一站式”完整软件开发平台,快速接入云,有效降
低开发门槛、缩短开发周期。于 2012 年为支持华为终端产品而开发的嵌入式操作系统;在
2014 年就已经在华为 Mate 系列、P 系列、荣耀系列手机、可穿戴产品上批量应用;在
2016 年 9 月就发布 Huawei LiteOS 开源版本,Kernel 源代码开源 ,经过多年的发展,现在
已经发布了 V2.1 版本,并且在 2018 年 9 月发布了 LiteOS IDE 开发工具 LiteOS Studio V1.0。

二、移植参考
(1)、官网移植教程
(2)、野火电子参考书
三、注意事项
(1)、gd32f30x.h文件中“typedef enum {FALSE = 0, TRUE = !FALSE} bool;”因与系统文件存在枚举重定义,需要注释或删除;
(2)、需要注意的是,LiteOS 提供了 3 套动态内存分配算法,位于 LiteOS\kernel\base\mem 目录下,分别是 bestfit、bestfit_little、tlsf 这三套
动态内存算法只需要添加其中一套就行了,对于资源有限的芯片,建议选择 bestfit_little,上面的示例也是添加了这一套动态分配算法;
另外 LiteOS\kernel\base\mem\membox 目录下是 LiteOS 提供的静态内存算法,与动态内存算法不冲突,需要添加;LiteOS\kernel\base\mem\common
目录的内容需要全部添加
四、结果
724455dd3bc0734267.png
五、部分代码和附件
#include "liteos_task.h"


void bsp_init(void)
{
        systick_config(120);
        nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);
       
        led_init();
        usart0_init(115200);
}
int main(void)
{
        UINT32 uwret=LOS_OK;
        bsp_init();
        printf("Welcome to Huawei liteos\r\n");
       
        uwret=LOS_KernelInit();
        if(uwret!=LOS_OK)
        {
                printf("Core_Task is created faile! error code:%d\r\n",uwret);
                return LOS_NOK;
        }
       
        uwret=AppTaskCreate();
        if(uwret!=LOS_OK)
        {
                printf("App_Task is created faile! error code:%d\r\n",uwret);
                return LOS_NOK;
        }
       
        LOS_Start();
        while(1);
}


[野火]《物联网操作系统 LiteOS开发实战指南—基于STM32》.pdf

4.6 MB

野火参考书

使用特权

评论回复
gaoke231| | 2019-11-29 22:23 | 显示全部楼层
只要把GD32的基础工程移植好,要移植其它系统就很简单啦

使用特权

评论回复
zhuotuzi| | 2019-11-30 21:12 | 显示全部楼层
还没敢用华为的

使用特权

评论回复
zeshoufx|  楼主 | 2019-12-1 13:57 | 显示全部楼层

可以学习一下,说不一定将来就用上了

使用特权

评论回复
观海| | 2019-12-4 16:01 | 显示全部楼层
非常好的资料

使用特权

评论回复
八层楼| | 2019-12-4 16:06 | 显示全部楼层
非常好的资料

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

66

主题

1947

帖子

14

粉丝