STM32单片机入门 篇二:单片机编程:从点亮LED灯开始(二)

2019-04-26 13:21:48 21点赞 85收藏 18评论

写在前面的话:本篇是承接上一篇文章,属于小白向。

没看过的朋友点这里👇

STM32单片机入门 篇一:单片机编程:从点亮LED开始小编注:此篇文章来自#原创新人#活动,成功参与活动将获得额外100金币奖励。详细活动规则,请猛戳此链接!能点开这篇文章,想必对单片机不至于一无所知。所谓单片机,也就是单片微型计算机。可以做一些简单的控制、显示、计算等,配合一些传感器、蓝牙、电机等模块还可以做非常多的东西。电子发烧爱好者如果想做一些小ChipsAhoy| 15 评论16 收藏70查看详情


上一次已经生成了初始化文件,这一次就完成程序的仿真下载和运行。

我没有咕咕咕!我没有咕咕咕!

硬件和知识需求

  1. C语言编程知识

  2. 最基础的数字电路模拟电路知识

  3. 一块STM32开发板(本文采用的是STM32F407 YS-F4Pro开发板)

  4. 一根配套数据线,用来连接电脑和单片机

  5. 一个仿真器和必要的连接线,笔者使用的是ST-Link仿真器

  6. 台电

  7. LED灯,面包板,杜邦线(非必需)


软件需求

本文采用的是64位Windows10系统电脑,使用软件包括STM32CubeMX、IAR。除了IAR外,Keil4、Keil5也是可以的,不过更推荐IAR。

单片机编程:从点亮LED灯开始(二)

IAR和Keil都是既可以编程,又可以进行程序仿真下载的软件。

如果像笔者一样是使用ST-Link程序仿真下载,这里介绍另一个软件:

STM32 ST-Link UtilitySTM32 ST-Link Utility

这个软件需要编程工具(IAR或者Keil)生成hex文件,然后仿真下载程序。

配置流程

分三步走:

  1. STM32CubeMX软件生成初始化程序(具体步骤见上一篇)

  2. 在IAR或者Keil中打开初始化程序进行编辑,然后仿真下载程序,也就是俗称的烧写程序到芯片

  3. 连接超简单的硬件电路,单片机GPIO口---LED---单片机GND口,最后调试!开亮!要有光!

  4. 单片机编程:从点亮LED灯开始(二)

IAR软件使用

首先找到上次生成的初始化程序,打开其中的EWARM文件夹

单片机编程:从点亮LED灯开始(二)

找到其中的Project.eww文件,用IAR打开

单片机编程:从点亮LED灯开始(二)

IAR界面如下,我的是8.23版本

很熟悉的IDE风格很熟悉的IDE风格

左边是WorkSpace,工作空间,对C语言熟悉的人来说,这个界面的使用也不会陌生。

我们点击工作空间里子文件夹的+号,展开如下,其中对我们最重要的就是main.c文件

单片机编程:从点亮LED灯开始(二)

双击main.c文件打开。

找到main函数,学过C语言的都知道,程序最后运行的就是main函数,所以有必要的话可以自己阅读一下这里。

代码部分不再赘述。

单片机编程:从点亮LED灯开始(二)

我们可以看到程序已经由CubeMX初始化好了。

但是其中有很多的注释。

我简要介绍下注释的意思,CubeMX毕竟是一个自动生成代码的软件,所以如果在后续程序代码的编写时,还需要用到CubeMX修改初始化参数,就必须遵守它所规定的模板。

也就是说,我们所有代码都要写在CubeMX注释所指定的地方,否则我们之后用CubeMX运行ioc文件,修改配置,然后生成EWARM文件夹的时候,新生成的程序代码里会把没写在规定位置的代码抹掉。

举个栗子:

单片机编程:从点亮LED灯开始(二)

图里就是告诉你,用户代码的初始化代码,必须写在78行和80行,这两行注释之间。

单片机编程:从点亮LED灯开始(二)

再比如这张图,用户代码如果写在了91行,那在CubeMX重新生成程序的时候会被抹掉。

IAR软件的Debugger配置

接下来我们把鼠标移到工作空间的下图蓝色位置,点击右键,选择Options

单片机编程:从点亮LED灯开始(二)

弹出设置菜单,我们在左边找到Debugger,然后在右边的Driver一项里选择自己需要的仿真器,我这里用的是ST-Linker,所以选了ST-Linker。

单片机编程:从点亮LED灯开始(二)

之后在Debugger子目录下寻找自己刚刚选择的仿真器。

单片机编程:从点亮LED灯开始(二)

低版本的红圈部分,可能要选择Reset Pin

一般情况下CubeMX都配置好了,不再需要额外修改。

IAR软件仿真下载

最后一步,就是“烧写”程序了。

先把线接好。

接线有两个部分:

  1. 给板子供电。方法很多,具体取决于工控板的设计。一般来说可以用DC口,也可以用miniUSB口。我这里直接miniUSB口插一根miniUSB-USB的线,插到充电宝上。

  2. 板子接仿真器再接电脑。

供电部分接线,用充电宝电脑啥的都行供电部分接线,用充电宝电脑啥的都行

仿真器接线,右上角那根弦通过USB口连接到电脑仿真器接线,右上角那根弦通过USB口连接到电脑

接好线之后可以打开设备管理器确认一下有没有插好线。

Windows10系统里,可以在开始菜单搜索设备管理器,然后打开。

单片机编程:从点亮LED灯开始(二)

之后我们再按照图里的顺序点击。

  1. 先点击1,也就是make,会检查和编译,然后输出可执行文件。

  2. 等待操作完成以后,点击2,也就是download and debug,即仿真下载和调试。

单片机编程:从点亮LED灯开始(二)

这样就完成了烧写程序的工作啦!

进入调试模式之后,我们看到的界面如下:

单片机编程:从点亮LED灯开始(二)

画红框的几个按钮很好理解

Step Over,步进,这是逐过程地运行。简单理解就是,运行到下一行。

Step Into,步入,简单理解就是运行到函数里面去。

Step Out,步出,简单理解就是运行完当前函数,跳出去。

Next Statement,设置断点的话,就是直接运行到下一个断点,不设置的话就跟Step Over差不多。

Go,简单理解就是让它自由自在地跑下去。

Reset,复位,简单理解就是回到main函数的第一行开始运行。


单片机编程:从点亮LED灯开始(二)

当然,我们也可以完全不调试。

直接退出,单片机就会自动执行程序。

来欣赏结果

突然赛博朋克了起来突然赛博朋克了起来

其实我设置的时候,特地设置成了板子上自带的LED灯的引脚。

所以现在的效果就是,这三个灯常亮啦。

流水灯效果

下一篇我们将会讲解怎么做流水灯效果。

炫酷哦。

咕咕咕咕咕咕


展开 收起

MIJIA 米家 智能追光氛围灯带 2m

MIJIA 米家 智能追光氛围灯带 2m

72元起

Apple 苹果 AirTag 智能跟踪器

Apple 苹果 AirTag 智能跟踪器

175元起

iFLYTEK 科大讯飞 翻译机4.0 黑色

iFLYTEK 科大讯飞 翻译机4.0 黑色

1999元起

华为智选 荣泰G36筋膜枪智能按摩运动肌肉放松压力男女专业电动按摩健身高端多功能迷你减震便携

华为智选 荣泰G36筋膜枪智能按摩运动肌肉放松压力男女专业电动按摩健身高端多功能迷你减震便携

415元起

watchbond 适用华为GT4表带GT3米兰尼斯watch4手表3pro磁吸watchgt4新pronew智能B6环7荣耀magic钛金属夏天钢2e男款陶瓷

watchbond 适用华为GT4表带GT3米兰尼斯watch4手表3pro磁吸watchgt4新pronew智能B6环7荣耀magic钛金属夏天钢2e男款陶瓷

暂无报价

星菲扬 适用iwatch表带磁吸applewatchultra2表带se米兰尼斯s9苹果手表表带8代7/6/5金属不锈钢s8男女款45mm运动透气

星菲扬 适用iwatch表带磁吸applewatchultra2表带se米兰尼斯s9苹果手表表带8代7/6/5金属不锈钢s8男女款45mm运动透气

暂无报价

Ninebot 九号 车载电动充气泵打气筒轮胎压数显 自行车打气筒篮足气球泳圈充气筒 充气宝

Ninebot 九号 车载电动充气泵打气筒轮胎压数显 自行车打气筒篮足气球泳圈充气筒 充气宝

暂无报价

官款适用小米手环8/7/6/5/4腕带手表3表带nfc三四五六七八代智能替换带2运动硅胶软个性潮男高级女生薰衣草 经典黑

官款适用小米手环8/7/6/5/4腕带手表3表带nfc三四五六七八代智能替换带2运动硅胶软个性潮男高级女生薰衣草 经典黑

4.15元起

PITAKA 新款纯碳纤维手表带适用于苹果手表全系列Apple Watch Ultra 2/ Ultra/S9/8/7/6/5代iWatch磁吸高级感

PITAKA 新款纯碳纤维手表带适用于苹果手表全系列Apple Watch Ultra 2/ Ultra/S9/8/7/6/5代iWatch磁吸高级感

暂无报价

HUAWEI 华为 适用华为手环6表带荣耀6腕带金属NFC版智能运动手表配件定制米兰磁吸真皮编织硅胶潮流替换带透明钢带非原装

HUAWEI 华为 适用华为手环6表带荣耀6腕带金属NFC版智能运动手表配件定制米兰磁吸真皮编织硅胶潮流替换带透明钢带非原装

7.9元起

适用小米手环8/7/6/5/4腕带3NFC金属米兰磁吸卡扣不锈钢智能手表带四五六代通用真皮男女款运动替换带配件潮

适用小米手环8/7/6/5/4腕带3NFC金属米兰磁吸卡扣不锈钢智能手表带四五六代通用真皮男女款运动替换带配件潮

暂无报价

PICO 4 便携包 便携收纳包 毛毡外壳 防震防摔 黑色

PICO 4 便携包 便携收纳包 毛毡外壳 防震防摔 黑色

299元起

iFLYTEK 科大讯飞 P20 电子词典笔 32GB 蓝色

iFLYTEK 科大讯飞 P20 电子词典笔 32GB 蓝色

暂无报价

PITAKA适用华为GT4手表GT3pro表带磁吸watchgt4碳纤维高级感智能运动gt2男款商务时尚运动

PITAKA适用华为GT4手表GT3pro表带磁吸watchgt4碳纤维高级感智能运动gt2男款商务时尚运动

549元起

PITAKA适用华为GT4手表GT3pro彩碳表带磁吸watchgt4浮织芳纶碳纤维高级感智能运动gt2男款商务时尚运动

PITAKA适用华为GT4手表GT3pro彩碳表带磁吸watchgt4浮织芳纶碳纤维高级感智能运动gt2男款商务时尚运动

549元起

PICO NEO3 企业版 第二代 便携收纳包 黑色毛毡外壳 防震防摔 轻巧便捷 收纳方便 黑色

PICO NEO3 企业版 第二代 便携收纳包 黑色毛毡外壳 防震防摔 轻巧便捷 收纳方便 黑色

58.02元起
18评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
85
扫一下,分享更方便,购买更轻松