FEATURED · 精选文章

1.0STM32工程配置

发布时间 / 2026/8/15 11:30:54
来源 / 创域科博编辑部
栏目 / 资讯中心
1.0STM32工程配置 生成hex函数勾好基于寄存器开发STM32建立到如下步骤就可以了插上STM32标准库开发的固定顺序本质都是开时钟 → 配置参数 → 初始化 → 使用功能一、为什么要开时钟 RCCSTM32为了省电默认很多外设关闭。比如你想控制 GPIOC。但是 GPIOC 就像一个房间房间存在但是电闸没开你进去操作没反应。所以第一步1. 开外设时钟代码RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);拆开RCCReset and Clock Control复位和时钟控制。负责给外设供电提供工作时钟二、配置GPIO参数STM32不像5151P20;默认已经知道P2是什么。但是STM32一个GPIO可以输入输出模拟复用功能所以你必须告诉它我要怎么用。2. 创建配置结构体GPIO_InitTypeDef GPIO_InitStructure;这个就是创建一个“配置表”。类似你填写姓名 年龄 地址然后提交。GPIO这里填写模式 引脚 速度三、填写配置设置模式GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP;意思GPIO模式Output Push Pull输出推挽。简单理解我要控制LED所以我要输出。设置引脚GPIO_InitStructure.GPIO_Pin GPIO_Pin_13;意思使用PC13。你的F103C8T6开发板LED通常接PC13。设置速度GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;意思GPIO最高变化速度。LED50MHz无所谓。高速通信才重要。四、初始化前面只是填写表。现在提交。GPIO_Init(GPIOC,GPIO_InitStructure);意思把刚才的配置写入GPIOC。执行完以后PC13正式成为输出模式。五、控制输出输出高电平GPIO_SetBits(GPIOC,GPIO_Pin_13);相当于51P21;输出低电平GPIO_ResetBits(GPIOC,GPIO_Pin_13);相当于P20;所以完整代码模板#include stm32f10x.h int main(void) { //1. 开GPIOC时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); //2. 定义GPIO配置结构体 GPIO_InitTypeDef GPIO_InitStructure; //3. 配置GPIO参数 //输出模式 GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP; //PC13 GPIO_InitStructure.GPIO_Pin GPIO_Pin_13; //速度50MHz GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; //4. 初始化GPIO GPIO_Init(GPIOC,GPIO_InitStructure); //5. 控制LED while(1) { GPIO_ResetBits(GPIOC,GPIO_Pin_13); //LED亮 GPIO_SetBits(GPIOC,GPIO_Pin_13); //LED灭 } }但是你现在会发现这代码比51长很多。为什么因为STM32更强。51一个IO高 低就结束。STM32一个IO可以GPIO输出 GPIO输入 ADC输入 串口TX PWM输出 SPI I2C一个脚有很多功能。所以它必须先配置。
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻