一、简介
意法半导体基于Arm® Cortex-M0的STM32F0系列器件实现了32位性能,同时传承了STM32系列的重要特性,特别适合成本敏感型应用。STM32F0 MCU集实时性能、低功耗运算和STM32平台的先进架构及外设于一身。
STM32F0系列产品基于Cortex-M0
内核,工作频率均为48MHz,均配有标准的通信接口,这里使用的是stm32f030F4P6
最小系统板
对于STM32F030F4
系列芯片,ST官方给出其电路原理图
其系统架构如下
二、规格说明
2.1 器件一览
该型号产品特征与外设配置如下
模块内部构造框图如下
2.2 启动模式
启动时,可以使用boot引脚以及boot选择器引脚选择三种启动模式中的一种
- Flash启动
- 系统存储器启动
- 内部SRAM启动
Bootloader存放于系统存储器中,通过USART对Flash重新编程
2.3 时钟树
该型号时钟树如下
2.4 存储器映射
程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址空间内,数据字节以小端格式存放,可访问的存储器空间被分为8个主要块,每块为512MB,存储器映射如下
可以看出,M0内核系列大部分寄存器地址是被保留。
2.5 启动配置
在下载好程序后,重启芯片时,在SYSCLK的第4个上升沿,BOOT引脚值将被锁存,可通过此时的BOOT[1:0]引脚选择三种不同启动模式
BOOT1 | BOOT0 | Mode |
---|---|---|
x | 0 | 主Flash被选为启动区域 |
1 | 1 | 系统存储器被选为启动区域 |
0 | 1 | 内置SRAM被选为启动区域 |
可以看到,主Flash启动和其他内核MCU相同,两外两种启动模式却相反
- 主闪存
内置Flash,内部内容可在两个地址区域访问,使用JTAG或SWD模式下载 - 系统存储器
内置ROM,内部内容可在两个地址区域访问,通常由芯片厂商在此预置了一段BootLoader,即ISP程序,相当于电脑的BIOS,BootLoader提供了串口下载程序固件,启动步骤:先将BOOT0置1,BOOT1置0,然后复位即可启动BootLoader;在BootLoader帮助下,通过串口将程序下载到Flash中;下载完成后,将BOOT0置0,再复位。 - 内置SRAM
内置RAM,只能在其源地址进行访问,一般用于程序调试
三、点亮LED
板载一颗LED,接于PA4引脚
在CubeMX
中配置好引脚
编写LED闪烁程序
gpio.c文件
/*
**********************************************************************************
* @brief led0关
* @param None
* @return None
* @use PA4引脚低电平点亮
**********************************************************************************
*/
void LED_off()
{
HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET);
}
/*
**********************************************************************************
* @brief led0开
* @param None
* @return None
* @use PA4引脚高电平熄灭
**********************************************************************************
*/
void LED_on()
{
HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_RESET);
}
主程序中调用LED闪烁程序即可
LED_off();
HAL_Delay(500);
LED_on();
HAL_Delay(500);
最后编译烧录即可