datasheet

GPIO设计指南

2018-07-11来源: EEWORLD 关键字:GPIO

GPIO作为常用个开关量控制信号,广泛应用于工业领域的数据采集和驱动控制。当GPIO配置为DI和DO时,干节点与湿节点设计规范是否一致呢?GPIO配置为DI采集时,隔离方案是选择继电器隔离还是光耦隔离呢?


1、什么叫DI/DO


DI:数字量输入,把生产过程中的数字信号转换成计算机易于识别的“0”和“1”信号状态。


DO:数字量输出,把计算机输出的微弱数字信号转换成能对生产过程中控制的“0”和“1”信号状态。


2、DI/DO的干湿节点介绍


干接点的定义:

无源开关,具有闭合和断开的2种状态,2个接点之间没有极性,可以互换;


    常见的干节点:有限位开关、行程开关、旋转开关、温度开关、各种按键以及各种传感器的输出等。


湿接点的定义是:有源开关;具有有电和无电的2种状态;2个接点之间有极性,不能反接。


常见的湿节点有:NPN三极管的集电极输出和VCC、达林顿管的集电极输出和VCC、红外反射传感器和对射传感器的输出等。


3、DI/DO驱动阻抗设计


此处以NXP i.MX 6UL为例,常规对于GPIO作为输出接口时,OVDD电压为1.8V或3.3V,若GPIO设计为DO时需要注意哪些事项呢?


此处以DO为示例,Rpu/Rpd和Ztl构成一个分压器,定义入射波相对于OVDD的特定电压,输出驱动阻抗是从这个分压器计算出来的。


图1  分压器等效电路



图3  基于3.3V的驱动阻抗表


4、设计隔离DI/DO的建议方案


在工业场合对DI/DO的设计都要考虑到隔离,在隔离中比较常用的是光耦隔离。


图4为光耦隔离数字量干节点电路,其中的DIx、GIx连接到触点开关的两端,当开关闭合时,光耦输入回路二极管导通,输出回路光电接收管导通,输入端GPIx为低电平;当开关断开时,光耦输入回路二极管截止,输出回路光电接收管截止,输入GPIx被电阻上拉为高电平。


图4  干节点传输电缆示意图


图5是光耦隔离数字量湿节点设计参考电路,输入电压范围DC4V-18V,并且内部自带滤波功能。用户只需将湿节点的正端接于DIx接口,将负端接于GIx接口,当输入的电压大于4V小于18V时,光耦导通;当输入的电压小于1V时,光耦截止。


图5  光耦隔离DI输入示意图一


DI作为隔离数字量输入接口,接开关量输入时,用户必须在外部电路加上拉电源,简化的连接示意图如图6所示。其中VCC_GPI为外部隔离电源,输入范围为4V~18V,GND_GPI为外部隔离地,电阻R1在开关断开时保证GIx为低电平,阻值为100KΩ即可。


图6  光耦隔离DI输入示意图二


DO作为隔离数字量输出时,由于芯片内部提供DO驱动电流为mA级且驱动电压为1.8V或3.3V,无法满足所有的应用环境。DO应用于工业领域的开关量设计,需更具不同的应用环境进行继电器隔离、电平转换、电阻上拉设计,可有效防止电压信号的反向灌入烧毁芯片。


图7  隔离电路DO输入示意图


图8  M6708U-T系列工控核心板


关键字:GPIO

编辑:muyan 引用地址:http://www.eeworld.com.cn/dygl/2018/ic-news071128609.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:小尺寸大功率,尼吉康全新电容器在京发布
下一篇:什么是云电源?

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32学习札记--GPIO端口设置

GPIOx(x=A,B,C,D,E,H)引脚配置需要几个方面:  (配例的工程函数是可以到官网上下载使用手册的)1,首先肯定是要将相应的引脚口挂在到的AHB/APB的时钟使能,即配置RCC_AHBENR寄存器。GPIOC的使能位在BIT2  则 #DEFINE  GPIOCEN      (Unit32_t)0x0x00000004RCC的起始地址为0x4002 3800#define PERIPH_BASE         
发表于 2018-10-15
STM32学习札记--GPIO端口设置

JZ2440裸板之GPIO操作启动分析

启动文件crt0.S源码://******************************************************************************// File:crt0.S// 功能:通过它转入C程序//******************************************************************************       .text.global _start_start:         &n
发表于 2018-10-14

STM32F407 PC13-PC15作为GPIO的方法

问题解决了,PC13-PC15都可以作为GPIO使用,而且都可以作为输出,手册中说只能有一个作为输出是因为在三个PIN总的输出电流不能超过4mA,如果输出电流很小,则都可以作为输出。VBAT可以不和VDD连接在一起,VDD上电后,内部电路会自动切换到VDD上。代码如下:GPIO_InitTypeDef GPIO_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC  , ENABLE);RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR  , ENABLE);PWR_BackupAccessCmd(ENABLE
发表于 2018-10-13

STM8S库GPIO_ReadInputPin函数问题

ST官网推出了库函数操作,大大方便了用户,但是库函数有一些问题,例如 1.库函数GPIO_ReadInputPin问题 以下是ST文件读取指定IO口电平原型BitStatus GPIO_ReadInputPin(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef GPIO_Pin){    return ((BitStatus)(GPIOx->IDR & (uint8_t)GPIO_Pin));} 当你在程序中调用if(GPIO_ReadInputPin(GPIOC,GPIO_PIN_7) == SET){ 
发表于 2018-10-10

STM32学习之GPIO

1,首先应该使能GPIO的时钟,GPIO全都挂载在总线AHB1上,库函数对应为RCC_AHB1PeriphClockCmd(uint32_t RCC_AHB1Periph, FunctionalState NewState);RCC_AHB1Periph为挂载在AHB1的所需要的外设,FunctionalState NewState可为ENABLE或DISABLE。因为与时钟相关,所以在RCC文件里2,配置GPIO结构体的成员,GPIO所需配置有  GPIO_Pin;         GPIO具体的引脚   
发表于 2018-10-07

【STM32电机方波】记录1——GPIO基础配置

GPIO库函数:GPIO初始化:typedef struct { u16 GPIO_Pin;   //选择待设置的GPIO管脚,使用操作符“|”可以一次选中多个管脚GPIOSpeed_TypeDef GPIO_Speed;   //10MHz 、2MHz、 50MHzGPIOMode_TypeDef GPIO_Mode;  //输入输出的8种方式} GPIO_InitTypeDef;GPIO的缺省初始化值:GPIO_Pin = GPIO_Pin_All ;GPIO_Speed = GPIO_Speed_2MHz;GPIO
发表于 2018-10-05
【STM32电机方波】记录1——GPIO基础配置

小广播

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved