开始学习STM32,LED闪烁,流水灯,蜂鸣器

发布时间 2023-09-02 00:33:46作者: 半块烧饼

 

快捷键:

CTRL+F 搜索

 

小结:1.点亮LED要设置推挽输出模式,高低电平都有驱动能力

   2.点灯用到RCC和GPIO两个外设

 

目的:操作STM32的GPIO

 

步骤:1.使用RCC开启GPIO时钟

   2.使用GPIO_Init函数初始化GPIO

   3.使用输出或输入的函数控制GPIO口

 

 

课程:

1.listing和objects文件占空间比较大,可以在上级文件目录添加keilkill文件,双击删除这两个文件。

 2.rcc.h文件中包含了RCC所有需要的头文件,我们常用的只有三个:

 右键跳转来到.c文件中的定义,三个函数参数一样,第一个选择外设,第二个参数控制使能或失能,目的是打开时钟。

 

3.GPIO.H中最下面包含了全部GPIO相关函数:

 

 第一个函数GPIO_DeInit给指定的GPIO外设复位

第三个函数GPIO_Init:用结构体的参数来初始化GPIO。使用时要先定义一个结构体变量,然后给结构体赋值,最后调用函数

 

对结构体赋值时GPIO_Mode选择GPIO的模式:一共有八种

 AIN-模拟输入

IN_FLOATING-浮空输入

IPD-下拉输入

PIU-上拉输入

Out_OD-开漏输出

Out_PP-推挽输出

AF_OD-复用开漏

AF_PP-复用推挽

 

点灯时使用推挽输出,推挽模式下高低电平均有驱动能力;开漏输出模式高电平没有驱动能力,相当于高阻态,只有低电平有驱动能力;

 

 

第四个函数GPIO_StructInit:把结构体变量赋一个默认值

 后面八个函数可以实现读写GPIO口的功能:本小节介绍后四个输出函数

Set_Bits - 把指定的端口设置高电平

Reset-Bits - 把指定的端口设置低电平

WriteBit - 通过第三个参数的值来设置指定端口:第三个参数还可以写成用强制转换类型后的0,1

 

 

 

GPIO_Write - 同时对16个端口进行写入操作

后面的暂时用不到