[LiteOS移植]目标芯片STM32F1 概述
这算是移植2.0版本吧,之前给大家写过一个关于stm32L476的LiteOS移植,当时还没有正式发布IoT Link Studio,有些操作在Ubuntu下完成的,这次就在Windows下做吧,大家可以根据这一系列连载,照葫芦画瓢,将LiteOS移植到各类不同的芯片上,不一定非要用STM32F103。
一、移植前准备
软件资源
IoT Link Studio:VS code中搜索即可下载(MAC平台暂不支持)
LiteOS SDK:https://github.com/LiteOS/LiteOS_Lab
STM32CubeMX:ST官网可下载
硬件资源
Stm32f103rc最小系统开发板
二、SDK概述
将SDK下载解压后会得到以下几个文件夹,先给大家介绍一下:
FAQ:存放一些常见的问题
doc:有关SDK的一些文档
drivers/third_party:第三方库,例如ST公司的HAL库和LL库、GD公司的标准库等。
iot_link:SDK中所有的组件都在这里面,包括LiteOS。
targets:华为官方以及友商提供的移植好的工程文件,可以让我们参考
test:一些测试脚本等。
tools:一些工具,Kconfig等。
我们主要使用drivers/third_party、iot_link和targets三个目录中的文件,首先阅读targets目录中的某个与我们移植的目标平台接近的工程文件,学习其结构和阅读其Makefile,采用照葫芦画瓢的形式移植。
三、移植目标与移植流程
后面的移植会按照一下步骤进行,最终达到让内核运行的目标,可以任意加减组件并自制一个上报数据的Demo。
① 学习其他工程的结构以及思考是如何移植出来的
② 根据开发板原理图使用STM32CubeMX生成基于Makefile的初始化代码
③ 调整工程中目录的结构
④ 修改Makefile
⑤ 修改链接脚本
⑥ 编译排错,达到让LiteOS内核能运行的目标
⑦ 添加用户逻辑部分,实现项目需求
四、与上次移植教程的差异
之前是采用ubuntu进行配置和编译的,本次全程采用IoT Link Studio。
之前是移植到STM32L476平台上,因为是基于STM32F431的工程移植的,可能大家感觉这两款平台都是M4内核、低功耗产品,之间的差异不大,本此就移植到M3内核的STM32F103,ST公司最经典的产品上。
- 点赞
- 收藏
- 关注作者
评论(0)