发布网友 发布时间:2022-04-23 00:49
共1个回答
热心网友 时间:2023-10-31 14:37
芯片读取电压,一般是通过ADC来实现的,STM32有内部的ADC器件,即通过模拟IO口(这个IO口是需要配置的)来读取这个IO的电压,然后转换成数字量,因此读到到芯片里,实质上是读取到你写的固件代码里。。至于3.3V是高电平,因为现在都是CMOS器件,CMOS器件将3.3V定义为高电平的。。追问我不需要通过自己写编程语句来定义它为高定平么?或者说,我想定义这个3.3v对应标志位flag=1,呢么我应该怎写编程语句呢?这个读取3.3V并定义flag=1的状况需要ADC功能么?或者普通的IO口就能实现呢?谢谢!
追答
你问的两个提问, 本质上是一个问题:
首先,IO口是有区分的,即有些IO可以配置为模拟IO口,从而可以读取模拟电压,有些是数字IO口,你只能操作数字量;
其次,你如果读取一个模拟3.3V电压到STM32里面,肯定需要借助ADC器件来实现,具体就是通过一个上面的模拟IO来读取这个3.3V电压;
至于定义flag,我在上面一个提问中,写了一个小段,你参考下。。