打印
[其他ST产品]

STM32(Bluepill)的应用

[复制链接]
4274|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
SimpleFOC的教程比较多,做了一个总的链接,欢迎点击阅读:SimpleFOC教程链接汇总

说明
  本文较长,内容较多,几乎把前几节Arduino UNO的例程重新演示一遍,为缩小篇幅,各示例演示步骤写的稍微粗略,大家可先熟悉前几节的关于simpleFOC的操作后再看本节。新手可分多次学习,循序渐进。

本文于2021.11.20更新,针对最新版的SimpleFOC库2.2.0测试,变化不大,需要修改的地方本节都有讲解。

本文于2021.9.2更新,
增加对新设计的电路板的支持,修改各个演示程序的IO口,使得本节示例可以同时在bluepill和SimpleMotor上运行。



使用特权

评论回复
沙发
gaonaiweng|  楼主 | 2024-3-30 16:11 | 只看该作者
本文于2022.9.9更新,
经客户反馈,本章最大的问题PWM低频噪声问题已经解决,是因为STM32的库安装不对,使用官方库,simpleFOC示例都可以顺利演示。稍后会详细说明库的安装,并对本文做较大修改。向这位客户表示感谢!

使用特权

评论回复
板凳
gaonaiweng|  楼主 | 2024-3-30 16:11 | 只看该作者
Bluepill介绍
1.1、最小系统板
  以前淘宝上十二三块钱一个,非常便宜,至于为什么叫Bluepill,谁给起的这个名字就不清楚了。

使用特权

评论回复
地板
gaonaiweng|  楼主 | 2024-3-30 16:11 | 只看该作者
下载模式说明
  Arduino IDE编译STM32有好几种程序下载模式,本篇以串口下载为例。
  如下图,Boot1始终接低电平0,Boot0接0时为正常工作模式,接1时为串口下载模式。

使用特权

评论回复
5
gaonaiweng|  楼主 | 2024-3-30 16:12 | 只看该作者
如下图,本人测试时发现虽然Boot0接高电平,但不能进入串口下载模式,检查后发现是电阻阻值不匹配,R3R4应该是串联在Boot0和Boot1引脚的限流电阻,阻值过大,导致上拉无效不能进入串口下载模式,可更换为1K-10K范围的电阻。

使用特权

评论回复
6
gaonaiweng|  楼主 | 2024-3-30 16:12 | 只看该作者
STM32库文件安装
Arduino IDE兼容STM32主要有两种方法实现:
一种是使用RogerClark的库,下载安装都比较方便,但是已经停更,兼容性 差。
另一种是使用官方库,兼容性肯定没问题,但是安装稍微麻烦。
simpleFOC的代码是以官方库为基础,所以必须安装官方库。

使用特权

评论回复
7
gaonaiweng|  楼主 | 2024-3-30 16:12 | 只看该作者
添加链接
2.1.1、RogerClark的库不好用,不要使用
  https://github.com/rogerclarkmelbourne ,下载Arduino_STM32,这个是支持STM32开发板的硬件文件。

使用特权

评论回复
8
gaonaiweng|  楼主 | 2024-3-30 16:13 | 只看该作者
官方链接
有官方的安装说明:https://github.com/stm32duino/wiki/wiki/Getting-Started,
点击Arduino的 文件——>首选项,输入网址:https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

使用特权

评论回复
9
gaonaiweng|  楼主 | 2024-3-30 16:13 | 只看该作者
但是,这个网址完全打不开,我试了一周从来都没有链接上。
网上有很多替代的网址,我试了一些,能用的有这个:https://github.ocrobot.com/down/stm32duino/package_stmicroelectronics_index.json,
偶尔也会打不开,多试几次还是可以的。

使用特权

评论回复
10
gaonaiweng|  楼主 | 2024-3-30 16:13 | 只看该作者
安装库文件
打开开发板管理器

使用特权

评论回复
11
gaonaiweng|  楼主 | 2024-3-30 16:14 | 只看该作者
输入STM32,安装。
注意,如果刚才的链接连不上,输入“STM32”是不能显示下面的库的。
用官方库显示的跟这个似乎不太一样,网络条件好的建议用官方链接。


用这个库,I2C接口不能用,I2C1和I2C2都不能使用,I2C问题暂时搁置,20020910。

使用特权

评论回复
12
gaonaiweng|  楼主 | 2024-3-30 16:14 | 只看该作者
重新打开IDE
  关闭Arduino IDE后重新打开,会发现开发板增加许多类型,选择STM32F103C系列,

使用特权

评论回复
13
gaonaiweng|  楼主 | 2024-3-30 16:14 | 只看该作者
先选择103系列,再选择bulepill

使用特权

评论回复
14
gaonaiweng|  楼主 | 2024-3-30 16:15 | 只看该作者
选择上传方式为串口,并选择端口
如果用STlink下载,选择对应的配置

使用特权

评论回复
15
gaonaiweng|  楼主 | 2024-3-30 16:15 | 只看该作者
安装STM32CubeProgrammer
上一步的下载方式选择,无论哪种接口都多了一个 STM32CubeProgrammer,所以还要再安装这个软件,如果不安装等会下载会提示错误。

去ST官网下载软件:https://www.st.com/en/development-tools/stm32cubeprog.html
如果没有注册,还需要输入邮箱,有时候不能下载,需要多尝试几次。

使用特权

评论回复
16
gaonaiweng|  楼主 | 2024-3-30 16:15 | 只看该作者
下载后解压,安装。安装完成后会在桌面生成图标。

  STM32的库文件安装完毕。

使用特权

评论回复
17
gaonaiweng|  楼主 | 2024-3-30 16:16 | 只看该作者
本帖最后由 gaonaiweng 于 2024-3-30 16:18 编辑

点亮LED
3.1、硬件准备
◆3.1.1、硬件清单




  也可以直接从USB转TTL取电5V,不过这样有时会不稳定,所以最好用手机充电器外部供电。

使用特权

评论回复
18
gaonaiweng|  楼主 | 2024-3-30 16:19 | 只看该作者
硬件连接


或者


使用特权

评论回复
19
gaonaiweng|  楼主 | 2024-3-30 16:19 | 只看该作者
示例演示
◆3.2.1、选择STM32配置

使用特权

评论回复
20
gaonaiweng|  楼主 | 2024-3-30 16:20 | 只看该作者
打开示例


修改代码

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

68

主题

688

帖子

3

粉丝