STM32如何使用arduino_ide进行开发

以下文章来源于:公_众_号开源电子网
读取更多技术文章,请扫码关注
在这里插入图片描述

STM32如何使用arduino_ide进行开发

很多朋友问到,我不懂硬件,不懂寄存器操作,C语言也不是很会用,能写STM32单片机代码吗?其实还是有小路子的,用Arduino_IDE上位机软件,借助Arduino的库,使用C++/C语言编写STM32单片机代码。
这里以正点原子MINI板为例子,使用Arduino_IDE完成点灯和串口打印。
在这里插入图片描述

废话不多说,开干!!!

(本文配套工程文件,在底部下方供大家学习下载。)

第一步,先把Arduino_IDE软件安装好。

Arduino_IDE,网址:https://www.arduino.cc/en/software
软件版本的话,最好还是1.8.x,由于arduino官网在国外,所以下载速度慢,这里大家可以查看一下我们提供的资料链接,里面有一个Arduino-1.8.13-windows.zip压缩包,解压即可使用。
在这里插入图片描述

第二步,从GitHub下载Arduino_STM32。

rogerclarkmelbourne博主提供了这个库。
网址如下:https://github.com/rogerclarkmelbourne/Arduino_STM32
在这里插入图片描述

这个也是属于外网,所以这个压缩包Arduino_STM32.zip也提供给大家。大家解压后,把Arduino_STM32文件夹拷贝或者移动到arduino-1.8.13/hardware即可。如下图所示。
在这里插入图片描述

第三步,打开Arduino_IDE,下载编译工具链。

按照以下顺序执行即可。

①进入到开发管理器
在这里插入图片描述

②下载安装Arduino SAM Boards(32-bits ARM Cortex-M3)by Arduino开发板。
(这个过程需要一定时间,请耐心等待安装完成)
在这里插入图片描述

上图已经烧录好了,所以不需要重新安装。
注意:如果出现下载失败,基本上都是网络问题,最好选择白天下载,晚上外网网速比较慢。

第四步,硬件操作及烧录。

①硬件操作:把MINI板子上的BOOT0引脚连接到VCC,我们使用串口下载方式,然后按一下复位引脚进入等待烧录状态。
在这里插入图片描述

②选择可用的Demo,操作如下:
(1)选中板子型号,Generic STM32F103R series
在这里插入图片描述

(2)选中板子容量, STM32F103RC(48k RAM,256k Flash)
在这里插入图片描述

(3)选取参考demo,拿手好戏—点灯demo。
在这里插入图片描述

(4)根据原理图,修改一下代码。LED0用到PA8,LED1用到PD2。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(5)选择下载方式串口并选择对应的COM口。
在这里插入图片描述
(6)下载验证。
(注意:烧写成功后,会发现LED0和LED1同时闪烁,假如不把BOOT0引脚重新连接到GND,这个现象只会出现一次,所以要把BOOT0引脚连接到GND,这时候你如何进行复位,上电都是正常效果)
下载完成如下图:
在这里插入图片描述
在这里插入图片描述

可以看到我们已经成功实现了点灯和串口打印。从代码实现上看,十分简单,对于新手比较友好,而且有很多库给我们轻松调用,所以DIY也可以尝试一下这种开发方式。
不过,这个也有很大的缺点,不能调试以及不能go to definition,对于开发来说实属不便。
KEIL,Arduino_IDE,VScode,STM32CubeMX,STM32CubeIDE都是可以进行STM32开发,这些只是工具,各有各的好处,当然对于我们来说,选择一个适合的开发方式肯定有着事半功倍的效果,但最重要的还是掌握STM32的开发。

复制链接,打开浏览器下载工程文件。

链接:https://pan.baidu.com/s/1tp06vonrOfvsc336bUp5AA
提取码:xver

版权声明:本文为CSDN博主「正点原子」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_55796564/article/details/120993564

生成海报
点赞 0

正点原子

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

STM32如何使用arduino_ide进行开发

以下文章来源于:公_众_号开源电子网 读取更多技术文章,请扫码关注 STM32如何使用arduino_ide进行开发 很多朋友问到,我不懂硬件,不懂寄存器操作,C语言也

基于STM32的指纹密码锁

设计简介: 本设计是基于单片机的指纹密码锁,主要实现以下功能: 矩阵按键输入密码,并通过按键显示*号可通过按键或手机开门密码可通过按键进行开门可通过蓝牙模块连接手机进行开门可通过指纹进

STM32串口发送接收数据

1.串口通信 我用的32是stm32f10x最小系统没有UART4和UART5 USART : 通用同步异步收发器 UART : 通用异步收发器 nRTS : 请求发送 nCTS : 请求接收 区别:USART指单片机的一个IO端