BSP 快速上手与外设驱动配置指南)
操作系统嵌入式物联网嵌入式OSRTOS【免费下载链接】rt-threadRT-Thread is an open source IoT Real-Time Operating System (RTOS). https://rt-thread.github.io/rt-thread/项目地址https://gitcode.com/gh_mirrors/rt/rt-thread点击查看免费下载本文是 ST 官方 NUCLEO32-L412 开发板在 RT-Thread 开源物联网实时操作系统中的板级支持包BSP使用指南。文章以仓库内 BSP 说明文档 为主体结合 board 源码、Kconfig 驱动配置 与 串口驱动实现 等源码级证据展开。读完本文你将掌握该 BSP 的板载资源与外设支持现状、通过 MDK5/IAR/GCC 将 RT-Thread 快速运行到板上的完整步骤以及借助 ENV 工具开启 GPIO、UART2、RTC、独立看门狗等更多外设的进阶配置方法。开发板资源介绍NUCLEO32-L412 是 ST 官方推出的 32 引脚迷你尺寸 Nucleo 开发板内核为 Cortex-M4板载绿色的低功耗系列L 系列Nucleo 标志配备 ST-LINK/V2-1 调试器/编程器、micro USB 接口以及 Arduino™ Nano 兼容接口。其核心资源如下MCUSTM32L412RB主频 80MHz128KB FLASH40KB RAM常用外设LED 共 4 个LD1COM 双色、LD25V_USB 红色、LD35V_PWR 绿色、LD4USER 绿色按键 2 个用户按键B1、复位按键B2常用接口USB 支持虚拟 COM 端口、大容量存储、调试端口三种接口调试接口板载 ST-LINK/V2-1 调试器。从仓库源码可以印证上述资源配置在 board/board.h 中STM32_FLASH_SIZE定义为128 * 1024即 128KBSTM32_SRAM1_SIZE为32SRAM1 为 32KB堆区HEAP_BEGIN/HEAP_END即建立在 SRAM1 上applications/main.c 中通过GET_PIN(B, 13)定义用户 LEDLD4所连接的 PB13 引脚。开发板更多详细信息可参考 ST 官方 NUCLEO-L412RB-P 产品页面。外设支持情况本 BSP 当前对外设的支持情况如下表所示板载外设支持情况备注板载 ST-LINK 转串口支持UART2片上外设支持情况备注GPIO支持PA0, PA1... PC15 --- PIN: 0, 1...47UART支持UART2SPI暂不支持SPI1 即将支持I2C暂不支持软件 I2C 即将支持RTC支持支持外部晶振和内部低速时钟PWM暂不支持即将支持USB Device暂不支持即将支持IWG支持独立看门狗未开启窗口模式扩展模块支持情况备注结合 board/Kconfig 可以看到BSP_USING_STLINK_TO_USART默认开启会联动select BSP_USING_UART与BSP_USING_UART2RTC 配置项BSP_USING_ONCHIP_RTC下提供了BSP_RTC_USING_LSE外部低速晶振与BSP_RTC_USING_LSI内部低速时钟两种时钟源选择独立看门狗由BSP_USING_WDT使能并关联RT_USING_WDT。当前默认生成的 rtconfig.h 中实际开启了BSP_USING_GPIO、BSP_USING_UART、BSP_USING_UART2、BSP_USING_STLINK_TO_USART等宏并将控制台设备指定为uart2#define RT_CONSOLE_DEVICE_NAME uart2与文档中默认只开启 GPIO 和串口 2的描述一致。使用说明使用说明分为快速上手与进阶使用两个章节快速上手面向刚接触 RT-Thread 的新手遵循简单步骤即可将 RT-Thread 运行在开发板上并看到实验效果进阶使用面向需要利用更多板载资源的开发者通过 ENV 工具配置 BSP 以开启更多高级功能。快速上手本 BSP 提供 MDK5 和 IAR 工程并支持 GCC 开发环境。下面以 MDK5 开发环境为例介绍如何将系统运行起来。硬件连接使用数据线将开发板连接到 PC打开电源开关开发板通过 micro USB 供电连接后 LD3 绿色电源指示灯应点亮。编译下载双击 project.uvprojx 打开 MDK5 工程编译并下载程序到开发板。工程默认配置使用 ST-LINK 仿真器下载程序在通过 microUSB 连接开发板的基础上点击下载按钮即可将程序下载到开发板。运行结果下载程序成功之后系统会自动运行。观察开发板上 LED 的运行效果红色 LD1 和 LD2 常亮、黄色 LD3 周期性闪烁。这一现象与 applications/main.c 的默认主程序一致main线程将 LD4PB13配置为输出模式后循环执行rt_pin_write(LD4_PIN, PIN_HIGH)与rt_pin_write(LD4_PIN, PIN_LOW)每 500ms 翻转一次电平实现周期性闪烁。USB 虚拟 COM 端口默认连接串口 2在终端工具中打开对应串口参数 115200-8-1-N复位设备后可看到 RT-Thread 的输出信息\ | / - RT - Thread Operating System / | \ 4.0.3 build Apr 24 2020 2006 - 2020 Copyright by rt-thread team msh 出现msh 命令行提示符即表示 RT-Thread 已在板上正常启动。串口底层由 drv_usart.c 驱动当使能BSP_USING_UART2时USART2_IRQHandler中断服务函数将数据交给uart_isr()处理若同时开启 DMA 配置宏BSP_UART2_RX_USING_DMA/BSP_UART2_TX_USING_DMA还会注册对应的 DMA 中断处理。进阶使用此 BSP 默认只开启了 GPIO 和串口 2 的功能。如需使用更多高级功能如 RTC、看门狗、UART2 的 DMA 收发、缓冲区大小调整等需要利用 ENV 工具对 BSP 进行配置步骤如下在 bsp 目录下打开 ENV 工具输入menuconfig命令配置工程配置好之后保存退出输入pkgs --update命令更新软件包输入scons --targetmdk4/mdk5/iar命令重新生成工程。在menuconfig的 Hardware Drivers Config 菜单中对应 board/Kconfig可以按需调整的典型参数包括UART 相关BSP_STM32_UART_V1_TX_TIMEOUT串口 V1 框架发送超时默认 2000BSP_UART2_RX_USING_DMA/BSP_UART2_TX_USING_DMA串口 2 收发 DMA默认关闭需RT_SERIAL_USING_DMA支持BSP_UART2_RX_BUFSIZEV2 框架接收缓冲区范围 64~65535默认 256BSP_UART2_TX_BUFSIZEV2 框架发送缓冲区范围 0~65535默认 0BSP_UART2_DMA_PING_BUFSIZEDMA 双缓冲大小范围 32~65535默认 64RTC 相关BSP_USING_ONCHIP_RTC使能片上 RTC 后可在BSP_RTC_USING_LSE外部低速晶振与BSP_RTC_USING_LSI内部低速时钟之间选择时钟源看门狗相关BSP_USING_WDT使能独立看门狗IWDG默认未开启窗口模式。配置完成后工程构建会依据 SConscript 自动追加STM32L412xx宏定义并依据各子目录的 SConscript 递归收集源码参与编译。本章节更多详细的外设驱动使用介绍可参考 STM32 系列 BSP 外设驱动使用教程。注意事项开机时如果不能打印 RT-Thread 版本信息请将 BSP 中串口 GPIO 速率调低开机时如果不能打印 RT-Thread 版本信息请重新选择 PC 端串口调试软件的串口号。联系人信息本 BSP 的维护人为 luhuadong邮箱luhuadong163.com如在使用过程中遇到问题可联系维护人或在 RT-Thread 社区中反馈交流。赞分享操作系统嵌入式物联网嵌入式OSRTOS【免费下载链接】rt-threadRT-Thread is an open source IoT Real-Time Operating System (RTOS). https://rt-thread.github.io/rt-thread/项目地址https://gitcode.com/gh_mirrors/rt/rt-thread点击查看免费下载相关推荐ES32VF2264 开发板 RT-Thread BSP 快速上手与外设驱动配置指南ES32VF2264 开发板 RT Thread BSP 快速上手与外设驱动配置指南 ES PDS ES32VF2264 是上海东软载波微电子EastSoft操作系统嵌入式物联网嵌入式OSRTOSRT-Thread NUCLEO-G491RE BSP 开发指南从快速上手到外设驱动配置RT Thread NUCLEO G491RE BSP 开发指南从快速上手到外设驱动配置 本篇技术指南以 RT Thread 仓库中 NUCLEO G491R操作系统嵌入式物联网嵌入式OSRTOSRT-Thread STM32F405ZGTx 迷你开发板 BSP 快速上手与外设驱动配置指南RT Thread STM32F405ZGTx 迷你开发板 BSP 快速上手与外设驱动配置指南 导读 本文以 RT Thread 仓库中 bsp/stm32/s操作系统嵌入式物联网嵌入式OSRTOS上一篇Lucia Auth用户配置文件安全存储与数据保护下一篇Esri Leaflet核心图层解析TiledMapLayer与DynamicMapLayer实战对比创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考