STM32 GPIO floating模式导致不稳定

  STM32的GPIO有8种模式,输入模式有模拟输入、floating模式、上拉模式和下拉模式,在实际应用中,由于浮空输入可能导致引脚电平不稳定和易受干扰,使用floating模式的时候要注意一些。

  笔者在设计可调增益增益放大器(VGA)的时候,使用4个GPIO读取外部控制电压,根据约定的编码格式设定DAC的输出电压,从而设置VGA的增益,然而在测试发现,DAC的输出电压不稳定,有持续上升的趋势。经过多次实验、代码分析,发现并不是DAC的问题,而是GPIO的问题。GPIO模式当时选择的是floating模式,在系统复杂的电磁环境中,浮空输入导致读取的电压不稳定,从而做出错误判断,对DAC做出错误的指示。

问题代码:

  //选择引脚
  GPIO_InitStructure.GPIO_Pin = OUTSIDE_VGACTRL3_GPIO_PIN; 
  //设置引脚为浮空输入
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; 
  //使用结构体初始化按键
  GPIO_Init(OUTSIDE_VGACTRL3_GPIO_PORT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潇洒的电磁波

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值