通用输入输出口(GPIO)

2020-09-24来源: eefocus关键字:通用  输入输出口  GPIO

1概述

 端口

I/O端口主要功能是用于内部单片机和外设进行通信的媒介。一个端口最多有8个引脚。


引脚

 每个引脚都是独立的,也就是说当我们对其中一个引脚进行操作的时候不会影响到其他引脚。我们可以对引脚单独设置为数字输入或者数字输出。其中有些引脚还可以用着模拟输入和和外设中断。同一时刻只有一个功能映射到同一个引脚。


GPIO主要功能(我只列举我比较陌生的)

输入兼容5v电压

I/O口工作电压范围为1.6V到Vddiomax

I/O口的配置和使用

IO口常用的寄存器有5个ODR  IDR  DDR  CR1  CR2

数据输出寄存器ODR    输入寄存器IDR     和方向寄存器DDR     控制寄存器1CR1    控制寄存器2CR2


需要注意的是这里的引脚位和寄存器的位是一一对应的,即寄存器中的位n对应于口的引脚n。

 

通过这个表我们可以看出配置好一个I/O口只需要DDR方向寄存器,CR1控制寄存器,和CR2控制寄存器


下面我们先来看看输入模式

将方向寄存器DDRx位清零就选择了输入模式,在该模式下读IDR寄存器的位将返回对应I/O口引脚上的电频值。


理论上可以通过软件配置得到4中不同的输入模式:悬浮不带中断输入,悬浮带中断输入,上拉不带中断输入,上拉带中断输入。但是在实际情况下不是所有的I/O口都具有外部中断和上啦,我们应该参考数据手册中关于每个引脚的实际硬件性能描述。


悬浮输入或者上拉输入

端口的输入功能是不会自动选择,用户可以通过写相应的外设寄存器的控制位来选择输入功能,通过上表可以看出我们可以通过设置DDR和CR1寄存器的相应位来配置输悬浮输入或者上拉输入。


中断功能

我们可以在I/O口引脚为输入模式时通过设置PX_CR2寄存器的相应位来配置某个I/O作为外部输入中断模式。在这种配置下,I/O引脚上的一个信号沿或者是低电频会产生一个中断请求。


在EXTI_CR[2:1]J寄存器中对于每一个中断向量都可以单独编程为上升沿或者下降沿触发。

外部中断只对I/O口设置为输入模式才有效


中断屏蔽

可以通过对PX_CR2寄存器的相应位进行编程来单独使能/关闭外部中断功能,复位后外部中断是关闭的。

 

模拟通道

ADC外设可以选择某些I/O口作为模拟输入通道。当使用模拟通道的时候,ADC_TDR寄存器的输入施密特触发器必须被关闭。

 

施密特触发器

部分I/O口包括一个内嵌的输入施密特触发器。可以通过ADC_TDR施密特触发器禁止寄存器来使能/禁止施密特触发器

 

输出模式

 将DDRX位置1就选择了输出模式。在该模式下向ODR寄存器的位写入数据将会通过锁存器输出对应数字值到I/O口。读IDR的位将会返回相应的I/O引脚电频值。通过软件配置CR1,CR2寄存器可以得到不同的输出模式:上拉输出,开漏输出。

  输出功能为单片机输出到外部或者I/O引脚提供一个方便的操作方法,输出功能使能时,输出功能模块接管了输出锁存寄存器(PX_ODR)并强制PX_ODR相应的位为1

输出功能可以是上拉或者开漏输出,取决于外设本身和控制寄存器1(PX_CR1),输出频率取决于控制寄存器2(PX_CR2)的值。

例如:

考虑达到最佳性能,SPI输出引脚必须设置为上拉,快速摆率.  uart_TX可以被配置为上拉或者开漏外部带上啦来实现从机的配置。

摆率控制

 摆率输出可以使用CR2的相应位通过软件控制。置位CR相应位选择为10MHZ的输出频率。该功能可以在开漏也可以用在带上啦的输出模式I/O口,输出类型为O3和O4

 

复位后的默认配置

 复位之后,所有的引脚都是悬浮输入模式。

没有使用的引脚

  没有使用的引脚必须连接到一个固定的电频。

低功耗模式

低功耗模式对GPIO口的影响

等待(Wait)   对I/O口无影响。外部中断可以腮红MCU退出等待(Wait)模式

停机(Halt)   对I/O口无影响。 外部中断可以说使MCU从停机模式(Halt)唤醒

GPIO寄存器

 

GPIO 寄存器表和复位值

以上寄存器值的描述是我复制stm8s手册描述。


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

上一篇:IAR新建一个工程
下一篇:STM8查看IO口的方法

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

推荐阅读

5年设计生产出核心通用型CPU芯片
10月18日,广州第三脑人工智能芯片研究院成立大会在广州番禺开幕。据南方日报报道,广州第三脑人工智能芯片研究院创始人、理事长刘敏在会上表示,研究院汇聚国际国内高科技领域核心人才、致力于推动人工智能技术与制造业转型升级的深度融合与落地应用,将依托粤港澳大湾区新经济、新业态产业发展优势,构建“第三脑人工智能、信息化与数据化”研发与产业创新平台。此外,广州第三脑人工智能芯片研究院院长陈世卿表示,广州第三脑人工智能芯片研究院将以人工智能芯片技术为产业支撑,组织实施“强芯”工程,构建“第三脑人工智能、信息化与数字化”产业创新研发平台,以摆脱对外高端芯片的过度依赖为目标。陈世卿指出,计划在5年内,设计生产出核心的通用型CPU芯片和AI赋
发表于 2020-10-22
LG化学与通用/吉利成立电池合资公司!
据外媒报道,近日,LG化学首席执行官Hak Cheol Shin(辛学喆)表示,该公司正与几家汽车制造商洽谈成立合资企业以生产电动车电池。路透社方面援引辛学喆的话称,LG化学已经在与通用汽车和吉利汽车推进电池合资企业的建立,并希望将业务扩展到其他汽车制造商,不过他并未透露具体意向企业。辛学喆透露,“此前我们宣布与通用汽车和吉利汽车成立电池合资企业,但同时我们还在与其他几家汽车制造商进行谈判。”但很显然,该公司希望与更多车企合作。不过,辛学喆补充称,特斯拉不是LG化学正在讨论组建合资企业的公司之一。当前,LG化学正在欧洲寻找新电池工厂的选址。值得注意的是,LG化计划今年12份将其电池业务进行分拆,成立一家独立公司,新公司暂时命名为
发表于 2020-10-19
分析师:普通用户无购买 iPhone 12 Pro 理由
苹果在上周正式发布了 iPhone 12 系列,而首批预定已经在本周五晚正式开始。如开售前所预计的那样,iPhone 12 一经发售就非常火爆,目前,官网的发货时间已经排到了 2-3 周后。作为 iPhone 11 的继任者,iPhone 12 不仅使用了顶级 OLED 屏幕,还加入了 5G 功能,相比前代的提升程度十分明显;而 iPhone 12 Pro 系列则专注于影像功能的提升,价格还便宜了;而 iPhone 12 mini 作为全球最轻薄的 5G 小屏旗舰。则是维持了前代的起售价。可以说,今年 iPhone 的产品线,给了消费者有史以来最大的选择空间。不过,外媒 CNBC 援引德意志银行分析师则表示,预计苹果不能提起消费者的
发表于 2020-10-19
通用汽车将投资HUD全息影像技术 驾乘科技感进一步增强
近日,选车君从相关渠道获悉,通用汽车旗下的风险投资公司GM Ventures与业内知名的汽车零部件制造供应商一起向Envisics投资了5000万美元,而Envisics目前的主要研究方向就是全息影像平视显示系统。预计该系统将于2025年正式投产,并且率先应用到凯迪拉克旗下的全新SUV Lyriq ( 参数 | 询价 ) 上。 该技术是将AR自动现实增强技术与HUD平视显示器相结合,让HUD显示系统变得更加立体,能够在汽车前挡风玻璃这个天然的显示屏上显示更多驾驶相关的信息,并且能够通过3D全息影像技术来提示驾驶员路面上的行人和其他车辆等驾驶危险信号
发表于 2020-10-12
<font color='red'>通用</font>汽车将投资HUD全息影像技术 驾乘科技感进一步增强
单片机flash通用读写库:TZFlash
说明本文发布单片机flash通用读写库TZFlash,有两个优点:TZFlash将flash的读写抽象成文件读写,更易于使用。flash写入需要4字节对齐,TZFlash增加cache机制,可以将任意长度的写入flash。源码tzflash.h// Copyright 2019-2019 The TZIOT Authors. All rights reserved.// flash管理模块头文件#ifndef TZFLASH_H#define TZFLASH_H#include "tzbasedef.h"// TZFlashEraseFunc 函数类型:擦除flash// addr:起始地址.size:擦除
发表于 2020-10-10
STM8 通用输入输出口(GPIO)
每个端口都分配的寄存器有:输出寄存器(ODR),输入寄存器(IDR),数据方向寄存器(DDR),控制寄存器1(CR1)和控制寄存器2(CR2).后面三个寄存器组和可以配置为8种GPIO的模式。一个I/O口工作在输入还是输出是取决于该口的数据方向寄存器的状态。通过在ODR、IDR中置0/1,达到数据输入输出的通断。GPIO主要功能可选择的输入模式:浮动输入和带上拉输入可选择的输出模式:推挽式输出和开漏输出数据输入和输出采用独立的寄存器外部中断可以单独使能和关闭输出摆率控制用以减少EMC噪声片上外设的I/O功能复用当作为模拟输入时可以关闭输入施密特触发器来降低功耗在数据输出锁存时支持读-修改-写输入兼容5V电压I/O口工作电压范围
发表于 2019-11-25
STM8 通用<font color='red'>输入输出口</font>(GPIO)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved