收藏官网首页
楼主: bigfanofloT

史上最详细UCOS-II移植教程,基于Gokit STM32F103C8T6

 

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
跳转到指定楼层
楼主
发表于 2017-3-28 16:53:03 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
硬件准备:
机智云gokit V2.1 板卡,基于STM32F103C8T6
软件准备:
STM32CubeMX
IAR for ARM
Step1:在UCOS官网下载源码,这里选择Micrium_uC-Eval-STM32F107_uCOS-II,版本是V2.92.07

Step2:使用STM32CubeMX快速配置1个LED闪烁的例程,板卡有4个LED,系统时钟配置为72MHz,Systick我们用作UCOS的心跳,另外开启一个定时器作为HAL库的时基。详细配置过程查看附件里面的文档;



Step3:生成IAR工程,在其根目录创建文件夹UCOSII,在里面再创建3个文件夹:CONFIG、CORE、PORT,如下所示:
Step4:拷贝UCOS-II源码到工程文件夹,分为三步:



Step5:在IAR里面添加文件分组并添加编译路径;


Step6:修改os_cpu_a.asm文件,如下:

Step7:修改includes.h,把不需要的头文件注释掉,如下:


Step8:修改stm32f1xx_it.c文件,注释掉void PendSV_Handler(void)函数,在voidSysTick_Handler(void)函数里面调用OSTimeTick();


至此UCOS-II移植完毕,接下来编写4个LED Blinking任务测试:

Step1:在main.h添加LED控制宏:


包含OS相关头文件:


Step2:定义任务堆栈和优先级:


Step3:编写LED任务,LED1每100ms翻转1次,LED2每200ms翻转1次,LED3每300ms翻转1次,LED4每500ms翻转1次:


Step4:初始化OS,创建任务,启动调度器:


Step5:编译,无错误和警告后,烧录调试:


现象如下:

附件:
移植好的工程源码:
游客,如果您要查看本帖隐藏内容请回复
UCOS官方源码:
游客,如果您要查看本帖隐藏内容请回复






1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
沙发
 楼主| 发表于 2017-3-28 22:36:43 | 显示全部楼层
坚果 发表于 2017-3-28 22:32
额,IAR的啊......,我没这IDE

Keil 一样,看到那个PORT文件夹没,里面有RealView文件夹,这个就是适用于keil的接口文件,使用keil添加这里的文件到分组即可
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
板凳
 楼主| 发表于 2017-4-5 22:35:27 | 显示全部楼层
ZJSYD 发表于 2017-3-29 08:14
好文章,必须顶

1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
地板
 楼主| 发表于 2017-4-5 22:35:38 | 显示全部楼层
bboy格宇 发表于 2017-3-29 09:22
手动点赞,下次继续发好的教程,谢谢

1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
5#
 楼主| 发表于 2017-4-5 22:35:58 | 显示全部楼层
汉枫LPB120模块
Seasonic 发表于 2017-3-31 21:35
楼主这么详细的移植教程,网上并不多见,这不单单是技术问题,是你至公无私的情怀。 ...

1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
6#
 楼主| 发表于 2017-11-4 14:43:04 | 显示全部楼层
123林晓毅 发表于 2017-11-4 01:23
楼主厉害,能不能出个F407的,最近在弄的好头疼

敬请期待

点评

谢谢楼主,会一直关注你的  详情 回复 发表于 2017-11-4 22:35
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

321

主题

1054

帖子

4502

积分

论坛元老

Rank: 8Rank: 8

积分
4502
QQ
7#
 楼主| 发表于 2021-1-10 10:29:13 | 显示全部楼层
菜得狠 发表于 2021-1-8 17:48
大佬,能给源码吗?

回帖可见附件源码哦
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表