目录
第一节 GPIO硬件介绍
第二节 GPIO软件介绍
第三节 实验
第四节 实验现象
文章图片
官网地址:http://www.fengke.club
购买链接:http://shop115904315.taobao.com/
官方QQ群:193836402
第一节 GPIO硬件介绍 STM32F407的GPIO的功能较多,可以灵活配置。每个I/O口都可以作为输出输出口使用之外,还能作为复用引脚使用,比如串口、I2C、SPI等特殊接口的引脚。但是需要注意的是每个引脚的复用功能是有限制的,比如PF0引脚的复用功能只有I2C2_SDA和FSMC_A0,所以硬件连接时需要注意每个引脚有哪些复用功能,这个可以在STM32F407的数据手册中查看。
GPIO口一共有8种模式,分别为:浮空输入,上拉输入,下拉输入,模拟输入,开漏输出,推挽输出,推挽式复用功能,开漏式复用功能。这8种功能我们就不一一介绍了,有兴趣可以上网搜索了解一下。我们主要介绍一下本章节使用到的输出模式:
- 开漏输出
- 推挽输出
第二节 GPIO软件介绍 STM32F407的每组GPIO端口有10个32位寄存器,分别为:
- 配置寄存器
文章图片
OTYPER:输出类型寄存器,用于选择GPIO的输出类型,分别为推挽输出、开漏输出。寄存器各位的描述如下图所示:
文章图片
OSPEEDR:输出速度寄存器,用于选择GPIO的输出速度,分别为:低速、中速、快速、高速。寄存器各位的描述如下图所示:
文章图片
文章图片
文章图片
PUPDR:上拉/下拉寄存器,寄存器各位的描述如下图所示:
文章图片
端口每位的配置表格如下图所示:
文章图片
文章图片
- 数据寄存器
文章图片
ODR:输出数据寄存器,用于控制GPIO的输出数据,为读写寄存器,各位的描述如下图所示:
文章图片
- 置位/复位寄存器
文章图片
- 锁定寄存器
文章图片
- 复用功能选择寄存器
文章图片
AFRL:低位复用功能选择寄存器,用于选择引脚分组中的低8位引脚的复用功能。寄存器各位的描述如下图所示:
文章图片
第三节 实验 GPIO实验通过LED来实现流水灯的现象,LED与MCU硬件连接的电路图如下图所示:
文章图片
文章图片
两个LED分别与PC1与PC4引脚相连,那么我们就对PC1与PC4引脚进行配置,配置代码(通过调用官方库)如下图所示:
文章图片
详细的代码可以参考我们提供的例程代码。
开发接口连接可以参考《开发接口连接教程》,路径为:..\WT_Mobile\0.从这里开始\2.快速上手。
开发板供电可以参考《如何上电》教程,路径为:..\WT_Mobile\0.从这里开始\0.开机测试。
下面打开GPIO实验工程文件GPIO流水灯.uvproj,路径为:..\WT_Mobile\1.初级教程\STM32F407\1_GPIO\GPIO流水灯\user,如下图所示:
文章图片
打开代码后先点击编译按钮,编译完成没有错误之后直接点击Load按钮下载代码,如果需要调试,单步运行代码就点击DEBUG按钮,如下图所示:
文章图片
第四节 实验现象 完成第三节的操作之后,就会看到板子上的流水灯现象。如果按Load按钮下载没有现象就按一下板子上的复位按键。如果点击的DEBUG按钮就需要点击全速运行。
【【开源】STM32F407-GPIO实验教程——疯壳·ARM双处理器开发板系列】
推荐阅读
- 【开源】DA14580-BLE透传实验教程——疯壳·ARM双处理器开发板系列
- 【开源】DA14580-SPI教程——疯壳·ARM双处理器开发板系列
- 【开源】DA14580-GPIO实验教程——疯壳·ARM双处理器开发板系列
- 【开源】DA14580-I2C教程——疯壳·ARM双处理器开发板系列
- 【开源】DA14580-定时器实验教程——疯壳·ARM双处理器开发板系列
- 基于CubeIDE开发笔记|HAL库部分常用函数名称及作用
- 汇编笔记|汇编语言笔记-keil5软件仿真及调试
- Station|Station P2(ROC-RK3568-PC) 裸机开发1_开发环境搭建
- 物联网|含税9.9元包邮——合宙ESP32-C3核心板来了