侵权投诉

STM32单片机的八种IO口模式

玩转单片机 2020-09-21 16:25 次阅读

八种IO口模式

STM32有八种IO口模式,分别是:模拟输入、浮空输入、上拉输入、下拉输入、开漏输出、推挽输出、复用开漏输出和复用推挽输出。

1、模拟输入

GPIO_Mode_AIN模拟输入,即关闭施密特触发器,将电压信号传送到片上外设模块(不接上下拉电阻)。

2、浮空输入

GPIO_Mode_IN_FLOATING浮空输入。浮空输入状态下,IO的电平状态是不确定的,完全由外部输入决定,如果在该引脚悬空的情况下,读取该端口的电平是不确定的。

3&4、上下拉输入

GPIO_Mode_IPD下拉输入,GPIO_Mode_IPU上拉输入。一般来讲,上拉电阻为1K-10K,电阻越小,驱动能力越强。

电阻的作用:防止输入端悬空,减少外部电流对芯片的干扰,限流,增加高电平输出时的驱动能力。

当GPIO引脚无输入时,上拉输入在默认状态下为高电平,下拉输入在默认状态下为低电平。

5、开漏输出

GPIO_Mode_Out_OD开漏输出,输出端相当于三极管的集电极。要得到高电平状态需要上拉电阻才行。适合于做电流型的驱动,其吸收电流的能力相对较强,一般20mA以内。

6、推挽输出

GPIO_Mode_Out_PP推挽输出,可以输出高、低电平,连接数字器件。

7&8、复用开漏推挽输出

GPIO_Mode_AF_OD复用开漏输出,GPIO_Mode_AF_PP复用推挽输出。可以理解为GPIO口被用作第二功能时的配置情况,即并非作为通用IO口使用。

IO模式选用

浮空输入:可以做KEY识别,RX1。

上拉输入:IO内部上拉电阻输入。

下拉输入:IO内部下拉电阻输入。

模拟输入:应用ADC模拟输入,或者低功耗下省电。

开漏输出:IO输出0接GND,IO输出1,悬空,需要外接上拉电阻,才能实现输出高电平。当输出为1时,IO口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样IO口也就可以由外部电路改变为低电平或不变。可以读IO输入电平变化,实现C51的IO双向功能。

推挽输出:IO输出0-接GND,IO输出1 -接VCC,读输入值是未知的。

复用推挽输出:片内外设功能,I2C的SCL、SDA。

复用开漏输出:片内外设功能,TX1,MOSI,MISO.SCK.SS。

引脚配置方式  通常有5种方式使用某个引脚功能,它们的配置方式如下:

1、作为普通GPIO输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。

2、作为普通GPIO输出:根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。  3、作为普通模拟输入:配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。  4、作为内置外设的输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。  5、作为内置外设的输出:根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块。  

原文标题:STM32单片机必须掌握的八种IO口模式和引脚配置方式

文章出处:【微信号:mcu168,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

单片机上拉电阻有什么样的作用好使用原则详细说明

电子发烧友网站提供《单片机上拉电阻有什么样的作用好使用原则详细说明.pdf》资料免费下载
发表于 11-26 23:50 14次 阅读
单片机上拉电阻有什么样的作用好使用原则详细说明

如何让STC单片机接上电就可以开始工作

电子发烧友网站提供《如何让STC单片机接上电就可以开始工作.pdf》资料免费下载
发表于 11-26 23:48 11次 阅读
如何让STC单片机接上电就可以开始工作

使用单片机实现看门狗溢出测试的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现看门狗溢出测试的C语言程序免费下载。
发表于 11-26 17:31 10次 阅读
使用单片机实现看门狗溢出测试的C语言程序免费下载

使用单片机实现外部中断1电平触发的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现外部中断1电平触发的C语言程序免费下载。
发表于 11-26 17:31 13次 阅读
使用单片机实现外部中断1电平触发的C语言程序免费下载

使用单片机实现外部中断0电平触发的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现外部中断0电平触发的C语言程序免费下载。
发表于 11-26 17:31 11次 阅读
使用单片机实现外部中断0电平触发的C语言程序免费下载

使用单片机实现矩阵键盘简易计算器的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现矩阵键盘简易计算器的C语言程序免费下载。
发表于 11-26 17:31 19次 阅读
使用单片机实现矩阵键盘简易计算器的C语言程序免费下载

使用单片机实现按键长按短按效果的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现按键长按短按效果的C语言程序免费下载。
发表于 11-26 17:31 12次 阅读
使用单片机实现按键长按短按效果的C语言程序免费下载

单片机是如何构成的?

  单片机是这些电器动作的关键,是指挥硬件运行的。例如:接收按钮或按键的输入信号,按照事先编好的程序,指挥马达和LCD的...
发表于 11-26 17:12 108次 阅读
单片机是如何构成的?

stm8单片机的供电模块

  STM8 的MCU有四个供电单元:   1. VDD/VSS:主电源(3V~5.5V);   2. VDDIO/VSSIO: I/O口...
发表于 11-26 17:10 101次 阅读
stm8单片机的供电模块

常见的四种单片机常用开方根算法

  C语言中要求平方根,可以在头文件中加入#include 〈math.h》。然后调用sqrt(n);函数即可。但在单片机中调用此函数无疑会耗...
发表于 11-26 17:01 101次 阅读
常见的四种单片机常用开方根算法

单片机系统开发入门知识及基本条件

  1. 入门知识储备   想学习单片机系统的开发,必须先有以下几个方面的知识储备:   (一) 微机原理   (二) C语言...
发表于 11-26 16:57 0次 阅读
单片机系统开发入门知识及基本条件

单片机如何用一个IO口采集多个按键信号?

一般按键信号都是高低电平,对于每一个按键信号单片机都需要一个IO口进行采集,这种按键采集方式比较简单,但是占用的单片机I...
发表于 11-26 16:51 0次 阅读
单片机如何用一个IO口采集多个按键信号?

减轻单片机设计干扰的方法

现在的单片机一般在片内集成有RC振荡电路,可以产生MCU工作需要的时钟脉冲,使用片内时钟不仅可以简化外部电路设计,还可以...
发表于 11-26 16:47 0次 阅读
减轻单片机设计干扰的方法

STM8S003单片机最小系统的电路原理图

本文以ST公司的STM8S003单片机为例,给大家讲解一个单片机最小系统的电路原理图:通过单片机采集一个按键信号,点亮一颗L...
发表于 11-26 16:45 0次 阅读
STM8S003单片机最小系统的电路原理图

stm8单片机复位功能的一些特性

  对于stm8单片机的复位引脚NRST,有九种情况会触发复位:   通过外部电位作用于NRST引脚产生复位   上电复位(...
发表于 11-26 16:38 0次 阅读
stm8单片机复位功能的一些特性

STM8单片机中断的主要功能有哪些

  内部中断:一般是由硬件错误或者运算过程中出错引起的,一般是不可避免的;   外部中断:是处理器的外设发出的中断请求,如...
发表于 11-26 16:36 0次 阅读
STM8单片机中断的主要功能有哪些

学习51单片机的误区

  误区1:51单片机是学习的基础   “51单片机是学习的基础”这句话本身并没有错。在我读本科的时候,当时它无疑是学习的基础...
发表于 11-26 16:27 0次 阅读
学习51单片机的误区

如何把基于STM32WL设计的温湿度传感器设备(Device)接入TTN平台

物联网的接入平台很多,提到专门针对LoRaWAN的话,不得不说TTN (https://www.th....
的头像 STM32单片机 发表于 11-26 15:51 70次 阅读
如何把基于STM32WL设计的温湿度传感器设备(Device)接入TTN平台

在学习STM32时为什么要学习汇编?

不同的平台的汇编代码是不一样的,最早的汇编在50年代就发明了,比很多人的父母的年龄都大,老掉牙,不用....
的头像 嵌入式ARM 发表于 11-26 14:32 36次 阅读
在学习STM32时为什么要学习汇编?

小艾智能艾灸盒2代pro拆解全过程

电子发烧友网站提供《小艾智能艾灸盒2代pro拆解全过程.pdf》资料免费下载
发表于 11-26 13:44 10次 阅读
小艾智能艾灸盒2代pro拆解全过程

基于AT89C55WD单片机和编程语言实现继电保护实验系统的设计

其中控制系统采用单片机控制,包含以下4个部分:数据处理单元,即微机主系统;数据采集单元,即模拟量输入....
的头像 电子设计 发表于 11-26 10:10 199次 阅读
基于AT89C55WD单片机和编程语言实现继电保护实验系统的设计

单片机上电复位后端口的状态详细概述

 在 MSP430 单片机的手册中,对于端口复位后的状态,是这样描述的:复位后,所有端口处于输入状态....
发表于 11-25 16:30 50次 阅读
单片机上电复位后端口的状态详细概述

单片机整体的CPU使用情况详细介绍

打开电脑的任务管理器,看着跳动的 CPU 使用率,发现很舒服。每一个线程占用了多少 CPU 清清楚楚....
发表于 11-25 15:58 42次 阅读
单片机整体的CPU使用情况详细介绍

为什么不能使用单片机取代PLC

单片机可以替代 PLC 吗? 这个问题如同面粉能代替面条一样,答案是否定的。第一次听到这个答案可能很....
发表于 11-25 10:58 103次 阅读
为什么不能使用单片机取代PLC

单片机到底有什么作用PDF文件讲解

1. uC/OS 是个什么鬼?在一些朋友的留言和大神的文章中多次提到了 uC/OS,相信很多朋友看到....
发表于 11-25 10:57 45次 阅读
单片机到底有什么作用PDF文件讲解

GPIO是什么?应该如何使用GPIO

字面意思看,GPIO=General Purpose Input Output,通用输入输出。有时候....
发表于 11-25 10:17 37次 阅读
GPIO是什么?应该如何使用GPIO

单片机实现按键触发设计的方案和电路图分析

在学习单片机的时候想必大家都接触过按键,按键是一个人机交互的接口设备,在刚开始接触的时候最简单也是最....
发表于 11-25 09:34 41次 阅读
单片机实现按键触发设计的方案和电路图分析

工业物联网的无线网络WiFi单片机的方案详细概述

正如 Microchip 所看到的一样,随着物联网从家庭自动化领域拓展到如供暖、通风与空调(HVAC....
发表于 11-25 08:20 28次 阅读
工业物联网的无线网络WiFi单片机的方案详细概述

使用单片机实现独立按键依次输入数据的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现独立按键依次输入数据的C语言程序免费下载。
发表于 11-24 17:57 35次 阅读
使用单片机实现独立按键依次输入数据的C语言程序免费下载

使用单片机实现按键从右至左输入的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现按键从右至左输入的C语言程序免费下载。
发表于 11-24 17:57 39次 阅读
使用单片机实现按键从右至左输入的C语言程序免费下载

使用单片机实现抢答器的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现抢答器的C语言程序免费下载。
发表于 11-24 17:50 31次 阅读
使用单片机实现抢答器的C语言程序免费下载

使用单片机实现多位数按键加减不闪烁的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现多位数按键加减不闪烁的C语言程序免费下载。
发表于 11-24 17:50 25次 阅读
使用单片机实现多位数按键加减不闪烁的C语言程序免费下载

使用单片机实现多位数按键加减闪烁数码管显示的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现多位数按键加减闪烁数码管显示的C语言程序免费下载。
发表于 11-24 17:50 20次 阅读
使用单片机实现多位数按键加减闪烁数码管显示的C语言程序免费下载

单片机C51程序设计的学习课件免费下载

本文档的主要内容详细介绍的是单片机C51程序设计的学习课件免费下载包括了:1、C51程序设计基础,2....
发表于 11-24 17:24 24次 阅读
单片机C51程序设计的学习课件免费下载

基于单片机和热电阻Cu5实现烤烟温度自动控制系统的设计

烟叶初烤过程中,烤房内温度的准确测量和有效控制是烘烤的核心和烟叶质量的根本保证。
的头像 电子设计 发表于 11-24 10:13 230次 阅读
基于单片机和热电阻Cu5实现烤烟温度自动控制系统的设计

AT89S52单片机的中文资料说明

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使....
发表于 11-24 08:00 51次 阅读
AT89S52单片机的中文资料说明

实现蜂鸣器的程序和工程文件免费下载

本文档的主要内容详细介绍的是使用单片机实现蜂鸣器的程序和工程文件免费下载。
发表于 11-24 08:00 43次 阅读
实现蜂鸣器的程序和工程文件免费下载

使用单片机实现1个独立按键控制LED状态转换的C语言程序免费下载

本文档的主要内容详细介绍的是使用单片机实现1个独立按键控制LED状态转换的C语言程序免费下载。 ....
发表于 11-23 17:45 55次 阅读
使用单片机实现1个独立按键控制LED状态转换的C语言程序免费下载

如何打造一套属于自己的嵌入式软件开发平台

在本次的项目中GUI采用了最新的TouchGFX,放弃了已经使用多年的emwin。一个原因是因为To....
的头像 电路设计技能 发表于 11-23 14:36 250次 阅读
如何打造一套属于自己的嵌入式软件开发平台

使用Labview实现PC通信与单片机测控源程序的合集免费下载

本文档的主要内容详细介绍的是使用Labview实现PC通信与单片机测控源程序的合集免费下载包括了:网....
发表于 11-23 08:00 26次 阅读
使用Labview实现PC通信与单片机测控源程序的合集免费下载

STM32F767开发板UCOS的开发手册免费下载

在以前学习的例程中大多都不带操作系统,也就是裸奔,本教程将带领大家进入 RTOS 的世界,关于 RT....
发表于 11-23 08:00 42次 阅读
STM32F767开发板UCOS的开发手册免费下载

FreeRTOS的基础知识和应用教程

嵌入式系统不只是ARM+Linux,不是只有安卓,凡是电子产品都可称为嵌入式系统。物联网行业的兴起,....
发表于 11-22 11:34 751次 阅读
FreeRTOS的基础知识和应用教程

单片机C语言程序设计原理学习课件免费下载

本例的一个典型应用就是软件延时。在程序的设计中,经常用到时间延迟,可用循环结构来实现,即循环执行指令....
发表于 11-20 17:14 117次 阅读
单片机C语言程序设计原理学习课件免费下载

STC89C51单片机的硬件系统设计介绍

STC系列单片机是美国STC公司最新推出的一种新型51内核的单片机。片内含有Flash程序存储器、S....
发表于 11-20 17:14 236次 阅读
STC89C51单片机的硬件系统设计介绍

使用单片机实现矩阵键盘反转扫描的C语言实例免费下载

本文档的主要内容详细介绍的是使用单片机实现矩阵键盘反转扫描的C语言实例免费下载。
发表于 11-20 16:49 137次 阅读
使用单片机实现矩阵键盘反转扫描的C语言实例免费下载

使用单片机实现矩阵键盘密码锁的C语言实例免费下载

本文档的主要内容详细介绍的是使用单片机实现矩阵键盘密码锁的C语言实例免费下载。
发表于 11-20 16:49 57次 阅读
使用单片机实现矩阵键盘密码锁的C语言实例免费下载

使用单片机实现矩阵键盘中断扫描的C语言实例免费下载

本文档的主要内容详细介绍的是使用单片机实现矩阵键盘中断扫描的C语言实例免费下载。
发表于 11-20 16:49 89次 阅读
使用单片机实现矩阵键盘中断扫描的C语言实例免费下载

使用单片机实现8位端口检测8独立按键的C语言实例免费下载

本文档的主要内容详细介绍的是使用单片机实现8位端口检测8独立按键的C语言实例免费下载。
发表于 11-20 16:49 64次 阅读
使用单片机实现8位端口检测8独立按键的C语言实例免费下载

使用单片机实现矩阵键盘行列扫描的C语言实例免费下载

本文档的主要内容详细介绍的是使用单片机实现矩阵键盘行列扫描的C语言实例免费下载。
发表于 11-20 16:49 75次 阅读
使用单片机实现矩阵键盘行列扫描的C语言实例免费下载

开发STM32的四种库

1.我是选择寄存器开发STM32,还是标准外设库呢?2.你有STM32L0标准外设库吗?3.HAL库....
的头像 strongerHuang 发表于 11-20 15:56 290次 阅读
开发STM32的四种库

为什么学习STM32? 如何系统地入门学习stm32呢?

英文好的同学,请不要以为你很牛,可以只看英文文档。毕竟你是中国人,你最熟悉的,理解最好的还是中文。看....
的头像 STM32嵌入式开发 发表于 11-20 10:20 261次 阅读
为什么学习STM32? 如何系统地入门学习stm32呢?

STM32的一些基本知识总结

Cortex-M3是一个 32位处理器内核。内部的数据路径是 32位的,寄存器是 32位的,存储器接....
的头像 STM32嵌入式开发 发表于 11-20 09:46 227次 阅读
STM32的一些基本知识总结

C51单片机的入门教程免费下载

计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进....
发表于 11-20 08:00 116次 阅读
C51单片机的入门教程免费下载

STM32F429V开发板的网关服务器电路原理图免费下载

本文档的主要内容详细介绍的是STM32F429V开发板的网关服务器电路原理图免费下载。
发表于 11-19 18:20 73次 阅读
STM32F429V开发板的网关服务器电路原理图免费下载

使用单片机实现1个独立按键控制LED的C语言程序免费

本文档的主要内容详细介绍的是使用单片机实现1个独立按键控制LED的C语言程序免费。
发表于 11-19 18:10 91次 阅读
使用单片机实现1个独立按键控制LED的C语言程序免费

使用单片机实现两按键加减操作数码管显示的C语言程序免费

本文档的主要内容详细介绍的是使用单片机实现两按键加减操作数码管显示的C语言程序免费。
发表于 11-19 18:10 97次 阅读
使用单片机实现两按键加减操作数码管显示的C语言程序免费

使用单片机实现多位数按键加减闪烁实例免费下载

本文档的主要内容详细介绍的是使用单片机实现多位数按键加减闪烁实例免费下载。
发表于 11-19 18:10 41次 阅读
使用单片机实现多位数按键加减闪烁实例免费下载

TMS320F28335单片机的介绍和组成最小应用系统的设计说明

介绍TMS320F28335 的性能特点、仿真工具和开发环境,给出了由TMS320F28335组成的....
发表于 11-19 17:47 55次 阅读
TMS320F28335单片机的介绍和组成最小应用系统的设计说明

单片机学习教程之C程序的简单介绍

包含头文件:现学习的是C51 单片机,所以需要的头文件是#include《reg51.h》程序的主函....
发表于 11-19 17:24 111次 阅读
单片机学习教程之C程序的简单介绍