tag 标签: HAL

相关博文
  • 热度 12
    2019-6-6 14:27
    5019 次阅读|
    1 个评论
    轻松几步实现在STM32上运行FreeRTOS任务
    本文原创作者: strongerHuang 一、 写在前面 以前想要在 STM32 上跑 FreeRTOS 操作系统,还需要自己一步一步的移植 FreeRTOS 代码。 现在使用 STM32CubeMX 工具,就不需要这么繁杂的移植工作,只需轻松几步就能让 FreeRTOS 跑起来。 本文以 STM32L412 ( NUCLEO-L412KB 板卡)为例,其它 STM32 系列原理类似。 同时,使用目前最新的 MDK 和 STM32CubeMX 工具。因此,需要提前下载安装工具和软件包。 二、 准备工作 主要有三类: Ø MDK-ARM (含软件包) Ø STM32CubeMX (含软件包) Ø FreeRTOS 源码(可选) 2.1 MDK-ARM (含软件包) 这里需要下载安装 MDK-ARM ,以及 STM32 对应的软件包。 官方安装包 地址 : http://www.keil.com/download/product 官方 软件 包 地址 : http://www.keil.com/dd2/Pack 具体安装,使用方法可以参看我之前整理的专栏文章: 【专栏】 Keil 系列教程( https://mp.weixin.qq.com/s/_Ek60N30VJ_RXQo6LIhUvw ) 2.2 STM32CubeMX (含软件包) 这里也是一样,需要下载安装 STM32CubeMX ,以及 STM32 对应的软件包。 官方下载地址: www.st.com/stm32cubemx 具体安装,使用方法可以参看我之前整理的专栏文章: 【专栏】 STM32CubeMX 系列教程( https://mp.weixin.qq.com/s/XJbTfElc8mxouwREs4cIlw ) 提示: 软件包里包含 FreeRTOS 源码,但不是最新的。 2.3 FreeRTOS 源码 上面 STM32Cube 软件包其实包含了 FreeRTOS 源码,但不是最新版本。 FreeRTOS 官网: www.freertos.org 如果想使用最新版本,或指定某一版本,可以到下面地址下载: https://sourceforge.net/projects/freertos/files/FreeRTOS 上面地址包含 FreeRTOS 历史版本,如果使用指定版本,将源码替换即可(一本来说都兼容)。 三、 STM32CubeMX 创建工程 有了 STM32CubeMX 这个工具,开发 STM32 变得更加快捷。本文以 STM32L412KB 为例,其它 STM32 型号原理类似。 1. 打开软件,进入选择器 2. 选中 MCU 3.LED 引脚配置 4.UART 输出配置 这里配置成异步模式之后,引脚自动配置(我的开发板 RX 引脚不是默认,则需要自己配置)。 5. 使能 FreeRTOS 6. 配置 FreeRTOS 任务 这里创建两个 FreeRTOS 任务: Task1 和 Task2 。 提示: 针对初学者,使用 STM32CubeMX 配置 FreeRTOS 时,大部分参数默认即可。 当你熟悉之后,可以进一步掌握每项参数。 7. 配置时钟 这里选择 MSI 作为时钟源,进行倍频,是系统时钟达到 80M 。 8. 工程管理配置 这里参数是常规配置,可参看我教程: 【专栏】 STM32CubeMX 系列教程 ( https://mp.weixin.qq.com/s/XJbTfElc8mxouwREs4cIlw ) 9. 生成并打开工程 四、 源码分析 4.1 在两个任务中添加应用程序 提示:这里使用了 huart2 ,所以需要包含: #include "usart.h" 4.2 说明 任务 Task1 : 间隔 500ms 闪烁(变化)一次 LED ( PB3 )。 任务 Task2 : 间隔 1000ms ,串口 UART2 发送一次数据“ Demo... ” osDelay 函数代表系统延时,单位 ms. 然后,就是 LED 闪烁,和 UART 发送函数。 4.3 编译下载运行 上面步骤完成之后,就可以编译,然后直接下载运行了,通过串口调试助手可以看见输出字符 “ Demo... ”。 五、 工程及源码下载 可以看到,轻松几步就能实现在 STM32 上运行 FreeRTOS 任务。 为方便初学者,这里提供对应工程和源码,方便大家学习。 百度网盘: https://pan.baidu.com/s/1IdsuIlqqFhuJYxMI6EC7dQ 提取码: 7k5i 提示: 链接后期可能会失效,关注公众号『 strongerHuang 』及时获取动态。
相关资源
  • 所需E币: 1
    时间: 2021-3-31 18:11
    大小: 478.08KB
    上传者: Argent
    电子产品日新月异,不管是硬件工程师还是软件工程师,基本的模电、数电知识也是必备的条件,从二极管到三极管,从单片机到多核MCU,3G网络到5G产品的普及,不管电子产品的集成度怎么高,其产品还是少不了电阻电容电感,每个元器件在电路中必然有其作用,有兴趣了解的网友,下载学习学习吧。
  • 所需E币: 0
    时间: 2021-3-25 17:57
    大小: 938.03KB
    上传者: Argent
    全志方案在消费类电子占有很大的市场,随着产品的不断升级优化,全志方案不仅仅在安卓平板,视频监控、广告应用等领域崭露头角,本人收集些有关全志方案的开发资料,希望对正在使用全志方案的网友有所帮助。
  • 所需E币: 0
    时间: 2021-3-25 18:01
    大小: 938.03KB
    上传者: Argent
    全志方案在消费类电子占有很大的市场,随着产品的不断升级优化,全志方案不仅仅在安卓平板,视频监控、广告应用等领域崭露头角,本人收集些有关全志方案的开发资料,希望对正在使用全志方案的网友有所帮助。
  • 所需E币: 0
    时间: 2021-3-25 23:37
    大小: 938.03KB
    上传者: Argent
    全志方案在消费类电子占有很大的市场,随着产品的不断升级优化,全志方案不仅仅在安卓平板,视频监控、广告应用等领域崭露头角,本人收集些有关全志方案的开发资料,希望对正在使用全志方案的网友有所帮助。
  • 所需E币: 0
    时间: 2020-12-24 15:02
    大小: 118.17MB
    上传者: sandece
    用HAL库写的一些STM的标准例程
  • 所需E币: 0
    时间: 2020-11-12 09:14
    大小: 3.88MB
    上传者: xiaosh728
    HAL库函数说明(只有英文版没有中文版)
  • 所需E币: 5
    时间: 2020-6-15 15:02
    大小: 1.08MB
    上传者: samewell
    HAL驱动应用程序编程接口(中).pdf
  • 所需E币: 1
    时间: 2020-5-9 22:16
    大小: 17.17MB
    上传者: 星空下的屋顶
    【正点原子-阿波罗STM32F429-RT-Thread】示例-HAL库版本
  • 所需E币: 1
    时间: 2020-5-9 22:19
    大小: 18.35MB
    上传者: 星空下的屋顶
    【正点原子-阿波罗STM32F767-RT-Thread】示例-HAL库版本
  • 所需E币: 4
    时间: 2019-12-25 12:42
    大小: 3.61KB
    上传者: rdg1993
    BSP到底有什么作用……
  • 所需E币: 3
    时间: 2019-12-24 19:31
    大小: 385.47KB
    上传者: rdg1993
    【应用手册】NiosIIMPUUsageThisapplicationnotecoversthebasicfeaturesoftheNios®IIprocessor’soptionalmemoryprotectionunit(MPU),describinghowtouseitwithoutthesupportofanoperatingsystem(OS).WhentheNiosIIMPUisenabledandproperlyconfigured,itmonitorsallprocessordataandinstructionaccessesandtriggersexceptionswhenillegalaccessesareattempted.Thisapplicationnoteincludestwodesignexamples,withnotesabouthowtheexampleswork.TheseexampleswalkyouthroughmakinguseoftheNiosIIprocessor'sMPUinanenvironmentbasedontheAltera®hardwareabstractionlayer(HAL),withoutanOS.OneoftheexamplesusestheMPUtodetectthefollowingthreeissuescommonlyseenwhendebuggingembeddedsystems:■Stackoverflow■Nullpointer■WildpointerNiosIIMPUUsageMarch2010AN-540-1.0IntroductionThisapplicationnotecoversthebasicfeaturesoftheNiosIIprocessor’soptionalmemoryprotectionunit(MPU),describinghowtouseitwithoutthesupportofanoperatingsystem(OS).WhentheNiosIIMPUisenabledandproperlyconfigured,itmonitorsallprocessordataandinstructionaccessesandtriggersexceptionswhenillegalaccessesareattempted.Thisapplicationnoteincludestwodesignexamples……
  • 所需E币: 4
    时间: 2019-12-24 19:15
    大小: 2.11MB
    上传者: 978461154_qq
    【应用笔记】NiosII硬件抽象层设备驱动开发指南(GuidelinesforDevelopingaNiosIIHALDeviceDriver)该应用笔记阐述了创建并调试一个硬件抽象层(hardwareabstractionlayer,HAL)软件设备驱动的过程。Thisapplicationnoteexplainstheprocessofcreatinganddebuggingahardwareabstractionlayer(HAL)softwaredevicedriver.AnexampleofaHALsoftwaredevicedriver,calledmy_uart_driver,illustratesvarioussoftwaredevelopmentstages.TheexampledrivertargetstheAltera_Avalon_UARTdevice,connectedthroughaVectoredInterruptController(VIC)totheNios®IIprocessor.GuidelinesforDevelopingaNiosIIHALDeviceDriverAN-459-4.0ApplicationNoteThisapplicationnoteexplainstheprocessofcreatinganddebuggingahardwareabstractionlayer(HAL)softwaredevicedriver.AnexampleofaHALsoftwaredevicedriver,calledmy_uart_driver,illustratesvarioussoftwaredevelopmentstages.TheexampledrivertargetstheAltera_Avalon_UARTdevice,conn……
广告