[STM32F4] 【STM32F469I试用】+FreeRTOS+BinarySemaphore控制LED闪烁

[复制链接]
 楼主| maverics 发表于 2015-12-30 08:08 | 显示全部楼层 |阅读模式
本帖最后由 maverics 于 2015-12-30 08:16 编辑

STM32F469I试用】+FreeRTOS+BinarySemaphore控制LED闪烁
首先非常感谢21ic提供这么好的机会,自己也比较幸运。申请开发板的初衷是将开发板结合自己开发的多传感器集成项目,考察32F469的性能以及屏幕显示的优势,奈何试用时间有限,开发来不及,只得把该项工作放到后面去做,容**后来和各位分享,考虑到STM32CubeMX在配置方面的优势,以及FreeRTOS,那么目前就以此二者来进行简单的测试。
1.      测试目的:
测试STM32CubeMX配置流程
FreeRTOS BinarySemaphore运行流程测试
2.      软件:
STM32CubeMX  V4.12.0 ;
STM32CubeF4 Firmware Package V1.10.0
MDK 5.16A
3.      测试流程:
STM32CubeMX配置工程,在STM32F469IDISCOVERY上运行FreeRtos实时系统,并创建5个任务:Task1250ms写入一次信号量;task2等待信号量,蓝灯闪烁一次;task 345 红、黄、绿灯每500ms闪烁一次。
4.      硬件原理图 led.JPG
5.      STM32CubeMX配置流程
5.1  STM32CubeMX创建工程
prj.JPG
5.2  配置管脚

配置PD4PD5PG6PK3GPIO_Output
pin1.JPG
5.3  勾选左侧FreeRTOS
fr2.JPG
5.4  配置时钟180MHz
clk.JPG
5.5  配置LED管脚推挽输出、上拉、高速
p1.JPG
5.6任务界面添加任务
task.JPG
5.7  添加信号量
semaphore.JPG
5.8  配置完成后,生成mdk工程。

5.9  工程中自动创建的代码

main increase1.JPG
main increase.JPG
5.10  Task & Semaphore
keil task.JPG
5.11  绿灯和黄灯任务
go.JPG
5.12  红灯和蓝灯任务
rb.JPG
5.13切换控制任务(负责产生信号量)
sw.JPG

5.14  编译、运行、下载。
6  实际运行情况
四灯闪烁,但蓝灯闪烁频率是其他三灯的二倍。
分析:切换任务每250ms发送一次信号量,使得蓝灯每250ms闪烁一次;其他三色灯的任务每500ms闪烁一次,因此出现上述结果。

测试完毕。



 楼主| maverics 发表于 2015-12-31 15:21 | 显示全部楼层
很冷清啊
秋风式街球 发表于 2015-12-31 15:30 | 显示全部楼层
我帮楼主顶顶
haoyupei 发表于 2015-12-31 18:48 | 显示全部楼层
我觉得ST官方封装的库多少有点问题,而且封装了freertos内核,很多时候我们真的不需要他们的封装,研究freertos内核比研究他的库有意义。
 楼主| maverics 发表于 2016-1-1 22:42 | 显示全部楼层
haoyupei 发表于 2015-12-31 18:48
我觉得ST官方封装的库多少有点问题,而且封装了freertos内核,很多时候我们真的不需要他们的封装,研究free ...

这个问题目前我还不是很了解,从单纯这次Cube搭建FreeRTOS的过程来看,st在其他厂家嵌入式系统的基础上又开发了一层cmsis_os,大体就是把人家的函数封装成自己的,是否是想实现一种类似于驱动层“硬件不相关”的设计思想,把别人家的os用cmsis_os隔离开,从而使得用户可以统一进行开发,而不必关系具体使用的是哪家的os,肤浅的理解,不一定对。不过本次使用cube的配置过程还是蛮爽的,省去很多代码粘贴和搭建的过程,还是要给赞的
 楼主| maverics 发表于 2016-1-1 22:43 | 显示全部楼层
haoyupei 发表于 2016-1-12 12:25 | 显示全部楼层

嵌入式这种东西,通用性较差,封装也是把双刃剑,对新手的伤害是致命的!
 楼主| maverics 发表于 2016-1-16 18:12 | 显示全部楼层
haoyupei 发表于 2016-1-12 12:25
嵌入式这种东西,通用性较差,封装也是把双刃剑,对新手的伤害是致命的! ...

有道理,新手直接上手确实不利于理解
lin704932121 发表于 2016-1-16 19:25 | 显示全部楼层
顶,有时间也要好好学习下FreeRTOS了,之前一直都在用uCOS。
 楼主| maverics 发表于 2016-1-28 15:07 | 显示全部楼层
lin704932121 发表于 2016-1-16 19:25
顶,有时间也要好好学习下FreeRTOS了,之前一直都在用uCOS。

ucos也不错,资料多,但是总担心玩熟了以后哪天收费就麻烦了
捉虫天师 发表于 2016-1-30 10:27 | 显示全部楼层



嵌入式这种东西,通用性较差
小猫爱吃鱼 发表于 2016-1-30 16:42 | 显示全部楼层
这个freertos的实时性如何,是可剥剁式内核吗?
小猫爱吃鱼 发表于 2016-1-30 16:49 | 显示全部楼层
这个freertos的实时性如何,是可剥剁式内核吗?
一般首席 发表于 2017-2-20 14:05 | 显示全部楼层
学习中
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

37

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部