STM32小白视角笔记(标准库)(乱序版)

📅 2026/8/3 2:45:12
STM32小白视角笔记(标准库)(乱序版)
STM32一、点灯操作1.用寄存器的方式更改起来比较麻烦除了PC13之外的位都配置成0通过更改GPIOC-ODR来实现点灯熄灯操作2.用库函数的方式在工程目录下新建Library文件夹用来存放库函数函数不会写怎么办把光标放在RCC_APB2PeriphClockCmd上面就可以看到需要传递的参数了然后你右键此函数名称直接跳转到函数定义里面定义了参数值可以填入哪些OKthat is可以看到此函数都是封装好的或等于和与等于so库函数的配置不会影响到寄存器的其他位库函数相比较寄存器有很大的好处我们只需要调用库函数配置好参数就可以了✅GPIO_Init这个函数使用结构体来配置参数此函数的简介结构体的其中一个参数如图GPIO_Mode_Out_PP是通用推挽输出GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_PinGPIO_Pin_13;GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz;取地址符STM32的配置方式都是固定的熟能生巧最后设置高低电平这就是全部代码了手指缩放调节字体大小或点击工具栏的图标配置字体和颜色分别通过注释高低电平实现点灯关灯操作先点击左上角编译按钮再点LOAD下载按钮然后观察的亮与灭F103最小系统板PC13是低电平点亮3.3V → 限流电阻 → LED正极 → LED负极 → STM32 IO引脚IO输出低电平(0)电流流通 → 灯亮IO输出高电平(1)两端电压相等无电流 → 灯灭三、GPIO输出简介GPIOGeneral Purpose Input Output–通用输入/出口应用驱动LED、控制蜂鸣器、模拟通讯协议输出时序三种输出模式推挽输出模式(又称强推输出模式)P-MOS和N-MOS均有效数据寄存器为1时上管导通下管断开输出直接接到VDD-输出高电压数据寄存器为0时上管断开下管导通输出直接接到VSS-输出低电压.开漏输出模式(可以作为通讯协议的驱动方式)在多机通信的情况下可以避免各个设备的相互干扰P-MOS无效N-MOS有效数据寄存器为1时下管断开输出相当于断开-高阻模式数据寄存器为0时下管导通输出直接接到VSS-输出低电压.关闭模式四、GPIO应用1.LED闪烁用跳线GND引到负极-3.3V引到正极操作STM32的GPIO的3个步骤Step1使用RCC开启GPIO的时钟Step2使用GPIO_Init函数初始化GPIOStep3使用输出/入函数控制GPIO口看一下RCC最常用的三个函数外设时钟控制两个参数第一个参数选择外设第二个参数选择使/失能ENABLE/DISABLEGPIO常用的库函数调用GPIO_DeInit函数指定的GPIO外设会被复位GPIO_AFIODeInit函数可以复位AFIO外设GPIO_Init函数重要用结构体的参数初始化GPIO口GPIO_StructInit函数读取函数GPIO_ReadInputDataBit/GPIO_ReadInputData/GPIO_ReadOutputDataBit/GPIO_ReadOutputData写入函数GPIO_SetBits/GPIO_ResetBits/GPIO_WriteBit/GPIO_Write光标放在变量上右键跳转定义GPIO的八种工作模式我们点灯用的是推挽输出所以用GPIO_Mode_Out_PP可以看下图LED灯亮了然后灯不亮了然后又亮了然后又不亮了2.LED流水灯需要用到循环语句并且在工程里加上延时函数if你就想要给它1和0,1是高电平0是低电平怎么办需要强制类型转换