STM32基于HAL库移植uC/OS-III
配置HAL库
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-klgb93b6-1638697968544)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145146713.png)]](https://i-blog.csdnimg.cn/blog_migrate/79fe446c96db3bed273c18e30115bc65.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z3i7V6cs-1638697968546)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145212230.png)]](https://i-blog.csdnimg.cn/blog_migrate/3a4eec00f48397cfe2df2cb5ecd0346b.png)
将pc13设置为out
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NTZzRpok-1638697968546)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145308933.png)]](https://i-blog.csdnimg.cn/blog_migrate/d4c407419019674077209bb873b10468.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wyPl8ct6-1638697968547)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145328016.png)]](https://i-blog.csdnimg.cn/blog_migrate/c2e6283c655afe359c95ae168dea1bc7.png)
配置文件
创建OSIII文件,放入下载的文件
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yrsIRIoL-1638697968548)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145505925.png)]](https://i-blog.csdnimg.cn/blog_migrate/b14c10c026a3e22c30c303810a2694fc.png)
在scr文件下创建OS文件,并放入文件,同时创建3个空白文件bsp.c、bsp.h、app.h
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dv7Jb9tC-1638697968549)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205145617897.png)]](https://i-blog.csdnimg.cn/blog_migrate/8473e6f6d1c1004fbf02e62b04911f1a.png)
调整工程
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ryzIv4KZ-1638697968549)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150045326.png)]](https://i-blog.csdnimg.cn/blog_migrate/f61dc16be5c4ab33b3f58bac951da4c6.png)
将Src/OS中的bsp.c 和 bsp.h文件添加至 bsp 组中,将 app.c 添加进 Application/User/Core 组中:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0pRNopA4-1638697968550)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150221692.png)]](https://i-blog.csdnimg.cn/blog_migrate/49b85d987ec0a1ab29fc7c876383970f.png)
将OSIII/uC-CPU中的cpu_core.c、cpu_core.h、cpu_def.h添加进uCOSIII_CPU组中,同时将OSIII/uC-CPU/ARM-Cortex-M3/RealView中的三个文件添加到该组:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3BpMb0DK-1638697968551)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150247402.png)]](https://i-blog.csdnimg.cn/blog_migrate/50303d75524ffe68df96a3e483e3fcc8.png)
将OSIII/uC-LIB中的9个文件添加到uCOSIII-LIB组中,同时将OSIII/uC-LIB/Ports/ARM-Cortex-M3/Realview中的lib_mem_a.asm添加到该组中:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qxsFQpJ2-1638697968551)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150427417.png)]](https://i-blog.csdnimg.cn/blog_migrate/f438c5bb9bcec096dce0faaa899955f6.png)
将OSIII/UcosIII/Ports/ARM-Cortex-M3/Generic/RealView中的3个文件添加的uCOSIII_Ports组中:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Yo0QhnX-1638697968552)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150513922.png)]](https://i-blog.csdnimg.cn/blog_migrate/832119bb4c12b27e86f609dee4f81fb9.png)
将OSIII/UcosIII/Source中的20个文件添加到uCOSIII_Source组中:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xI1CXFaS-1638697968552)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150612927.png)]](https://i-blog.csdnimg.cn/blog_migrate/28b4b7a36b2e7e4ac892d0b46e352a75.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pt3iQTQy-1638697968553)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150626846.png)]](https://i-blog.csdnimg.cn/blog_migrate/6cefd214ce7e69d213721da926b6ec2e.png)
将Core/Src/OS中的以下图中的8个文件添加到OS_cfg组中:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k24Nz1Yr-1638697968553)(C:\Users\无\AppData\Roaming\Typora\typora-user-images\image-20211205150639163.png)]](https://i-blog.csdnimg.cn/blog_migrate/cf2354d0e744f5fdff3bf80457dbdca1.png)
添加路径

这篇博客详细介绍了如何在STM32上基于HAL库移植和运行uC/OS-III实时操作系统。内容包括配置HAL库、创建OSIII文件、调整工程结构、修改代码以适配uC/OS-III、编译及烧录。在移植过程中,涉及到了STM32的GPIO初始化、任务创建和延时函数的使用,通过实例展示了多任务的实现。
最低0.47元/天 解锁文章
802

被折叠的 条评论
为什么被折叠?



