历史上的今天
返回首页

历史上的今天

今天是:2024年12月14日(星期六)

2018年12月14日 | KST-STM学习之八种GPIO模式总结

2018-12-14 来源:eefocus

八种IO模式再现


(1)GPIO_Mode_AIN 模拟输入

(2)GPIO_Mode_IN_FLOATING 浮空输入

(3)GPIO_Mode_IPD 下拉输入

(4)GPIO_Mode_IPU 上拉输入

(5)GPIO_Mode_Out_OD 开漏输出

(6)GPIO_Mode_Out_PP 推挽输出

(7)GPIO_Mode_AF_OD 复用开漏输出

(8)GPIO_Mode_AF_PP 复用推挽输出


解释速查


浮空输入_IN_FLOATING


浮空输入,通常用作KEY识别


带上拉输入_IPU


IO内部上拉电阻输入,默认电平是高


带下拉输入_IPD


IO内部下拉电阻输入,默认电平是低。


模拟输入_AIN


通常用作ADC模拟输入


开漏输出_OUT_OD


IO输出0 - GND,IO输出1 - 悬空(高阻态),需要外接上拉电阻,才能实现输出高电平。


可以读IO输入电平变化


开漏也可以用来连接不同电平的器件,匹配电平用的,具体实现方法就是上拉不同阻值的电阻然后接相应的电平。


推挽输出_OUT_PP


可做到真正的高低电平,且具有大的驱动能力。(拉灌电流能力强)IO输出0-GND, IO输出1 -VCC


复用功能的推挽输出_AF_PP


片内外设功能(I2C的SCL,SDA)


复用功能的开漏输出_AF_OD


片内外设功能(TX1,MOSI,MISO.SCK.SS)


所谓的复用:STM32的其他片上外设对GPIO引脚进行控制,此时GPIO引脚用作该外设功能的一部分,算作第二功能。


比如USART通信,把某个GPIO配置为USART串口复用功能,由串口外设控制该引脚,进行输入输出数据。


STM32的GPIO模式总结:


1、输入模式 (模拟,浮空,上拉,下拉)下,输出被禁止。


2、输出模式(推挽、开漏)下,输入仍然可用!


3、复用功能(推挽、开漏)下,输出寄存器(比如ODR)无效,输出源来自其他片内外设,输入仍然可用!


STM32的GPIO模式习惯用法:


RXD/按键,配置为浮空输入


ADC,配置为模拟输入


蜂鸣器与 LED ,配置为推挽输出


DHT11/模拟I2C,配置为开漏输出


TXD(USART属于片上外设) ,配置为复用推挽输出


推荐阅读

史海拾趣

迈翔科技(COILMX)公司的发展小趣事

面对未来,迈翔科技有着明确的发展规划和目标。公司将继续加大技术研发投入,不断提升产品性能和质量;同时,公司也将积极拓展新的应用领域和市场,寻求更多的合作机会和发展空间。未来,迈翔科技将致力于成为全球领先的电感器制造商之一。

以上五个故事概述了迈翔科技在电子行业中的发展历程和关键事件。这些故事展示了公司从创业初期到成为行业领导者的艰辛历程和不懈努力。

DURATOOL公司的发展小趣事

随着环保意识的不断提高,绿色、环保、低碳已成为全球经济发展的重要趋势。DURATOOL公司积极响应这一趋势,致力于研发和生产绿色环保的电子工具产品。公司采用环保材料和工艺生产产品,减少了对环境的污染和破坏。同时,公司还积极开展环保宣传和公益活动,引导消费者树立绿色消费观念。这些举措不仅提升了DURATOOL公司的社会形象,也为其在未来的市场竞争中赢得了先机。

Foxboro I C T Inc公司的发展小趣事

DURATOOL公司自成立以来,一直致力于电子工具的技术创新。在20世纪90年代,公司研发出了一款具有革命性的数字万用表,该产品在精确度、稳定性和操作便捷性方面均大幅超越当时的市场主流产品。这一创新不仅为DURATOOL公司赢得了大量忠实用户,也为其在电子测量工具市场树立了技术领先的形象。随后,DURATOOL公司不断加大研发投入,推出了一系列具有竞争力的新产品,逐步巩固了其在电子工具行业的领先地位。

ELPIDA公司的发展小趣事

在成立初期,ELPIDA凭借其强大的技术实力和规模效应,迅速在全球DRAM市场中占据了重要地位。公司不断推出创新产品,扩大市场份额,成为行业内的重要参与者。然而,随着市场竞争的加剧和技术的快速变化,ELPIDA也面临着巨大的挑战。

FILTRONIC公司的发展小趣事

FILTRONIC深知技术创新是企业持续发展的动力源泉。因此,公司不断加大研发投入,建立了先进的研发中心和实验室,吸引了一批高素质的研发人才。通过持续的技术研发,FILTRONIC在滤波器技术、射频技术、天线技术等领域取得了多项重要突破,推出了多款具有自主知识产权的新产品。这些新产品的推出不仅进一步巩固了FILTRONIC在市场中的领先地位,也为公司的未来发展注入了新的活力。

方舟(ARKLED)公司的发展小趣事

方舟公司自成立以来,始终致力于LED光电技术的研发与创新。公司拥有一支由行业专家和技术骨干组成的研发团队,不断推出具有自主知识产权的新产品。其中,方舟公司独创的某款LED显示屏,以其高清晰度、低功耗和长寿命等特性,在市场上获得了广泛认可。这款产品不仅提升了方舟公司的品牌影响力,还为公司带来了丰厚的经济回报。

问答坊 | AI 解惑

如何将OUT文件转换为16进制的文件格式?

DSP的开发软件集成了一个程序,可以从执行文件OUT转换到编程器可以接受的格式,使得编程器可以用次文件烧写EPROM或Flash。对于C2000的程序为DSPHEX;对于C3x程序为HEX30;对于C54x程序为HEX500;对于C55x程序为HEX55;对于C6x程序为Hex6x。以C32为 ...…

查看全部问答>

我的wince下的fopen_s为何不能用

我的wince下的fopen_s为何不能用?错误提示 C3861: \'fopen_s\': identifier not found。请大侠们指教…

查看全部问答>

【求助】 keilc编程 我用的是sm8958a

我用的是 sm8958a 在定义pdata的时候是这样定义的, #include #include #include . . pdata unsigned int y1[24]; pdata unsigned int ports1[2][24]; . . . main() {         unsigned int i;     ...…

查看全部问答>

stm32f107vcISP问题请教?

                                 ISP时用USART1还是USART2,还是两个都可以呢?…

查看全部问答>

双核的PC机能不能安装 Vxworks?

难道必须要用p4的pc机才能安装Vxworks?…

查看全部问答>

PIC12F615的一个小问题

在下试用pic12F615点亮GP5接的一个led。却始终点不亮,找不到原因,非常苦恼。希望有识之士,指点一下。谢过 #include void initIO(void) {   PSA=0;      TRISIO5=0;    } void main() { &n ...…

查看全部问答>

MSP430G2553实现LCD1602的字符显示,而且是半字节的,用的是P2口的高四位。

/*********************************************************************** LCD1602显示之高四位相连的方法** 描述:4线数据宽度,操作Lcd1602* 在LCD1602屏幕上第一行显示 Hello!LCD1602* 第二行显示 MSP430G2553* 硬件电路:MSP430g2553* 硬件 ...…

查看全部问答>

G2553的中文资料两份+官方的源代码

昨天MSP430 LaunchPad到手。。。去网上下了一堆资料(2G。。。。)。。。早上起来看了看。。又MSP430G2553的中文资料。。看看论坛里没有,,,就先发出来。。其他的资料等我整理好再发…

查看全部问答>

你们用的AD还是PADS啊?

之前用的一直是AD。最近无意中一哥们再用画板软件。提到PADS。没怎么在意。只感觉库不错。然后问题他说学了好长一段时间了。不知道以后公司一般都是用的PADS?请教下各位。现在一般小公司好多人都说的是AD好使一点。但是涉及一流的标准都是PADS强一 ...…

查看全部问答>