STM32的输入输出管脚有下面8种或许的装备:(4输入+2输出+2复用输出)
① 浮空输入_IN_FLOATING
② 带上拉输入_IPU
③ 带下拉输入_IPD
④ 模仿输入_AIN
⑤ 开漏输出_OUT_OD
⑥ 推挽输出_OUT_PP
⑦ 复用功用的推挽输出_AF_PP
⑧ 复用功用的开漏输出_AF_OD
1.1I/O口的输出形式下,有3种输出速度可选(2MHz、10MHz和50MHz),这个速度是指I/O口驱动电路的响应速度而不是输出信号的速度,输出信号的速度与程序有关(芯片内部在I/O口的输出部分组织了多个响应速度不同的输出驱动电路,用户能够依据自己的需求挑选适宜的驱动电路)。通过挑选速度来挑选不同的输出驱动模块,到达最佳的噪声控制和降低功耗的意图。高频的驱动电路,噪声也高,当不需求高的输出频率时,请选用低频驱动电路,这样十分有利于进步体系的EMI功用。当然假设要输出较高频率的信号,但却选用了较低频率的驱动模块,很或许会得到失真的输出信号。
关键是GPIO的引脚速度跟运用匹配(引荐10倍以上?)。比方:
1.1.1关于串口,假设最大波特率只需115.2k,那么用2M的GPIO的引脚速度就够了,既省电也噪声小。
1.1.2关于I2C接口,假设运用400k波特率,若想把余量留大些,那么用2M的GPIO的引脚速度或许不行,这时能够选用10M的GPIO引脚速度。
1.1.3关于SPI接口,假设运用18M或9M波特率,用10M的GPIO的引脚速度明显不行了,需求选用50M的GPIO的引脚速度。
1.2GPIO口设为输入时,输出驱动电路与端口是断开,所以输出速度装备无意义。
1.3在复位期间和刚复位后,复用功用未敞开,I/O端口被装备成浮空输入形式。
1.4一切端口都有外部中止才干。为了运用外部中止线,端口有必要装备成输入形式。
1.5GPIO口的装备具有上锁功用,当装备好GPIO口后,能够通过程序锁住装备组合,直到下次芯片复位才干解锁。
2在STM32中怎么装备片表里设运用的IO端口
首要,一个外设通过 ①装备输入的时钟和 ②初始化后即被激活(敞开);③假设运用该外设的输入输出管脚,则需求装备相应的GPIO端口(不然该外设对应的输入输出管脚能够做一般GPIO管脚运用);④再对外设进行具体装备。
对应到外设的输入输出功用有下述三种状况:
一、外设对应的管脚为输出:需求依据外围电路的装备挑选对应的管脚为复用功用的推挽输出或复用功用的开漏输出。
二、外设对应的管脚为输入:则依据外围电路的装备能够挑选浮空输入、带上拉输入或带下拉输入。
三、ADC对应的管脚:装备管脚为模仿输入。
假设把端口装备成复用输出功用,则引脚和输出寄存器断开,并和片上外设的输出信号衔接。将管脚装备成复用输出功用后,假设外设没有被激活,那么它的输出将不确认。
3通用IO端口(GPIO)初始化:
3.1GPIO初始化
3.1.1RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | B | C, ENABLE):使能APB2总线外设时钟
3.1.2RCC_ APB2PeriphResetCmd (RCC_APB2Periph_GPIOA | B | C, DISABLE):开释GPIO复位
3.2装备各个PIN端口(模仿输入_AIN、输入浮空_IN_FLOATING、输入上拉_IPU、输入下拉_IPD、开漏输出_OUT_OD、推挽式输出_OUT_PP、推挽式复用输出_AF_PP、开漏复用输出_AF_OD)
3.3GPIO初始化完结
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/256510.html