在STM32F103VET6开发板上移植HuaweiLiteOs

本文档详细介绍了如何在STM32F103VET6开发板上移植Huawei LiteOS操作系统。首先,你需要下载MDK5软件和LiteOS源码。接着,配置串口驱动和烧写软件,如FlyMcu。在MDK5中新建项目,添加STM32库文件和LiteOS内核、平台文件,并解决编译时的错误。然后,创建并注册 LiteOS 任务,包括用户任务函数、任务参数配置以及入口函数osAppInit()的实现。最后,成功编译并烧写HEX文件,观察LED灯效果。
摘要由CSDN通过智能技术生成

移植前期的准备工作

MDK5软件的和HuaweiLiteOs源码的下载

由于我移植使用的是MDK5,所以本文的一些对于HuaweiLiteOs源码(以下简称内核源码)的兼容性修改也是基于MDK5,所以看这篇博客的前提是你已经下载了MDK5.
HuaweiLiteOs源码在Github上面也是开源的,下面附着地址:
HuaweiLiteOs源码地址

串口驱动和烧写软件的下载

由于本篇博客的内容最终是要将编译生成的16进制文件烧写到STM32的板子上,所以需要串口驱动和烧写软件。
串口驱动下载ch340即可。
烧写软件我用的是FlyMcu。

移植过程中开展的工作

  1. 在MDK5新建一个项目Huawei_LiteOS,如下图所示:
    在这里插入图片描述
    去Arm官网下载相关STM32库文件,同时建立6个如上图的分组,STARTCODE中存放的是创建关于STM32系列芯片的Project自带的.s文件,文件名是startup_stm32f10x_hd.s,这个代表的是大容量(512KB)启动文件;USER中存放的是main.c 和用户自己编写的c文件和一些工程文件;FWlib中存放的是STM32库里面的inc和src两个文件,这两个文件包括了芯片上所有的驱动;CMSIS(Cortex Microcontroller Software Interface Standard)用来存放库为我们自带的启动文件和一些M3系列通用文件;在MDK中添加依组添加库文件,如下图:

在这里插入图片描述
存放内核文件的分组是HuaweiLiteOS_kernel和HuaweiLiteOS_platform,下载源码后,找到相应的文件夹添加即可,如下图:

在这里插入图片描述
详细见:HuaweiLiteOS移植内核文件添加

  1. 文件添加完毕后,由于源代码是在IAR上编译,故直接运行代码,必定报错,所以需要修改相应的代码,上述链接完成修改了大部分BUG,以下列举剩余我所遇到的BUG,及如何修复。
    2.1 ..\Huawei_LiteOS\platform\cpu\arm\cortex-m4\los_hw.c(99):error:#18:expected a ")"类似上述错误。
    解决方法:
    los_hw.c 90行处函数修改如下:
    在这里插入图片描述
    2.2 Error:Symbol main multiply defined (by main.o and los_config)<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值