前面简单介绍了STM32CubeMx的强大之处,通过本次实验将介绍如何使用cubemx创建工程并点亮LED灯,由此作为第一讲正式带大家走近嵌入式开发。
一、前期准备
1.stm32主控板(本实验使用的为常见的STM32F103C8核心板,淘宝上20块钱就能买到);
2.下载器(ST-Link,J-Link均可以,淘宝上十几块解决);
3.STM32CubeMX,Keil5_MDK软件(具体安装教程和安装包见第一讲)。
文末有购买清单。
二、如何电亮(硬件控制)
通过观察电路图我们发现核心板上有两个LED指示灯,分别为LED指示灯(PC13)和电源指示灯,属于比较常见的LED电路,当PC13引脚通入低电平(0),由于LED二极管单向导电性,LED阳极和阴极之间构成通路,LED点亮。同理,当PC13通入高电平(1)时,LED阳极阴极之间无发形成电势差,LED无法被点亮。这也是为什么当主控板上电时,电源指示灯会持续被点亮。
三、使用cubemx生成代码点亮(软件控制)
前面讲过点亮LED指示灯需要我们给PC13引脚一个低电平,这里我们通过cubemx配置来控制LED电亮。
首先,打开cubemx
我们点击选择MCU型号,创建工程
选择相应的芯片类型,双击进入工程
进入工程界面,首先配置时钟 ,配置时钟为外部高速时钟,选择晶振,此时可以看到右侧芯片的OSC引脚变成绿色(1.绿色代表已配置 2.黄色代表不可配置,例如电源VBAT 3.灰色代表暂未配置)
配置时钟树,填写外部晶振频率,选择HSE外部高速时钟,PLL倍频,配置最大频率72Mhz
选择SYS配置下载调试模式为SW模式,如果未配置Bebug模式,芯片下载一次会被锁死,此时需要重新配置Bebug模式,然后按住复位键下载(比较麻烦,建议养成习惯,优先配置好)。
配置LED的GPIO为低电平,推挽输出,无上下拉,最后可自定义引脚标签,方便移植
选择工程管理,填写工程名称和路径,选择IDE为Keil5 MDK。 注意:工程名称和路径不能存在中文。
选择复制必要库到工程,减少编译时间。选择生成.c/.h文件,方便工程管理。
打开工程。
打开工程后,进入下载器选择,选择自己对应的下载器下载即可
可以看到LED被点亮
代码工程和购买清单已上传至百度网盘
链接:https://pan.baidu.com/s/1cpwJ5O2TMAr3BPtwYoZFrg?pwd=rzp v (删除最后空格,复制链接打开)
提取码:rzpv