资料介绍
今日分享如何通过手册理解单片机 IO 知识点
含义解释:
1. GPIO:同我们常说的 IO 口一样, General Purpose Input Output (通用 输入/输出)简称为 GPIO,每个 GPIO 端口可通过软件分别配置成输入 或输出模式
2. 外设:指的是除 CPU 以外的外围功能模块,只不过这部分电路依旧被 封装在单片机内部,比如 IO,ADC,DAC,TIM 等
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 口,需要在外部加一个上拉电阻配合使用。如图:

完整版技术文档请点击文章开头普通下载
- STM32单片机GPIO口简介
- 基于Proteus的51单片机学习笔记之GPIO的简单使用
- 51单片机机学习笔记之LED灯闪烁
- 单片机的GPIO的一些学习
- 51单片机学习笔记之数码管1显示数字0以及使用蜂鸣器
- 51单片机学习笔记之按键控制一盏小灯
- 单片机应该如何学习单片机的学习方法说明
- 应该如何学习单片机?单片机的学习方法总结
- 单片机应该如何学习学习单片机的步骤详细资料说明
- 单片机学习入门之单片机基础知识详细资料概述 80次下载
- 什么是单片机怎样学习?单片机基础知识及Proteus应用简介资料概述 18次下载
- PICmicro中档单片机系列之器件配置位 0次下载
- PICmicro中档单片机系列之LCD
- 如何学习msp430单片机 24次下载
- Proteus之单片机与PC机的串行通信 0次下载
- 如何使用e2studio对瑞萨单片机进行GPIO输出 1.7k次阅读
- 一个暑假如何学习单片机 1.3k次阅读
- 新手学习单片机最常见的六大误区! 1.8k次阅读
- 学习单片机一定要先学好C语言再去学单片机吗 1.6w次阅读
- 51单片机的学习步骤 8.9k次阅读
- 如何学习STC单片机详细STC单片机资料说明 1.3w次阅读
- 如何又快又好的学习单片机? 1.7w次阅读
- 新手学习单片机的首选:51单片机 9.6k次阅读
- 怎样才能快速学习8051单片机呢 1.4w次阅读
- 详细的STM32单片机学习笔记 1.6w次阅读
- 单片机有什么特点_为什么要学习单片机? 1.1w次阅读
- 单片机初学者必看:这些单片机学习心得要牢记 1.5w次阅读
- 单片机必须了解的外设功能——GPIO/串行通信 2.6w次阅读
- 51单片机学习感悟与51单片机上拉电阻心得 4.5k次阅读
- 51单片机学习精髓之单片机学习板制作过程 4.4w次阅读
下载排行
本周
- 1双洎锂电池宣传册
- 39.01 MB | 6次下载 | 免费
- 2LX8201微孔雾化驱动板说明
- 1.81 MB | 2次下载 | 免费
- 310A电流模式非同步PWM升压转换器芯片 SD6276数据手册
- 2.84 MB | 次下载 | 1 积分
- 4SD8916A 800毫安,2-6伏输入,1.5兆赫同步降压转换器数据手册
- 10.74 MB | 次下载 | 1 积分
- 5EC300X 100M&1000M Ethernet Tap
- 803.59 KB | 次下载 | 免费
- 6EC400X 10Gbase-t1 Ethernet Converter
- 1.01 MB | 次下载 | 免费
- 7EC500X 10base-t1s Ethernet Converter
- 1.19 MB | 次下载 | 免费
- 8贴片电容参数选型FAQ手册
- 1.22 MB | 次下载 | 1 积分
本月
- 1双洎锂电池宣传册
- 39.01 MB | 6次下载 | 免费
- 2电子书:《AI 与功能安全》
- 727.37 KB | 3次下载 | 免费
- 3GPM055P04LTF 40V 100A P沟道MOSFET TO252 封装
- 1.25 MB | 2次下载 | 免费
- 4LX8201微孔雾化驱动板说明
- 1.81 MB | 2次下载 | 免费
- 5AEV210-DC060D 直流充电桩安装使用说明书
- 2.37 MB | 1次下载 | 免费
- 6SD9233B 超强EMC抗干扰触摸开关芯片数据手册
- 6.44 MB | 1次下载 | 免费
- 7LDR6021Q中文手册
- 1.96 MB | 1次下载 | 免费
- 8GPM380NP04LTG 40V 25A TO252封装N型和P型沟道MOSFET
- 2.20 MB | 1次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233097次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191476次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183363次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81608次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73845次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65992次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论