一、前言


使用STM32开发产品已经快两年了,一路走来真的非常有意思。

  • 单片机型号:从STM32F103->STM32F407->STM32H743
  • : 从标准库->HAL库(STM32CubeMX生成)
  • IDE:从IAR->STM32CubeIDE->Keil
  • RTOS:从UCOSIII->FreeRTOS->RTX5
  • 学习的嵌入式厂家:正点原子->野火->硬石科技->安富莱电子(牛B厂家)

在使用STM32开发产品的过程中,经常碰到不知道如何使用STM32CubeMX去生成标准的HAL库代码的问题。比如我想要使用定时器时,STM32CubeMX如何配置?我想要使用FDCAN时,STM32CubeMX又如何配置?不知道大家有没有发现一个问题,各个嵌入式厂家都不会将STM32CubeMX做深入的讲解,都在推他们各家编写的bsp。先不说这些bsp有没有质量问题,对于我们SMT32使用者来说,学会STM32CubeMX生成标准的官方HAL库才是正确的道路,STM32CubeMX对项目今后的维护与迭代都起到非常大的作用。为此,我将平时做项目时,如何配置STM32CubeMX的经验分享给同学们。

除了STM32CubeMX的使用之外,也会分享一些跟STM32有关的内容。

二、串口

STM32H743+CubeMX-串口重定向printf
STM32H743+CubeMX-串口非空闲中断接收

三、TIM

STM32H743+CubeMX-定时器TIM输出PWM(Output Compare模式)
STM32H743+CubeMX-定时器TIM输出PWM(PWM Generation模式)
STM32H743+CubeMX-低功耗定时器LPTIM输出PWM波
STM32H743+CubeMX-定时器TIM输出PWM(PWM Generation模式)+ 中断
STM32H743+CubeMX-定时器TIM输出PWM(Out Compare模式) + 中断
STM32H743+CubeMX-定时器TIM发送非对称PWM(使用一个通道)
STM32H743+CubeMX-TIM1发送PWM脉冲,TIM2计算PWM脉冲的总数(定时器同步计数实现)
STM32F407+CubeMX-使用TIM产生PWM信号
STM32F407+CubeMX-使用TIM计算编码器的脉冲总数,并计算脉冲方向

四、SPI

STM32H743+CubeMX-QSPI读写外部FLASH(W25Q128JVSQ)
STM32H743+CubeMX-QSPI+DMA读取外部FLASH(W25Q128JVSQ)
STM32H743+CubeMX-SPI与DRV8889串行通讯,驱动步进电机

五、FDCAN

STM32H743+CubeMX-学习FDCAN控制器上的TxFIFO
STM32H743+CubeMX-计算FDCAN2上的MessageRAMOffset(使两路FDCAN正常工作)
STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧
STM32H743+CubeMX-两路FDCAN同时工作的终极方案(RTX5)
STM32H743+CubeMX-双路FDCAN同时工作的终极方案(裸机)
RTX5 | STM32H743+CubeMX+RTX5+两路FDCAN模板

六、ADC

STM32H743-梳理ADC模数转换器在CubeMX上的配置
STM32H743+CubeMX-使用ADC(16bit分辨率)模数转换器读取CPU的温度(串行方式)
STM32H743+CubeMX-ADC(16bit分辨率)+DMA采样三路模拟量(并行),没过采样
STM32H743+CubeMX-ADC(16bit分辨率)+DMA采样三路模拟量,硬件过采样器实现1024倍过采样

七、通讯协议

STM32H743+CubeIDE-CanFestival实现两个CANopen Master同时独立运行
RTX5 | STM32H743+CubeMX+RTX5+两路FDCAN驱动+CANopen协议

八、FLASH & RAM

STM32H743+CubeIDE-将变量定义到指定的内存
STM32H743+CubeMX-梳理MPU的设置
STM32H743+Keil-将变量定义到指定内存
STM32CubeIDE教程-查看FLASH与RAM细节
SMT32H743+CubeMX-配置MPU后,在Keil上的程序卡死

九、其他

STM32F407-学习STM32的SW与JTAG调试与下载电路的设计
STM32H743+CubeMX-移植ThreadX
STM32H743+Cube-Keil上移植RTX5实时系统
STM32CubeIDE教程-现场表达式切换数字进制表示
Keil | 解决Keil双击工程名无法打开.map的问题
Keil | 解决Keil与VScode配合使用时,代码与注释位置不一样的问题
Keil | 解决Keil与Source Insight4.0配合使用时,代码与注释位置(乱码)不一样的问题
Keil | 使用Register Windows测量函数的执行时间
STM32F407+CubeMX - 使用GPIO翻转+示波器测量函数的执行时间

STM32+CubeMX开发工程笔记汇总(更新2021.8.12)相关推荐

  1. STM32+CubeMX开发工程笔记汇总(更新2022.6.12)

    一.前言 使用STM32开发产品已经快两年了,一路走来真的非常有意思. 单片机型号:从STM32F103->STM32F407->STM32H743 库: 从标准库->HAL库(ST ...

  2. STM32 cubemx 开发系列文章(一)认识cubemx

    STM32 cubemx 开发系列文章 新建一个cubemx工程 1.下载stm32 cubemx软件 2.安装软件 3.配置软件 4.开始第一个Hello World工程配置 写在最后 新建一个cu ...

  3. web前端开发入门笔记(更新中)

    前言 假期曾上过6节HTML与微信小程序开发基础课,对前端开发有所了解,今天上完大英就开始看了下课程,出乎意料的易于接受,也许是之前打下的基础,但还是系统地学习比较好,毕竟作为一门知识. 此外,有兴趣 ...

  4. 采用arm-none-eabi-gcc交叉编译工具链 以及使用xmake构建 STM32 RT-Thread nano工程 笔记

    xmake构建工程 由于多余的文件目录太多,所以删除了bsp目录 xmake.lua构建文件编写 -- 设置工程名 set_project("stm32_rtt_nano_demo" ...

  5. stm32 cubemx hal 工程中 微秒延迟 delay_us

    参考的正点原子的代码 测试平台 stm32f429i-disco 配了一个gpio 时钟 gpio /* USER CODE BEGIN 0 */ typedef uint8_t u8; typede ...

  6. [游戏开发-学习笔记]菜鸟慢慢飞(12)- Unity3D中LitJson 解析遇到的问题

    1.数据格式问题 问题:服务器那边设置的HP的类型是float,如果传给客户端的是1000,没有小数点解析的时候LitJson会优先按照int去解析.但是呢,服务器回头还有可能传回的是1000.50这 ...

  7. 四六级1990年-2021年12月历年真题PDF电子版、含详细解析及听力。网站直接下载,持续更新

    已更新2021年12月最新真题!并且不断更新!直接网站下载!听力解析真题都有! 可下载,可在线预览 1990年-2021年12月四六级真题.解析及听力下载,电子PDF版本,在线听力,详细解析,无水印. ...

  8. 【 持续更新 】Android开发笔记汇总篇,爬各种坑,敲高效代码,各种奇难杂症,有您要治的病 。

    [持续更新]Android开发笔记汇总篇,爬各种坑,敲高效代码,各种奇难杂症,有您要治的病 . 一.AndroidStudio 开发工具的那些事 . 问题 1: AndroidStudio2.2以上在 ...

  9. 构建一个轻量级的嵌入式虚拟平台,开发工程用板stm32 picoc解释器,大量自定义函数,sarm拓展,lwip移植,nes模拟器移植,系统优化,等等技术的融合

    让嵌入式想java一样一处编写到处运行 第一次写博客,其实接触嵌入式已经快两年了,从开始学51单片机的时候,怀着满腔的热情.写出了点亮第一个流水灯代码的时候那个无比的激动,到后面自己做许多有趣的东西( ...

最新文章

  1. 并发的核心:CAS 是什么?Java8是如何优化 CAS 的?
  2. c++ 取机器码_吉林c系列防倒灌风帽怎么卖,流线型通风器可定制
  3. 认识 react 的钩子函数
  4. 注意力测试软件系统,儿童注意力训练评估软件 - 训练评估软件 - 唯普诺心理,心理测评系统,心理测评软件,婴幼儿智能发育,心理软件...
  5. 苹果笔记本怎么找文件夹_苹果笔记本电脑回收价格是否合理怎么看
  6. 【编译原理笔记03】词法分析:正则表达式、有穷自动机(FA)、DFA与NFA及RE的相互转换、DFA识别单词、语法检测
  7. C#硬件开发源码集合
  8. Protel99SE多张原理图的设计步骤
  9. 因子分析模型 - Python 做因子分析简直比 SPSS 还简单 - ( Python、SPSS)
  10. 免费计算机管理软件,免费电脑销售管理软件
  11. qq分享至空间、好友自定义分享样式
  12. linux为360路由器刷机,[详细]360路由器刷openwrt、不死uboot、双系统 、wifi中继
  13. NX二次开发-UFUN输入对象获得对象所在的部件tag UF_OBJ_ask_owning_part
  14. IDE/SATA/SCSI接口
  15. P2597 [ZJOI2012]灾难(支配树)
  16. mac 安装qemu的方法
  17. MAC Book Pro 使用 libmodbus
  18. rc时间常数定义_低通滤波中RC时间常数设定,我是这么思考的
  19. 领域分类的问题_别人的问题领域
  20. 浅谈Vue渐进式的理解

热门文章

  1. 保护个人信息需出“重典”
  2. 利用用户级线程提高多线程应用的性能
  3. 3G应用上新闻联播 TD-SCDMA被内定?
  4. 学C++的你今天鄙视PHP了吗?
  5. 来,我们谈谈怎么学好计算机科学与技术
  6. 网络通信程序写起来很难专业课没问题
  7. 如何将第三方控件嵌入ToolStrip控件,并提供Design-Time支持
  8. 用python机器学习实现新闻关键词的抽取,你学会了吗?
  9. 为什么大学普遍都教C/C++、Java,而不教Golang、Python、Rust?
  10. 从“小白”到“白帽子黑客”的实用指南