当前位置: 首页 > news >正文

[STM32U3] 【NUCLEO-U3C5ZI 测评】stm32cubemx配置freertos

【前言】

freertos是最常用的操作系统。移植它有好几种方式。一是使用源码配置,从官网下载源码,然后手工添加到工程中,比较复杂。二是使用mdk中的pack包,直接导入,然后配置tick。也比较简单。三是使用stm32cube X-cbue-freertos包,可以使用图形化配置,相对于说是最友好的一种配置。本篇将分享如何使用stm32cubeMX来实现freertos的移植。
【实施步骤】
1、在stm32cubeMX下载x-cube-freertos包。


安装好后就可以在工程中启用与配置了。
2、开启x-cube-freertos


保持黙认配置即可。
3、添加任务


到此配置结束
4、由于freertos默认使用systick来做为心跳,那莫与他跟sys是有冲突的(即HAL_Tick),如果不修改就会出现问题。因此我们需要在sys中修改心跳为tim。


5、当我们给sys配置为TIM6时,由于他的中断级别跟systick是一样的,如果他的中断比较低的话,那莫在有些外设配置的hal库中如果用到了hal_tick_get就会取不到tick导至卡死或者超时。因此需要修改一下他的中断级别:


【测试】
我这里添加了开发板上的两个led分别为led2\led3。
生成工程后在app_freertos.c中分别翻转。

复制

  1. /* USER CODE END Header_StartDefaultTask */
  2. void StartDefaultTask(void *argument)
  3. {
  4. /* USER CODE BEGIN defaultTask */
  5. /* Infinite loop */
  6. for(;;)
  7. {
  8. HAL_GPIO_TogglePin(LED3_GPIO_Port,LED3_Pin);
  9. osDelay(200);
  10. }
  11. /* USER CODE END defaultTask */
  12. }
  13. /* USER CODE BEGIN Header_StartLEDTask */
  14. /**
  15. * [url=/u/brief]@brief[/url] Function implementing the ledTask thread.
  16. * @param argument: Not used
  17. * @retval None
  18. */
  19. /* USER CODE END Header_StartLEDTask */
  20. void StartLEDTask(void *argument)
  21. {
  22. /* USER CODE BEGIN ledTask */
  23. /* Infinite loop */
  24. for(;;)
  25. {
  26. HAL_GPIO_TogglePin(LED2_GPIO_Port,LED2_Pin);
  27. osDelay(500);
  28. }
  29. /* USER CODE END ledTask */
  30. }

【实验现象】
编译下载后,可以看到LED2与LED3分别以不同的频率闪烁。


---------------------
作者:lulugl
链接:https://bbs.21ic.com/icview-3520353-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

http://www.jsqmd.com/news/1216732/

相关文章:

  • JavaScript对象创建方式详解与最佳实践
  • 浦东新区有名的工厂机器移位正规公司 - 品牌推广大师
  • Unity特效穿模问题深度解析:7种实战修复方案与排序机制详解
  • 编译器前端设计与实现:基于LLVM的C语言子集编译器完整开发
  • 自建服务器实战指南:从环境搭建到生产级运维
  • WebDAV组件体系解析与故障排查指南
  • Android拍照选图功能实现与FileProvider详解
  • DiaryCard 组件设计:情绪色条、置顶标识与多态内容
  • 郑州积家回收价格查询及靠谱平台实测排行(2026年7月最新数据) - 收的高名表回收平台
  • 嵌入式ISP CCDC模块配置实战:从时序同步到数据格式化
  • 用System.gc()真的能触发Full GC吗?JVM的“谎言”
  • 后缀自动机(SAM)高效求解字典序第K小子串
  • 技术决策中的常见思维陷阱与破解之道
  • 赋能科技企业|建行广东江门分行:成功落地“数联积分贷+邑科贷”
  • 百达翡丽中国专柜2026年7月最新热线,客服团队竭诚服务 - 百达翡丽官方售后中心
  • 天津剑儒服务评测:功能体验、适用场景与成本效益分析
  • 架构设计:TDengine 在电力用电负荷预测的降采样聚合方案
  • KNN与K-Means本质解析:距离敏感型任务的正确打开方式
  • Google 提示词零基础教学:从“会提问”到“让 AI 真正解决问题
  • 如何3分钟快速解决Windows热键冲突:hotkey-detective专业工具终极指南
  • 重庆欧米茄回收价格查询及靠谱回收平台实测排行(2026年7月最新) - 尊奢回收二奢平台
  • 嵌入式DMA编程实战:从硬件触发到中断管理,提升系统性能
  • ARM ETMv4核心寄存器配置:指令追踪与深度调试实战指南
  • MCP协议实战:用Python搭建AI Agent工具调用Server(2026最新)
  • [STM32U3] 【NUCLEO-U3C5ZI 测评】 MODBUS主站+从站
  • 2026年7月最新唐山劳力士官方售后客服电话及服务网点地址查询 - 劳力士官方服务中心
  • 2017年6月12日:时间管理与历史回顾
  • 转行成功公式:行业洞察×能力迁移×时机把握
  • 《我的世界》三角洲山头服与TTK测试:PVP赛季服玩法全解析
  • 上海百达翡丽回收价格查询及靠谱平台实测排行(2026年7月最新) - 嘉价奢侈品回收平台