电子发烧友App

硬声App

扫码添加小助手

加入工程师交流群

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>单片机学习之GPIO

单片机学习之GPIO

2025-03-26 | pdf | 796.86 KB | 次下载 | 免费

资料介绍

今日分享如何通过手册理解单片机 IO 知识点

含义解释:

1. GPIO:同我们常说的 IO 口一样, General Purpose Input Output (通用 输入/输出)简称为 GPIO,每个 GPIO 端口可通过软件分别配置成输入 或输出模式

2. 外设:指的是除 CPU 以外的外围功能模块,只不过这部分电路依旧被 封装在单片机内部,比如 IO,ADCDACTIM 等

3. 复位:把 MCU 恢复到最开始的状态,比如说我们把电脑重启了一次, 就相当于复位了一次,在这里我们把 MCU 恢复到初始的状态称为复 位

4. 往某一位写 1,在硬件上就相当于把把它设置成高电平,清 0 则与之 相反

芯片的缩略封装图:

STM32F373CCT6 总共有 48 个引脚(图中左上角红色圈起来的 1 代表芯片的 1 号 引脚,后面的以此类推,我们这里把 1 脚简称 1Pin),分以下几个类别:

 1.可以编程控制的引脚:PAx(x 表示 0,1,2…),PBx(x 表示 0,1,2…)等以相同 类似方式命名的。STM32F373CCT6 分多组 IO 口,分别用大写字母表示,即 x=A/B/C/D/E/F,例如 GPIOA,表示 A 组 IO 口,这组 IO 口下面又有很多引脚,那 么我们就用 PA0,PA1,PA2 等方式来表示,每组下面最多 16 个 IO 口。通俗点来 讲:GPIOA 就相当于八年级五班这个班级,PA0,PA1 相当于班里的学生,有叫 李刚的,有叫张华的等等,每个班最多 16 个学生

我们看到有的可编程控制的引脚,例如 PC14-OSC32-IN,那么说明这个引脚 有多种功能,可以当 IO 口用,也可以当做 OSC32-IN 用,在下面我们会具体解释 这样的引脚

2. 不可编程控制的引脚:1Pin(备用电源正脚),7 Pin(复位脚), 8 Pin(模拟 电源负脚), 9 Pin(模拟电源/参考电压正脚), 17 Pin(数字电源正脚),23 Pin (SDADC1, SDADC2, SDADC3 地),24 Pin(SDADC1, SDADC2, SDADC3 电源),25 Pin (SDADC1, SDADC2, SDADC3 的外部参考电压正),44 Pin(启动内存选择引脚), 47 Pin(数字电源负脚),48 Pin(数字电源正脚)。

1. 后备区域供电脚 VBAT 脚的供电采用 CR1220 纽扣电池和 VCC3.3 混合 供电的方式,在有外部电源 (VCC3.3) 的时候, CR1220 不给 VBAT 供电, 而 在外部电源断开的时候, 则由 CR1220 给其供电。这样,VBAT 总是有电的,以 保证 RTC 的走时以及后备寄存器的内容不丢失

2. BOOT0

关于详细的引脚功能定义可以查阅《STM32F373xx》数据手册第 33 页,这里我 们解释下关于引脚的功能问题:

1. 默认功能:也就是引脚的普通功能

2. 复用功能:即将 IO 口用作普通输入输出以外的功能,通过配置相关寄存器后 选择的功能,例如串口输入输出,使用时需要配置复用模式

想要配置成复用功能,首先需要查看引脚定义看看这个 IO 口可不可以被配 成复用功能,这个是由 IO 的内部电路决定的。如果有才可以被配置,配置成复 用功能不仅仅是要通过寄存器 GPIOx_MODER 配制成复用功能模式,而且还要通 过 GPIOx_AFRL,GPIOx_AFRH 寄存器选择 IO 复用功能。这样 IO 口才能真正被配 成复用功能

3. 附加功能:配置相关外设寄存器来选择的功能,比方配置 ADC 使能某些通道 等来使能相应管脚的附加功能。同样想要配置成附加功能,首先需要查看引 脚定义看看这个 IO 口可不可以被配成附加功能,这个也是由 IO 的内部电路 决定的。如果有,那么通过寄存器 GPIOx_MODER 配制成模拟功能模式

每组通用 I/O 端口包括 4 个 32 位配置寄存器 (MODER、 OTYPER、 OSPEEDR 和 PUPDR) 、2 个 32 位数据寄存器(IDR 和 ODR) 、1 个 32 位 置位/复位寄存器 (BSRR)、1 个 32 位锁定寄存器 (LCKR) 和 2 个 32 位复用功 能选择寄存器(AFRH 和 AFRL)等,可以被配置成一下几种不同的模式:

输入上拉:IO 口上拉就是在 IO 口通过接一个电阻到电源(注意这个电压要 和单片机供电电压相同,否则过高会烧毁 IO),电阻的大小决定了电源到 IO 口电 流的不同,这就是我们常说的弱上拉等。下面附图一张

输入下拉:下拉就是在 IO 口通过接一个电阻到地,电阻的大小决定了 IO 口到地 电流的不同,这就是我们常说的弱下拉等。下面附图一张

输入浮空/模拟输入:浮空(floating)就是逻辑器件的输入引脚即不接高电平, 也不接低电平。浮空最大的特点就是电压的不确定性,它可能是 0V,也可能是 VCC, 还可能是介于两者之间的某个值. 浮空一般用来做 ADC 输入用,可能有的芯片把 浮空模式和模拟输入模式分开了,在此解释一下,在浮空模式下使能了 IO 的模 拟功能就相当于是模拟输入

开漏输出:开漏输出就是我们所说的 OC 输出,不输出电压,相当于 N 型三极管 的集电极作为单片机的 IO 口,需要在外部加一个上拉电阻配合使用。如图:

完整版技术文档请点击文章开头普通下载

单片机 软件工程师 单片机工程师
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

  • --
    文章
  • --
    阅读
  • --
    粉丝

下载排行

本周

  1. 1双洎锂电池宣传册
  2. 39.01 MB  |  6次下载  |  免费
  3. 2LX8201微孔雾化驱动板说明
  4. 1.81 MB   |  2次下载  |  免费
  5. 310A电流模式非同步PWM升压转换器芯片 SD6276数据手册
  6. 2.84 MB   |  次下载  |  1 积分
  7. 4SD8916A 800毫安,2-6伏输入,1.5兆赫同步降压转换器数据手册
  8. 10.74 MB   |  次下载  |  1 积分
  9. 5EC300X 100M&1000M Ethernet Tap
  10. 803.59 KB  |  次下载  |  免费
  11. 6EC400X 10Gbase-t1 Ethernet Converter
  12. 1.01 MB  |  次下载  |  免费
  13. 7EC500X 10base-t1s Ethernet Converter
  14. 1.19 MB  |  次下载  |  免费
  15. 8贴片电容参数选型FAQ手册
  16. 1.22 MB   |  次下载  |  1 积分

本月

  1. 1双洎锂电池宣传册
  2. 39.01 MB  |  6次下载  |  免费
  3. 2电子书:《AI 与功能安全》
  4. 727.37 KB  |  3次下载  |  免费
  5. 3GPM055P04LTF 40V 100A P沟道MOSFET TO252 封装
  6. 1.25 MB  |  2次下载  |  免费
  7. 4LX8201微孔雾化驱动板说明
  8. 1.81 MB   |  2次下载  |  免费
  9. 5AEV210-DC060D 直流充电桩安装使用说明书
  10. 2.37 MB   |  1次下载  |  免费
  11. 6SD9233B 超强EMC抗干扰触摸开关芯片数据手册
  12. 6.44 MB   |  1次下载  |  免费
  13. 7LDR6021Q中文手册
  14. 1.96 MB   |  1次下载  |  免费
  15. 8GPM380NP04LTG 40V 25A TO252封装N型和P型沟道MOSFET
  16. 2.20 MB  |  1次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935137次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420064次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233097次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191476次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183363次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81608次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73845次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65992次下载  |  10 积分