电子说
树莓派 Pico 的 RP2040 微控制器内置了温度传感器,它可以通过第四个模拟数字转换器通道读取。像电位器一样,传感器的输出是一个可变的电压,随着温度的变化,电压也随之变化。
启动新程序,导入 machine 和 utime 库:
import machine import utime
再次设置模拟-数字转换器,但这一次不是使用一个引脚的编号,而是使用连接到温度传感器的通道编号:
sensor_temp = machine.ADC(4)
将传感器的原始读数转换为电压值:
conversion_factor = 3.3 / (65535)
然后设置一个循环从模拟输入中获取读数,应用转换因子,并将它们存储在一个变量中:
while True: reading = sensor_temp.read_u16() * conversion_factor
你还需要进行第二次转换,取模拟数字转换器报告的电压并将其转换为摄氏度:
temperature = 27 - (reading - 0.706)/0.001721
这是另一个数学公式,是 RP2040 中特定于温度传感器的公式。
最后,代码如下:
import machine import utime sensor_temp = machine.ADC(4) conversion_factor = 3.3 / (65535) while True: reading = sensor_temp.read_u16() * conversion_factor temperature = 27 - (reading - 0.706)/0.001721 print(temperature) utime.sleep(2)
单击 Run 按钮并将程序保存为 Temperature.py。观察 Shell 区域,你会看到打印的温度数值,其单位是摄氏度。
试着用你的指尖轻轻放在 RP2040 芯片上,温度将上升。把手指从芯片上拿开,温度就会再次下降。
恭喜你!你已经把你的 Pico 变成了温度计!
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !