基于STM32CubeMx配置FreeRtos以及USB虚拟串口步骤详解

这篇具有很好参考价值的文章主要介绍了基于STM32CubeMx配置FreeRtos以及USB虚拟串口步骤详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.打开CubeMx软件,进行芯片选型界面

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

2.搜索你所使用的芯片型号,例如我用的是STM32G4T3VET3

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

3.根据搜索结果,双击芯片型号,进入配置工程界面

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

 文章来源地址https://www.toymoban.com/news/detail-752808.html

4.配置SYS

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

 Debug:推荐选择 Serial Wire (方便使用STLink打断点在线调试)

中间两项默认Disable就好

TimeBase Source:若需要配置FreeRtos则不能选择SysTick,随机选择一个TIM定时器即可,这里我选择TIM1定时器。(解释:裸机的时钟源默认是SysTick,但是开启FreeRtos后,FreeRtos会占用SysTick,用于任务调度。所以需要其他总线提供另外的时钟源)

5.配置RCC 

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

一般配置 HSE即可,根据整体设计原理图选择时钟源配置:

可选类型为

(1).  Disable(关闭,不使用外部时钟)

(2).  BYPASS Clock Source(旁路时钟源)

(3).Crystal/Ceramic Resonator(外部晶体/陶瓷谐振器)

外部晶体/陶瓷谐振器模式(该模式较为常见,这可以为系统时钟提供较为精确的时钟源。该时钟源是由外部无源晶体与MCU内部时钟驱动电路共同配合形成,有一定的启动时间,精度较高。为了减少时钟输出的失真和缩短启动稳定时间,晶体/陶瓷谐振器和负载电容必须尽可能地靠近振荡器引脚。负载电容值必须根据所选择的晶体来具体调整。整体上讲,陶瓷晶体和石英晶体的主要区别就在于精度和温度稳定性上。石英晶体比陶瓷晶体精度要高,温度稳定性要好。)

旁路时钟源模式(该模式下必须提供外部时钟。外部时钟信号(50%占空比的方波、正弦波或三角波)必须连到SOC_IN引脚,此时OSC_OUT引脚对外呈高阻态。所谓旁路模式,是指无需上面提到的使用外部晶体时所需的芯片内部时钟驱动组件,直接从外界导入时钟信号。旁路时钟源的典型应用--有源晶振。有源晶振一般是四脚封装,电源、地线、振荡输出和一个控制端【或者悬空端】。相比无源晶体,有源晶振本身就是个完整的振荡器件,只需要供给适当的电源就能输出时钟,无须额外的振荡驱动匹配电路。其时钟输出不依赖于外部器件振荡电路,相对更不容易受外部线路不稳定性的影响。自然其价格往往要高于无源晶体,不过其输出电平幅度往往不能像无源晶体那样随着应用电路的变化而变化。)

6.配置USB虚拟串口外设(有些芯片可能不支持USB虚拟串口,若不支持虚拟串口配置,则按钮不可点击)

(1)

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

(2)

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件 

 7.开启FreeRtos,并选择版本

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

根据项目情况自行选择,FreeRtos版本。

V2版本较高,功能较多,大多数情况V1版本够用。

8.配置总时钟树。(须注意若要使用USB虚拟串口,则USB虚拟串口需要48MHz的一个工作频率,那么主时钟源频率需要8的倍数即可) 

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

 9.生成 Keil5 工程基本配置

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

 

10.勾选包含一些 **.c文件和一些头文件,便于阅读源码

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件

11.最后点击生成项目工程即可

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件 

12.生成完成后,打开项目,运行编译

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件 

stm32cubemx配置usb虚拟串口,stm32,USB虚拟串口,stm32CubeMx,stm32,单片机,嵌入式硬件 没有错误!没有警告!完成!

 

到了这里,关于基于STM32CubeMx配置FreeRtos以及USB虚拟串口步骤详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于STM32的homeassistant(采用FreeRTOS操作系统)【第一、二章优化拓展:Wifi、服务器连接验证以及UASRT串口区分】

      主控 STM32F103C8T6 WIFI模块 ESP01S 开发语言 C 开发编译器· KEIL 组网方式 WIFI 服务器协议 MQTT STM32 ESP01S 3.3V 3.3V GND GND GPIO2  (USRAT2-TX) RX GPIO3 (USART3-RX) TX 对ESP01S的AT指令的反馈指令进行验证解析 对ESP的USART2通信串口进行printf端口重映射 对调试用的USART1通信串口编写USART_printf函数并

    2024年02月17日
    浏览(22)
  • 搭建STM32F407的Freertos系统(基于STM32CubeMX)

           本人长期开发Linux、Windows上应用软件,一直以来MCU开发有所接触,但较少(最近项目需要,小公司么,都得会,被逼的),好在有STM32CubeMX这样工具,貌似就是我想要的工具。         本次demo目标立下:         1. 搭建或移植FreeRTOS到STM32上,毕竟对于长期在Linux环境

    2024年02月10日
    浏览(32)
  • 基于STM32CubeMX创建FreeRTOS—以STM32F429为例

    目录 1. 实验任务 2. 使用STM32CubeMX创建基础工程 2.1 使用STM32CubeMX创建项目 2.2 创建新项目 2.3 时钟设置 2.4 时钟配置树 2.5 修改时钟基准,打开串行调试 2.6 配置串口 2.7 配置状态指示灯 2.8 FreeRTOS配置 2.9 配置工程输出项 3. 代码编辑 3.1 printf重映射 3.1.1 使用ARMCC 5编译器时的print

    2024年01月22日
    浏览(18)
  • STM32cubemx对FreeRTOS的适配(工程模板配置)

    本篇文章将带大家使用STM32cubemx对FreeRTOS进行工程模板的配置。 1.开始工程的创建: 2.芯片型号选择: 3.修改时钟为TIM8: 在FreeRTOS中SYSTICK需要为FreeRTOS提供心跳,故这里选择TIM8替换SYNTICK。 4.配置RCC: 5.配置FreeRTOS: 6.开启串口方便调试和观察: 7.工程路径及编译器选择等:

    2024年02月07日
    浏览(23)
  • stm32 USB复合设备 cubeMX库一键生成 多路CDC串口 HID鼠标键盘 Composite Device

    最近有个需求,需要同时用usb键盘鼠标和虚拟串口等,因为平时没怎么研究过usb协议,所以自己写复合设备一直没有成功,然后正巧在github上看到了一个stm32的一个usb复合设备库,可以快速配置usb组合设备,并且支持超级多路串口 Gihub地址 https://github.com/alambe94/I-CUBE-USBD-Compo

    2024年02月09日
    浏览(25)
  • STM32F103实现USB虚拟串口

            今天分享一下STM32F103如何实现虚拟串口,目标是让新手也能上手,如果谁没看懂或者照着做功能没有实现可以私信我,只要我看到一定回复。        本次使用的是STM32F103C8T6核心板,按以下步骤新建一个STM32CubeMX工程。        步骤一 :先输入MCU型号搜索芯片,软件

    2024年02月09日
    浏览(21)
  • STM32基于HAL库和STM32CubeMX的实时操作系统FreeRtOS开发

    1、FreeRTOS RTOS是一类操作系统,µC/OS,FreeRTOS,RTX,RT-Thread 等这些都是RTOS 类的操作系统 FreeRTOS 是众多RTOS 类操作系统中的一种,FreeRTOS 十分的小巧,可以在资源有限的微控制器中运行,FreeRTOS 也不仅仅局限于在微控制器中使用。就单从文件数量上来看FreeRTOS 要比µC/OS 少得多

    2024年02月21日
    浏览(21)
  • STM32H743使用CubeMX配置Lwip、Freertos

    硬件:野火挑战者开发板STM32H743IIT6 软件版本: CubeMX 6.7.0 STM32CubeH7 Firmware Package V1.11.0 / 04-Nov-2022 原理图: 时钟树参数仅供参考 MPU配置需要查相关资料,一知半解 修改GPIO与硬件原理图对应,串口参数默认 参数配置与硬件对应 此处网络收发地址非常重要!!! 使能中断 串口

    2024年02月07日
    浏览(23)
  • 调试STM32F4 USB3300 USB_HS虚拟串口

    参考了csdn上面的几篇文章,经历了一个多小时的调试排除找bug,终于成功了! 通过STM32cubeMx配置USB phy芯片 1. 2. 3. 4. 5.生成代码出来,打开工程,编译下载通过。 在上电之前,电脑得先安装ST的USB 虚拟串口驱动 点击前往下载--STSW-STM32102 - STM32虚拟COM端口驱动程序 - STMicroelect

    2024年02月02日
    浏览(18)
  • STM32F40 USB虚拟串口 HAL库

    1.CubeMX设置 选择USB Device功能,速度为默认全速USB设备12MHZ,并使能USB_DEVICE库,选择Virtual Port Com (虚拟串口,VPC),使用默认配置。  完成USB_DEVICE配置后,USB中断自动开启,引脚自动配置;USB_DEVICE配置参数默认即可; 选择独立 .h .c 文件,Heap size有一些文档建议填写500以上,

    2024年02月10日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包