一、gpio 端口(general purpose input&output)
输出模式
1.推挽输出:可以输出高,低电平,连接数字器件;推挽结构一般是指两个三极管分别受两互补信 的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源低定。
推挽输出的最大特点是可以真正能真正的输出高电平和低电平,在两种电平下都具有驱动能力。
缺点是不能实现线与。
2.开漏输出:指 漏极开路 的输出形式。 就像晶体管 集电极开路 的输出形式一样,集电极上没有接集电极电阻Rc,直接引到芯片外面成为输出端,需要在芯片外面接上一个 负载电阻 ( 上拉电阻 )才能形成完整的放大(逻辑)电路。
开漏输出最主要的特性就是高电平没有驱动能力,需要借助外部上拉电阻才能真正输出高电平
好处在于可以实现”线与”功能,所谓的”线与”指的是多个信 线直接连接在一起,只有当所有信 全部为高电平时,合在一起的总线为高电平;只要有任意一个或者多个信 为低电平,则总线为低电平。而推挽输出就不行,如果高电平和低电平连在一起,会出现电流倒灌,损坏器件。
声明:gpio的复用
当gpio口作为内置外设使用时,就叫做gpio的复用。
3.复用推挽输出
4.复用开漏输出
输入模式
1.浮空输入
浮空(floating)就是逻辑器件的输入引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引脚接了高电平。一般实际运用时,引脚不建议悬空,易受干扰。 通俗讲就是让管脚什么都不接,浮空着。
2.上拉输入
有上拉电阻
按键未按下时端口接高电平,即高电平 1 状态—3.3v
按键按下时端口接低电平,即低电平 0 状态——-0v
3.下拉输入
有下拉电阻
按键未按下时端口接低电平,即低电平 0 状态—0v
按键按下时端口接高电平,即高电平 1 状态——3.3v
4.模拟输入
二、gpio口在cubemx中的配置
1.配置sys
2.配置时钟与时钟树
3.配置gpio口
4,生成代码
三、hal库函数
输出函数
电平翻转函数
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!