很多小伙伴接触STM32开始都采用库函数编程,不清楚如何使用寄存器方式开发STM32;这篇文章就讲一下如何新建寄存器风格的STM32工程,并介绍需要用到哪些官方系统文件等。
开发环境: keil5.25
编程语言: C语言
操作系统: win10 64位
MCU型号: ST32F103C8T6 (F103系列都是通用的,区分容量即可)
库函数的版本: 3.5 (新建工程需要用到库函数包里的一些系统必要文件)
库函数资料包下载地址: https://bbs.cdsy.xyz/thread-20558-1-1.html
STM32系列简介:
STM32系列专为要求高性能、低成本、低功耗的嵌入式应用设计的。
主流产品(STM32F0、STM32F1、STM32F3)、超低功耗产品(STM32L0、STM32L1、STM32L4、STM32L4+)、高性能产品(STM32F2、STM32F4、STM32F7、STM32H7)
以STM32F103RBT6这个型号的芯片为例,该型号的组成为7个部分,其命名规则如下:
1 | STM32 | STM32代表ARM Cortex-M内核的32位微控制器。 |
2 | F | F代表芯片子系列--通用系列。 |
3 | 103 | 103代表增强型系列。 |
4 | R | R这一项代表引脚数,其中T代表36脚,C代表48脚,R代表64脚,V代表100脚,Z代表144脚,I代表176脚。 |
5 | B | B这一项代表内嵌Flash容量,其中6代表32K字节Flash,8代表64K字节Flash,B代表128K字节Flash,C代表256K字节Flash,D代表384K字节Flash,E代表512K字节Flash,G代表1M字节Flash。 |
6 | T | T这一项代表封装,其中H代表BGA封装,T代表LQFP封装,U代表VFQFPN封装。 |
7 | 6 | 6这一项代表工作温度范围,其中6代表-40——85℃,7代表-40——105℃。 |
STM32L电路的设计目的是以低电压实现高性能,有效延长电池供电设备的充电间隔。片上模拟功能的最低工作电源电压为1.8V。数字功能的最低工作电源电压为1.65V,在电池电压降低时,可以延长电池供电设备的工作时间。
从应用类别来说,STM32可以有以下用处:
1. 无人机制作:现在无人机主流的微控制器所用的就是stm32控制器。
2. 简单仪器仪表:stm32可以用作简单示波器、频率计,对采集的数字信号进行处理并送入屏幕显示。
3. 机器人:常看到的就是家用的扫地机器人,还要就是国内各种机器人比赛的小型机器人,几乎都用的是stm32控制器,毕竟现在stm32接口种类齐全、功能又多、价格便宜、资料齐全。
4. 电源控制器:全国电子设计大赛常考题的电源题,很多同学制作电源首选控制器也大多会选择stm32。
如果在keil安装之后,后续想要安装其他的芯片的支持包,可以下载芯片的xxx.pack包直接导入。
接下来就可以写代码点亮第一盏LED灯。
#include "stm32f10x.h"
int main()
{
while(1)
{
}
}