IO引脚即输入输出引脚,可以说是数字电路中最为基础的部分。就像我们在学习一门新的语言,我们都会先去编写一个“hello,world”的程序一样,我们学习嵌入式往往做的第一个例程,就是点灯。点灯实验可能让你对IO引脚有了个直观上的了解,但实际上,嵌入式芯片的IO引脚有很多种模式。

STM32GPIO结构图

1:上拉输入模式:

若是嵌入式芯片的IO引脚配置程上拉模式,那么芯片上电以后,该IO引脚在芯片内部会通过一个电阻被上拉至一个高电平(该电平一般就是芯片的工作电压,但是有些嵌入式芯片的IO电平会有专门的电源),在外界没有输入的情况下,从程序中读到的该引脚数据则为1,高电平。

2:下拉输入模式:

和上拉模式相对应,若是将IO引脚配置成下拉模式,芯片上电以后,该IO引脚也会通过电阻被下拉至地,在外界没有输入的情况下,从程序中读到的该引脚数据为0,低电平。、

上下拉模式是嵌入式中最为常见的两种模式,一般在电路初始化的时候我们不仅要设置引脚的上下拉模式,有时候还会再引脚外部自己加入上拉或者下拉电阻,以保证系统在上电过程中芯片引脚处于一个稳定的状态。

3:浮空输入模式:

浮空输入下的IO引脚既不接上拉电阻,也不接下拉电阻,此时IO引脚呈现的是一种高阻状态,经芯片内部的触发器输入,这种情况下其引脚电压是个不确定的值,由外部输入决定。这种高阻状态下,非常只用于I2C以及USART的接收端。

4:模拟输入模式:

这种模式一般用于ADC模式,由于该种模式下不经过触发器,也不接上拉和下拉电阻,因此也很适用于低功耗的场合。

5:推挽输出模式:

所谓的推挽输出模式,则是根据其工作方式来命名的。在输出模式下,电路会经过一个由P-MOS管和N-MOS管组成的单元电路(如图中下半部分)。在输出高电平时,P-MOS管导通;低电平的时候,N-MOS管导通。两个管子轮流导通,一个负责灌电流,一个负责拉电流,使其负载能力和开关速度都比普通的方式很大的提高。

6:开漏输出模式:

这种模式下,如果我们输出为0,低电平,则使N-MOS管导通,使输出接地,若控制输出为1(无法直接输出高电平),则既不输出高电平,也不输出低电平,为高阻态。也就是说,开漏模式下的IO引脚电平其实是由外部电路决定的,在正常使用时必须外部接入一个上拉电阻,此时输出的高电平,其实是外部上拉电阻所接电源电压。若是多个开漏输出的IO引脚连接到一起,必须满足所有的IO引脚都输出高阻态,才能由上拉电阻提供高电平,有一个引脚为低电平,那线路就相当于短路接地(线与功能)。我们在设计电路时若是看到芯片手册中有开漏输出的情况,一定要记得加上拉。

7:复用推挽输出模式:

复用推挽输出是相对于普通推挽输出而言的,因为嵌入式芯片的IO引脚有很多功能,有最常见的GPIO,也有复用功能,比如USART中的串口输出引脚,则需配置成这种模式,因为其高低电平都可以输出,带载能力强。

8:复用开漏输出:

同样,复用开漏输出是对应于普通开漏输出而言的,在使用该功能时必须所有的引脚接入上拉电阻,上拉电阻决定功耗和速度。一般用于IC、SMBUS这些需要线与功能的复用场合。

以上就是在嵌入式领域比较常见的IO工作模式,当然还有其他的模式,这里就不一一展开了,比较需要注意的就是开漏模式,以及在引脚复用时,IO工作模式的选取。

2003引脚功能电压_嵌入式篇-IO引脚相关推荐

  1. 2003引脚功能电压_《线性稳压器系列》1:从线性稳压器的原理,功能及类型说起......

    线性稳压器是通过线性调节来实现恒定电压输出的电源集成芯片,与分立器件电源比,它集成度更高,输出更稳定,同时集成了更多的诊断与保护功能. 线性稳压器有多种类型,除了通用型线性稳压器以外,还有后级线性稳压 ...

  2. 树莓派之间如何通讯_树莓派的IO引脚是如何定义的?

    我们使用树莓派的很重要一个原因是想通过它来进行一些智能控制,比如控制舵机.LED灯.继电器或者用来进行串口.SPI通信等,这些都需要通过控制树莓派的输入输出引脚(IO引脚)来实现的.前面的文章我们说过 ...

  3. SPI Flash芯片W25Q32英文版数据手册解读(一)---------引脚功能,工作模式

    W25Q32芯片是一个可以通过SPI(串行外围设备接口)操作的flash存储器,这篇文章备忘和总结一下英文版数据手册的一些解读.有关时序及具体用STC单片机编写程序的内容等下一篇文章. 一.芯片引脚功 ...

  4. tl494c封装区别_TL494的特点与引脚功能

    TL494的特点与引脚功能 来源:华强电子网 作者:华仔 浏览:4008 时间:2016-08-10 14:18 标签: 摘要: ;;; 1.特点;;; TL494县有以下特点:①PWM控制电路功能完 ...

  5. viper12a引脚功能图_VIPER22A VIPER12A工作原理引脚功能应用电路图纸与分析

    VIPER22A代换:可用AP8022A,DK112直接代换.VIPER22A可以代换功率较小的VIPER12A VIPER12A 与 VIPER22A 两者输出功率不一样. VIPer12A最高输出 ...

  6. arduino 读取模拟电压_基础部分-读取模拟电压

    这个示例展示了如何用模拟引脚0来读取模拟输入,用analogRead()来转换电压数值,之后把这个值输出在编译器的串口监视器上. 硬件需求 -Arduino控制板 -10K电位器 电路 上面的接线图是 ...

  7. 【DSP】常见问题解决1——引脚功能设置,declared implicitly报错,时钟未配置引起的错误等

    一.引脚功能设置问题 当调试某个引脚功能时,首先要检查的是GPIO的设置模式是否正确 EALLOW;GpioCtrlRegs.GPAGMUX1.bit.GPIO13=0; //数字端子输出GpioCt ...

  8. 全志T507开发板去掉IO扩展芯片,保留扩展引脚功能

    飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的接口资源,而实际上OKT507-C的CPU引脚资源是比较紧缺的,那么它是如何实现这么丰富的接口资源呢? 答案就是飞凌使用了一个IO扩展 ...

  9. 全志T507去掉IO扩展芯片,保留扩展引脚功能

    飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的接口资源,而实际上OKT507-C的CPU引脚资源是比较紧缺的,那么它是如何实现这么丰富的接口资源呢? 答案就是飞凌使用了一个IO扩展 ...

最新文章

  1. 关于软件外包的一些看法(转)
  2. python培训班哪些比较好-南京Python培训机构哪家比较好
  3. 前台获取后台数据写法%#%..
  4. C51 特殊功能寄存器
  5. Android:Application
  6. 执行transact-sql语句或批处理时发生异常_DAY5-step6 Python异常处理:try, raise,except, finally...
  7. window搭建python环境
  8. Maven学习总结(32)——Maven项目部署到Tomcat8中
  9. 那年我学过的Spring笔记
  10. oracle应用技术期末考试,Oracle数据库应用技术
  11. 操作系统(六) 进程同步
  12. OOB模式下Exit事件的处理
  13. 驴妈妈旅游携手法大大,打造分销商签约新体验
  14. 使用百度地图api 报错 A parser-blocking, cross site
  15. 【NLP】动手实现一个句子生成器
  16. 无聊写着玩:解二阶线性微分方程
  17. java大学生网上请假管理系统
  18. 小啊呜产品读书笔记001:《邱岳的产品手记-11》第21讲 产品案例分析:Fabulous的精致养成
  19. HDU 6231 K-th Number(二分)
  20. 课程设计-多种排序方式

热门文章

  1. 论文阅读笔记:You Only Look Once: Unified, Real-Time Object Detection
  2. 视觉检索:视频多帧排序
  3. Git笔记(三)——[cherry-pick, merge, rebase]
  4. JVM学习(2)——技术文章里常说的堆,栈,堆栈到底是什么,从os的角度总结
  5. 利用Python实现简单的相似图片搜索的教程
  6. Python IDLE无法显示行号、Python IDLE shell里运行py文件
  7. Python计算机视觉:第二章 图像局部描述符
  8. 鸟哥的Linux私房菜(服务器)- 第二十章、WWW 伺服器
  9. 程序员面试题精选100题(11)-求二元查找树的镜像[数据结构]
  10. 选择列表中的列……无效,因为该列没有包含在聚合函数或 GROUP BY 子句中