STM32 GPIO输出输入配置:【图文讲解】

devtools/2024/10/18 19:14:43/

1:输出配置

STM32 GPIO输出有四种配置:开漏输出\推挽输出\复用开漏\复用推挽

1:开漏输出:

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

2:推挽输出:

可以输出高,低电平,连接数字器件;推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源低定。

3:复用输出:

可以理解为GPIO口被用作第二功能时的配置情况(即并非作为通用IO口使用)。端口必须配制成复用功能输出模式(推挽或开漏)

开漏输出:

推挽输出:

AF输出:

2:输入配置  

STM32 GPIO输入有四种配置:模拟输入\浮空输入\拉高输入\拉低输入

1:上拉输入:

上拉就是把电位拉高,比如拉到Vcc。上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!强弱只是上拉电阻的阻值不同,没有什么严格区分。

2:下拉输入:

就是把电压拉低,拉到GND。与上拉原理相似。

3:浮空输入:

浮空(floating)就是逻辑器件的输入引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引脚接了高电平。一般实际运用时,引脚不建议悬空,易受干扰。通俗讲就是让管脚什么都不接,浮空着。

4:模拟输入:

内部不接上下拉,跟浮空输入类似

 浮空输入:

 上拉输入:

下拉输入:

模拟输入:

3:开漏和推挽

关于开漏输出和推挽输出的区别,可以看下面这个文章

开集OC\开漏OD\推挽输出电路PP:【图文讲解】-CSDN博客


http://www.ppmy.cn/devtools/125154.html

相关文章

HarmonyOS NEXT 应用开发实战(三、ArkUI页面底部导航TabBar的实现)

在开发HarmonyOS NEXT应用时,TabBar是用户界面设计中不可或缺的一部分。本文将通过代码示例,带领大家一同实现一个常用的TabBar,涵盖三个主要的内容页:首页、知乎日报和我的页面。以模仿知乎日报的项目为背景驱动,设定…

「实战应用」如何用图表控件LightningChart可视化天气数据?(一)

LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学…

对MVC详细解读

一、MVC模式的详细组成部分 1. 模型(Model) 数据结构: 模型通常使用类或结构来定义应用程序的数据结构。例如,在Ruby on Rails中,模型通常与数据库表相对应,使用Active Record模式。 数据访问层&#xff1…

【AI绘画】Midjourney进阶:三分线构图详解

博客主页: [小ᶻZ࿆] 本文专栏: AI绘画 | Midjourney 文章目录 💯前言💯什么是构图为什么Midjourney要使用构图 💯三分线构图特点使用场景提示词书写技巧测试 💯小结 💯前言 【AI绘画】Midjourney进阶&a…

中阳:金融市场中的稳健投资平台

在充满不确定性的全球金融市场中,投资者需要一个既稳健又灵活的平台来应对各种市场挑战。中阳凭借其丰富的市场经验、先进的技术平台和广泛的投资产品,成为了无数投资者信赖的金融合作伙伴。本文将详细介绍中阳的核心优势,帮助投资者在复杂的…

中科星图GVE(案例)——AI实现建筑用地变化前后对比情况

目录 简介 函数 gve.Services.AI.ConstructionLandChangeExtraction(image1,image2) 代码 结果 知识星球 机器学习 简介 AI可以通过分析卫星图像、航拍影像或其他地理信息数据,实现建筑用地变化前后对比。以下是一种可能的实现方法: 数据获取&am…

LeetCode 每日一题 2024/10/7-2024/10/13

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 10/7 871. 最低加油次数10/8 1436. 旅行终点站10/9 3171. 找到按位或最接近 K 的子数组10/10 3162. 优质数对的总数 I10/11 3164. 优质数对的总数 II10/12 3158. 求出出现两…

List的实现类

1.ArrayList(数组) (1)代码 新建学生类: package com.collection;public class Student {private String name;private int age;//添加构造方法 都是使用altenter快捷键public Student() {this.name name;this.age…