STM32的几种输入模式以及外部中断的配置

发布时间:2023-01-03  

  要求:将连接按键的IO口配置为上拉输入,按键一端接IO口,一端接地,即当按键按下后,该IO口会产生一个下降沿,触发下降沿中断。

  问题:将相应的IO口配置好后,测了引脚的的电压,并不是3.3V左右,而是0.1V左右。于是猜想:

  1. 外围电路对IO口产生了影响。

  2. STM32内部上拉能力较弱,一次只能上拉一个IO口。

  于是开始从这两个想法着手解决。首先第一个,很容易就排除了。将外围电路撤掉,我用的是杜邦线,直接拔掉测量引脚上的电压,依然是0.1V左右,于是第1个猜想排除。

  第二个,查看万能的参考手册,发现每一个IO口都是有独立的驱动电路,这样第2个也排除了。

  最后各种纠结,然后发现:在主函数的开头部分初始化的时候,我把初始化的那个函数给注释掉了。低级错误,见笑了。

  现在总结一下:

  STM32的输入有4种输入模式:

  模拟输入 GPIO_AIN

  用于AD转换

  浮空输入 GPIO_IN_FLOAtiNG

  引脚处于浮空模式,电平状态是不确定的。外部信号输入什么,IO口就是什么状态。

  上拉输入 GPIO_IPU

  防止IO口出现不确定的状态,比如,当IO口悬空时,就会通过内部的上拉电阻将该点钳位在高电平。

  下拉输入 GPIO_IPD

  功能与上拉电阻类似,防止IO口出现不确定的状态,比如,当IO口悬空时,就会通过内部的下拉电阻将该点钳位在低电平。

  STM32中空的I/O管脚是高电平还是低电平取决于具体情况。

  1、IO端口复位后处于浮空状态,也就是其电平状态由外围电路决定。

  2、STM32上电复位瞬间I/O口的电平状态默认是浮空输入,因此是高阻。做到低功耗。

  3、STM32的IO管脚配置口默认为浮空输入,把选择权留给用户,这是一个很大的优势:一方面浮空输入确保不会出现用户不希望的默认电平(此时电平取决于用户的外围电路);另一方面降低了功耗,因为不管是上拉还是下拉都会有电流消耗。从另一个角度来看,不管I/O管脚的默认配置如何,还是需要在输出的管脚外加上拉或下拉,这是为了保证芯片上电期间和复位时输出的管脚始终处于已知的电平。

  4、在没有任何操作的情况下,STM32通用推挽输出模式的引脚默认低电平,也就是有电的状态。所以在配置的时候通常会先把引脚的电平设置拉高,让电路不产生电流。有电到没电这一过程也就是引脚电平从低到高的过程。

  5、STM32的I/O管脚有两种:TTL和CMOS,所有管脚都兼容TTL和CMOS电平。也就是说从输入识别电压上看,所有管脚不管是TTL管脚还是CMOS管脚都可以识别TTL或CMOS电平。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    个寄存器,ISER 是中断使能寄存器,ICER 是中断清除寄存器,IP 是中断优先级寄存器。   返回目录   二、中断配置   要使用中断我们就需要先配置它,通常都需经过这几步:   (1)使能外设某个中断,这个具体是由外设相关中断使能......
    线。这些中断线可以通过中断线控制器(EXTI)进行设置,并可以绑定到不同的GPIO端口上,以实现具体的外部中断功能。在进行外部中断的初始化过程中,需要配置外部中断的触发方式、中断优先级和中断使能......
    位(TXIDLEEN)为发送闲置中断使能位,置1时使能中断,当发送器进入闲置状态 (即TXIDLE=1)时会触发NVIC串口中断,默认值为禁止中断。(5)第4位为保留位,写入时只能写0。(6)第5位......
    体。   其中,我们一般只用到ISER、ICER、IP这3个寄存器。ISER用于使能中断,ICER用来清除中断,IP用来设置中断优先级。   其次,我们了解一下中断优先级,中断优先级寄存器NVIC_IPRx......
    配置GPIO管脚为中断功能   3、设置中断优先级   4、使能相应的中断   5、实现中断服务程序   按键中断编程实例:   配置引脚功能:   设置串口:   打开中断:   设置中断......
    的处理流程主要分为以下几个步骤:1.中断配置和使能:首先,我们需要配置中断源和中断优先级,选择触发中断的条件和中断的优先级。然后使能中断,使得中断能够被触发和处理。2.编写中断服务程序(ISR):中断服务程序是中断......
    函数都要在stm32f10x_it.c中编写代码。 STM32芯片中断设置: 1.打开时钟 2.中断引脚选择 3.中断模式选择 4.中断触发方式选择 5.使能中断 STM32内核中断配置: 1.中断优先级分组 2.设置中断地址 3......
    源如下: CC2530中断设置步骤:使能端口组中断(IEN)——端口组中具体端口中断使能/禁止(PxIEN)——设置中断触发方式PICTL——使能系统总中断(EA) 下文按此思路展开: 1、使能端口组中断 IEN2......
    关于STM32配置中断和GPIO针脚问题; STM32是用的什么开发环境?   STM32系列单片机,这款单片机功能强大,而且很容易学习,官方示例代码很多,稍加修改就可以开发自己的东西了。  嵌入......
    单片机的中断系统(2024-12-17 11:20:29)
    使能 ET0:定时器 0 中断使能 EX0:外部中断 0 使能 IP(中断优先级寄存器) 该寄存器用于设置中断......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>