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

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

3天内不再提示

GPIO输入电路的匹配、设计与计算

CHANBAEK 来源:汽车电子控制器硬件入门 作者:人生如梦 2023-07-02 17:51 次阅读

1. 数字输入输出的定义

数字输入或输出(英语:Digital Input or Digital Input),又叫开关量输入或输出,只有通和断二种状态,离散状态。

常见的数字输入有GPIO,GTA等

本文主要说明GPIO

2. GPIO输入电路的匹配、设计与计算

2.1.控制器与TTL施密特触发器下的GPIO输入接口电路

STM32F103ZET6举例,TTL肖特基触发器

图片

其中

1)R1,R2为内部弱上拉或弱下拉,阻值很大,一般为100k以上;

2)D1,D2为嵌位二极管,可以嵌位到-V(D2)到VCC+V(D1)之间,如果选择硅管二极管,可以嵌位到-0.7V~5.7V;

3)R3=100Kohm,R4=1000kohm

4)R11=10kohm,R12=R13=46.4kohm

5)UB=4.5~16V

2.2.控制器与TTL施密特触发器下的GPIO阈值计算

非门以74HCT1G04举例,此处不讨论R1,R2接入情况

图片

1)当PIN CN 悬空时,等效电路如下

图片

Uo=4.4V

(UB-Ui)/(R11+R13)+Uo/(R3+R4)=Ui/R12

解出Ui=(UB/(R11+R13)+Uo/(R3+R4)) R12 (R11+R13)/(R11+R12+R13)

a) 当UB=4.5V时,Ui=2.13V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2.33V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 4.5V 2.13V 2.33V 0.4V 4.4V

b) 当UB=9V时,Ui=4.16V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=4.18V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 9V 4.16V 4.18V 0.4V 4.4V

c)当UB=12.4V时,Ui=5.698V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.581V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 12.4V 5.6987V 5.581V 0.4V 4.4V

d) 当UB=14V时,Ui=6.421V

此时二极管D1将导通,Ui被钳位到5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.7+(4.4-5.7)*100/(100+1000)=5.582V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 14V 5.7V 5.582V 0.4V 4.4V

e) 当UB= 3.67371V时,Ui=1.76V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2V

UG1F等于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.67371V 1.76V 2V 0.4V 4.4V

f) 当UB= 3.3V时,Ui=1.59V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=1.84V

UG1F小于非门的VIH=2V,非门G1关闭,非门G2关闭

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.3V 1.59V 1.84V 4.4V 0.4V

Uo=0.4v时,解出Ui=(UB/(R11+R13)+Uo/(R3+R4))*R12*(R11+R13)/(R11+R12+R13)=1.4928V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=1.398V

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.3V 1.498V 1.398V 4.4V 0.4V

综合a)~f)得出如下结论

UB<3.67371V时,Uo将输出0.4V

UB>3.67371V时,Uo将输出4.4V

UB>12.4V时,Ui将被钳位到5.7V,UG1F将被固定到5.582V,Uo将输出4.4V

UB在3.67371V以上,都可以识别为H

2)当PIN CN 输入时,等效电路如下

图片

(UPIN-Ui)/R13+Uo/(R3+R4)=Ui/R12

解出Ui=(UPIN/R13+Uo/(R3+R4))R12R13/(R12+R13)

a) 当UPIN=4.5V时,Ui=2.34V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2.53V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 4.5V 2.34V 2.53V 0.4V 4.4V

b) 当UPIN=9V时,Ui=4.59V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=4.58V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 9V 4.59V 4.58V 0.4V 4.4V

c) 当UPIN=11.2144V时,Ui=5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.581V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 11.2144V 5.7V 5.581V 0.4V 4.4V

d) 当UPIN=14V时,Ui=7.09V

此时二极管D1将导通,Ui被钳位到5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.7+(4.4-5.7)*100/(100+1000)=5.582V

UG1F大于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 14V 5.7V 5.582V 0.4V 4.4V

e) 当UPIN= 3.334399V时,Ui=1.76V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2V

UG1F等于非门的VIH=2V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.334399V 1.76V 2V 0.4V 4.4V

f) 当UPIN= 3V时,Ui=1.59V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=1.85V

UG1F小于非门的VIH=2V,非门G1关闭,非门G2关闭

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3V 1.59V 1.85V 0.4V 4.4V

Uo=0.4v时,解出Ui=(UB/R13+Uo/(R3+R4))*R12*R13/(R12+R13)=1.51V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=1.41V

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 1 0
电压值 1. 3V 1. 51V 1. 41V 4.4V 0.4V

综合a)~f)得出如下结论

UPIN<3.334399V 时,Uo将输出0.4V

UPIN>3.334399V时,Uo将输出4.4V

UPIN>11.2144V时,Ui将被钳位到5.7V,UG1F将被固定到5.582V,Uo将输出4.4V

UPIN在3.334399V以上,都可以识别为H

3)应用物理电路可配置如下

图片

  1. 当开关SW打开时,等同于2.2中 1)当PIN CN 悬空,此时Uo为4.4V,为H.
  2. 当开关SW闭合时,Uo=0.4V, 为L.此时Ui=0.008V,UG1F=0.044V

综合a),b)得出如下结论

可以正确识别开关打开和闭合两种状态的

2.3.控制器与CMOS施密特触发器下的GPIO输入接口电路

图片

其中

1)R1,R2为内部弱上拉或弱下拉,阻值很大,一般为100k以上;

2)D1,D2为嵌位二极管,可以嵌位到-V(D2)到VCC+V(D1)之间,如果选择硅管二极管,可以嵌位到-0.7V~5.7V;

3)R3=100Kohm,R4=3000kohm

4)R11=10kohm,R13=46.4kohm

5)UB=4.5~16V

2.4.控制器与CMOS施密特触发器下的GPIO阈值计算

非门以74HC1G04举例,此处不讨论R1,R2接入情况

假设供电VCC=5V,那么UIH=3.5V,UIL=1.5V,VOH=4.5V,VOL=0.5V.

图片

  1. 当PIN CN 悬空时,等效电路如下

图片

Uo=4.5V

Ui=Uo+(UB-Uo)*(R3+R4)/(R11+R13+R3+R4)

a) 当UB=4.5V时,Ui=4.5V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=4.5V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 4.5V 4.5V 4.5V 0.5V 4.5V

b) 当UB=5.72183V时,Ui=5.699998V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.65998V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 5.72183V 5.699998V 5.65998V 0.5V 4.5V

c) 当UB=12V时,Ui=11.866V

此时二极管D1将导通,Ui被钳位到5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.7+(4.5-5.7)*100/(100+3000)=5.696V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 12V 5.7V 5.696V 0.5V 4.5V

d) 当UB= 3.446696V时,Ui=3.464417V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=3.5V

UG1F等于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.446696V 3.464417V 3.5V 0.5V 4.5V

e) 当UB= 3V时,Ui=3.03V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=3.08V

UG1F小于非门的VIH=3.5V,非门G1关闭,非门G2关闭

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3V 3.03V 3.08V 0.5V 4.5V

Uo=0.5v时,解出Ui=Uo+(UB-Uo)*(R3+R4)/(R11+R13+R3+R4)=2.96V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2.87V

真值表如下

信号 UB Ui UG1F UG12 Uo
逻辑值 - - 1 1 0
电压值 3V 2.96V 2.87V 4.5V 0.5V

综合a)~e)得出如下结论

UB<3.464417V时,Uo将输出0.5V

UB>3.464417V时,Uo将输出4.5V

UB>5.72183V时,Ui将被钳位到5.7V,UG1F将被固定到5.582V,Uo将输出4.4V

UB在3.464417V以上,都可以识别为H

  1. 当PIN CN 输入时,等效电路如下

图片

Ui=UPIN+(Uo-UPIN)*R13/(R13+R3+R4)

a) 当UPIN=4.5V时,Ui=4.5V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=4.5V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 4.5V 4.5V 4.5V 0.5V 4.5V

b) 当UPIN=5.717961V时,Ui=5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.66V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 5.717961V 5.7V 5.66V 0.5V 4.5V

c) 当UB=12V时,Ui=11.8894V

此时二极管D1将导通,Ui被钳位到5.7V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=5.7+(4.5-5.7)*100/(100+3000)=5.696V

UG1F大于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 12V 5.7V 5.696V 0.5V 4.5V

d) 当UB= 3.450033V时,Ui=3.464417V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=3.5V

UG1F等于非门的VIH=3.5V,非门G1打开,非门G2打开

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3.446696V 3.465517V 3.5V 0.5V 4.5V

e) 当UB= 3V时,Ui=3.02V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=3.07V

UG1F小于非门的VIH=3.5V,非门G1关闭,非门G2关闭

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 0 1
电压值 3V 3.02V 3.07V 0.5V 4.5V

Uo=0.5v时,解出Ui=Uo+(UB-Uo)*(R3+R4)/(R11+R13+R3+R4)=2.96V

UG1F=Ui+(Uo-Ui)*R3/(R3+R4)=2.88V

真值表如下

信号 UPIN Ui UG1F UG12 Uo
逻辑值 - - 1 1 0
电压值 3V 2.96V 2.88V 4.5V 0.5V

综合a)~e)得出如下结论

UPIN<3.450033V 时,Uo将输出0.4V

UPIN>3.450033V时,Uo将输出4.4V

UPIN>5.717961V时,Ui将被钳位到5.7V,UG1F将被固定到5.582V,Uo将输出4.4V

UPIN在3.450033V以上,都可以识别为H

  1. 应用物理电路可配置如下

图片

a) 当开关SW打开时,等同于2.4中 1)当PIN CN 悬空,此时Uo为4.5V,为H.

b)开关SW闭合时,Uo=0.5V,为L.此时Ui=0.007V,UG1F=0.023V

综合a),b)得出如下结论

可以正确识别开关打开和闭合两种状态

2.5.控制器与运放比较器施密特触发器下的GPIO主要电路结构

图片

其中

1)R1,R2为内部弱上拉或弱下拉,阻值很大,一般为100k以上;

2)D1,D2为嵌位二极管,可以嵌位到-V(D2)到VCC+V(D1)之间,如果选择硅管二极管,可以嵌位到-0.7V~5.7V;

3)R3=R4=R5=10Kohm

2.6.控制器与运放比较器施密特触发器下的GPIO阈值计算

因为运放的书输入阻抗很大,故在A1-和A2+的电压约等于输入电压,即UPIN=V(A1-)=V(A2-)

根据GPIO输入(上)说明,VDIH=3.33V,VDIL=1.67V.那么设计时,保证输入电压V(H)>3.33V为H,V(L)<1.67V为L.

3. TLL触发器、CMOS触发器、运放触发器比较

1)运放触发器对输入的阻抗要求不高,影响很小,阈值很稳定

2)TLL触发器、CMOS触发器对输入阻抗要求较高,外部电阻容易对阈值范围有一定影响

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二极管
    +关注

    关注

    144

    文章

    9016

    浏览量

    161372
  • 输入输出
    +关注

    关注

    0

    文章

    42

    浏览量

    10691
  • 开关量
    +关注

    关注

    2

    文章

    149

    浏览量

    14783
  • GPIO
    +关注

    关注

    16

    文章

    1135

    浏览量

    50582
  • 输入电路
    +关注

    关注

    2

    文章

    30

    浏览量

    10654
收藏 人收藏

    评论

    相关推荐

    一文详解GPIO输入配置

    引言:GPIO,即General purpose input output,通用输入输出端口,是可以根据实际使用场景需求来用软件来配置的引脚。需要注意的是,一款芯片的引脚分为其实分为很多域,比如仅为
    发表于 06-14 16:41 2969次阅读
    一文详解<b class='flag-5'>GPIO</b>的<b class='flag-5'>输入</b>配置

    输入匹配电路和输出匹配电路

    输入匹配电路和输出匹配电路 成功地设计固态微波功率放大器的关键是设计阻抗匹配网络。在任何一个微波功率放大器设计中,错误的
    发表于 08-16 15:26 4749次阅读
    <b class='flag-5'>输入</b><b class='flag-5'>匹配电路</b>和输出<b class='flag-5'>匹配电路</b>

    RF收发器的接收端口差分匹配电路应该如何计算

    SAWFilter单端输入端口至天线端口路径的阻抗到50欧姆;另一部份是差分匹配电路,是调整差分路径的阻抗满足SAW Filter负载阻抗的要求。一般大家都比较熟悉单端匹配电路的调试方法,本文介绍的是如何根据SAWFilter和
    发表于 08-04 18:52 2次下载
    RF收发器的接收端口差分<b class='flag-5'>匹配电路</b>应该如何<b class='flag-5'>计算</b>

    二.GPIO输入输出及延迟函数

    一. GPIO八种模式,四种输入,四种输出1.GPIO输入初始化void GPIO_Config(void){
    发表于 11-24 20:06 1次下载
    二.<b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>输出及延迟函数

    04、STM8通用输入输出口(GPIO)

    04、STM8通用输入输出口(GPIO)文章目录04、STM8通用输入输出口(GPIO)1、概述2、GPIO主要功能3、I/O 的配置和使用
    发表于 11-26 15:21 9次下载
    04、STM8通用<b class='flag-5'>输入</b>输出口(<b class='flag-5'>GPIO</b>)

    STM32的8种GPIO输入输出模式

    STM32的8种GPIO输入输出模式参考文章“STM32的8种GPIO输入输出模式深入详解”和“STM32中GPIO的8种工作模式!”
    发表于 11-26 17:06 16次下载
    STM32的8种<b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>输出模式

    STM8S自学笔记-006 GPIO输入:按键输入 与 按键滤波

    STM8S自学笔记-006 按键输入GPIO输入【修订记录】1、20210812,第一版GPIO输入在 《STM8S自学笔记-003
    发表于 12-05 11:36 9次下载
    STM8S自学笔记-006 <b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>:按键<b class='flag-5'>输入</b> 与 按键滤波

    GPIO通用输入输出

    GPIO通用输入输出一、GPIO的功能概述用途:GPIO是通用输入输出(General Purpose I/O)的简称,主要用于工业现场需要
    发表于 12-20 18:58 6次下载
    <b class='flag-5'>GPIO</b>通用<b class='flag-5'>输入</b>输出

    STM32的GPIO输入输出的几种模式的总结

    最近在看数据手册的时候,发现在Cortex-M3里,对于GPIO的配置种类有8种之多:(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING浮空
    发表于 01-13 16:10 2次下载
    STM32的<b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>输出的几种模式的总结

    STM32的GPIO输入,输出与开漏,推挽,上拉,下拉的关系

    STM32的GPIO输入,输出与开漏,推挽,上拉,下拉的关系
    发表于 01-14 14:45 25次下载
    STM32的<b class='flag-5'>GPIO</b>的<b class='flag-5'>输入</b>,输出与开漏,推挽,上拉,下拉的关系

    GPIO输入——按键检测

    按键检测使用到GPIO外设的基本输入功能,本章中不再赘述GPIO外设的概念,如您忘记了可重新回到第八章节进行阅读。
    的头像 发表于 02-15 15:45 1940次阅读
    <b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>——按键检测

    通用输入输出GPIO是什么

    GPIO代表通用输入/输出。它是集成电路上的一种引脚,没有特定功能。虽然大多数引脚都有专用用途,例如向特定组件发送信号,但 GPIO 引脚的功能是可定制的,并且可以由软件控制。 引脚模
    发表于 03-23 14:04 969次阅读
    通用<b class='flag-5'>输入</b>输出<b class='flag-5'>GPIO</b>是什么

    i.MX6ULL学习笔记:GPIO按键输入捕获

    掌握GPIO输入输出是必备技能,这篇推文继续来学习操作GPIO,这篇主要学习GPIO输入,通过使用按键进行
    的头像 发表于 04-06 10:37 682次阅读

    详解GPIO输入实验

    在前两期的更新里,给大家介绍了STM32CubeMx的基础安装以及利用STM32CubeMx+MDK完成了GPIO输出实验(点亮一个LED灯),今天就给大家介绍GPIO输入实验—用USER按键来控制LD5的亮灭。
    的头像 发表于 07-02 16:36 694次阅读
    详解<b class='flag-5'>GPIO</b><b class='flag-5'>输入</b>实验

    GPIO的四种输入模式介绍

    GPIO的介绍 GPIO (general purpose input output)是通用输入输出端口的简称,通俗来讲就是单片机上的引脚,在STM32中,GPIO的工作模式被细分
    的头像 发表于 11-09 16:51 3077次阅读
    <b class='flag-5'>GPIO</b>的四种<b class='flag-5'>输入</b>模式介绍