搭载stm32f103c8微控制器的stm32开发板采用arm cortex m3架构,具有高运行速度和更多外设选项,因此越来越受欢迎。此外,由于该板可以使用arduino ide轻松编程,因此它已成为许多业余爱好者和工程师快速原型设计的首选。
为了对电路板进行编程,我们使用了ftdi编程器模块,并且在上传和测试代码时还必须在引导0跳线和1位置之间切换,这肯定是一项艰巨的任务。此外,开发板上的迷你usb端口完全未使用。这样做的原因是,购买stm32开发板时,它没有附带arduino就绪引导加载程序,因此当通过usb连接时,您的计算机不会发现该板。
希望存在一个由leaflabs为maple迷你板开发的实验性引导加载程序。这个引导加载程序可以烧入stm32一次,然后我们可以直接使用stm32板的usb端口上传程序,就像任何其他arduino板一样。但是,在记录本教程时,此引导加载程序仍处于开发阶段,不建议用于关键应用程序。
所需材料
stm32 – (蓝丸)开发板 (stm32f103c8))
ftdi 程序员
面包板
连接线
带互联网的笔记本电脑
电路图
要直接通过usb端口对stm32 blue pill板进行编程,我们需要先将maple引导加载程序闪存到mcu中。为此,我们需要使用串行ftdi板。该板连接到stm32的rx和tx引脚,如下所示。
ftdi 板的 vcc 引脚连接到为板供电的 stm32 5v 引脚。接地连接到stm32的接地。ftdi 板的 rx 和 tx 引脚分别连接到 stm32 的 a9 和 a10 引脚。其中a9是stm32 mcu的tx引脚,a10是rx引脚。
上传引导加载程序时,确保主板上的引导 0 跳线引脚设置为 1(编程模式)。一旦引导加载程序被刷新,这个引脚就可以改变回初始位置(工作模式)。
将maple引导加载程序上传到stm32开发板
完成上述连接后,将ftdi板连接到您的计算机,然后按照步骤将引导加载程序刷新到stm32中。
第 1 步:我们必须从 github 页面下载引导加载程序文件二进制文件(bin 文件)。有许多版本的 bin 文件,对于 blue pill 板使用此 github 链接并单击下载按钮下载 bin 文件。
第 2 步:接下来,我们必须下载并安装stm闪存加载程序软件,将下载的bin文件闪存到stm32中。单击此链接进入 st 网站并滚动到底部并单击获取软件
步骤3:要下载软件,您必须输入您的电子邮件地址,下载链接将发送到您的电子邮件。然后点击链接返回网站,再次单击获取软件,您将开始下载。是的,这有点令人沮丧,但这就是应该做的。不要忘记检查垃圾邮件文件夹中的电子邮件,有时电子邮件需要几分钟才能到达。
步骤4:下载安装软件后,确保您的stm32板通过ftdi板连接到计算机,然后启动软件。如果不使用设备管理器,该软件将自动检测com端口,并确保选择正确的com端口号。就我而言,它是com4。将设置的其余部分保留如下。
第 5 步:单击“下一步”按钮两次,软件将再次自动检测电路板详细信息并显示如下。我们使用的电路板是stm32f1,具有128k闪存。
第 6 步:在下一步中,选择“下载到设备”,然后浏览到我们在步骤 1 中下载 bin 文件的位置并选择它。点击下一步。
第 7 步:该软件将下载一些所需的文件,如下所示,然后开始刷新过程。
第 8 步:闪烁成功完成后,我们将看到以下屏幕。单击关闭并退出应用程序。我们已经成功地用arduino引导加载程序刷新了stm32板。现在我们必须准备arduino ide并安装驱动程序,然后才能对stm32板进行编程。
准备 arduino ide 并安装驱动程序
按照以下步骤下载并准备与stm 32开发板一起使用的arduino ide。
步骤1:- 如果您尚未安装arduino ide,请从此链接下载并安装它。确保选择正确的操作系统。
步骤2:- 安装arduino ide后,打开并下载stm32板所需的软件包。这可以通过选择文件 -> 首选项来完成。
步骤3:- 单击首选项将打开下面显示的对话框。
然后按确定。
步骤4:-现在转到工具->板->板管理器。这将打开开发板管理器对话框,搜索“stm32f1”并安装出现的软件包。
第 5 步:安装软件包后,导航到 c:program files (x86)arduinohardwarearduino_stm32-masterdriverswin,您可以在其中找到install_drivers.bat和install_stm_com_drivers.bat。
第 6 步:单击两个 bat 文件并安装驱动程序。您将获得如下所示的dos屏幕。
现在,arduino ide已准备好对stm32(blue pill)开发板进行编程,并且还安装了驱动程序。
直接通过usb端口对stm32(蓝色药丸)进行编程
从stm32上卸下ftdi板和所有现有连接。只需使用stm32板上的微型usb端口将其连接到计算机,如下所示。确保跳线 0 针脚重新定位在 0(操作模式)。此后,我们不再需要切换跳线来上传和运行程序。
您的计算机现在应该能够发现主板。如果您看到安装了任何其他驱动程序,请稍等片刻。然后进入设备管理器,检查是否在com和端口部分下发现了您的stm32板,如下所示。mine连接到com8,名称为maple mini。
转到工具并向下滚动以找到通用stm32f103c系列,如下所示。然后确保变体为64k闪存类型,cpu速度为72mhz,并将上传方法更改为stm32duino引导加载程序。还要根据设备管理器上的com端口选择正确的com端口。
完成所有更改后,检查arduino ide的右下角,您应该注意到正在设置以下设置。我的stm32板已连接到com8,但您的可能有所不同
现在,arduino ide已准备好对stm 32 blue pill开发板进行编程。让我们将示例闪烁程序从arduino ide上传到stm32 blue pill板,以确保一切正常。示例程序可在以下位置找到
在打开的示例程序中,我们必须进行一个小的更改。默认情况下,该程序将为 pb1 编写,但在我们的板上,板载 led 连接到 pc13,因此将所有 pb1 替换为 pc13,我们很好继续。修改后的完整示例程序也可以在本页底部找到。
循环函数中的代码如下所示,我们可以注意到 pc13 引脚保持高电平(打开)1000 毫秒,然后又打开 low(关闭)1000 毫秒,这是无限次完成的,因为它处于循环函数中。因此,led 似乎以 1000 毫秒的间隔闪烁。
digitalwrite(pc13, high); // turn the led on (high is the voltage level)
delay(1000); // wait for a second
digitalwrite(pc13, low); // turn the led off by making the voltage low
delay(1000); // wait for a second
按下arduino ide上的上传按钮,您的程序应该被编译并上传。如果一切按预期工作,那么您应该在arduino ide控制台上看到以下内容。
如果程序已成功上传,则您应该会看到绿色 led 以 1 秒的间隔闪烁,如下面的视频所示。您还可以摆弄程序以增加或减少延迟。现在,您可以像使用任何其他arduino板一样开始使用stm32(blue pill)开发板,也就是说,您不再需要更改跳线的位置或使用外部硬件来上传和测试程序。
机器人正式“上班” 劳动力空缺能否填补
“5G+数字电网”融入新基建,2020~2021年逐步推进商用
中京电子:FPC产品重点配套京东方、深天马等面板厂商
带七段显示的逻辑探头电路讲解
人脸识别系统在食品安全方面发挥了怎样的作用
如何使用USB端口对STM32F103C8板进行编程
铁电实现聚合物固体电解质离子电导率和界面稳定性的双重提升
匝数对饱和的影响是什么
摩托罗拉Moto G8 Plus系列新机参数曝光搭载骁龙665平台和4000mAh电池
fireflyCORE-3399主板JD4--FAQs方案
三星 S9 发布会重要细节
直播预告 | @9/22 USB-C世代来临!立锜与您并肩而行:全系列电源解决方案介绍
Molex Fit系列连接器产品介绍
称重、位移电阻传感器模拟量(V/I)转换4-20mA两线制隔离变送器
研华新品i.MX 8M Plus边缘智能网关EPC-R3720全解析!
基于DSP的全桥移相控制感应加热电源研究
无人机生产厂家3D Robotics是如何败给大疆的
直线模组3D打印帮你造出心中的房子
ARM开发经典学习网站推荐 转
PCB油墨工艺的技术性能解析