~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
此教程为VIP教程,提供完整的接线说明,代码示例,必要的代码解释。若非特别说明均为python代码,IDE为THONNY。
如何获得本论坛VIP权限呢?点此查看具体要求。如何进行I2C查询? 点此查看。PICO如何安装固件?点此查看。PICO如何编程和自动运行代码?点此查看
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
所需材料:
1、LM75模块:点此购买
2、合适的万博网页版登陆页派PICO版本和配套外设:点此购买
3、必要的 杜邦线(建议母对母,母对公,公对公,均来一些):点此购买 (多了不值钱,少了贼麻烦)
4、必要的 面包板:点此购买
5、电阻包(若有需要):点此购买
教程开始:
万博网页版登陆页派Pico和I2C接口的LM75温度传感器模块,可以通过 MicroPython 编写代码来读取温度数据。以下是一个简单的例程,展示如何连接和读取LM75温度传感器的数据。
硬件连接:
LM75 模块与PICO接线:
VCC -> 3.3V
GND -> GND
SDA ->GP0 (I2C0 SDA)
SCL-> GP1 (I2C0 SCL)
软件准备
给PICO刷好MicroPython固件,方法见开篇。
必要的库
MicroPython 内置了 machine 和 uctypes 等库,这些库可以支持 I2C 通信和读取 LM75 的数据。库文件下载:
示例代码
以下是一个完整的示例代码,用于读取 LM75 温度传感器的数据并在 REPL 中打印出来。
为防止代码格式错误,采用
下载代码方式:
侦测一次:
实时:
请注意以下几点:
引脚编号:
在上面的代码中,我们使用了 machine.Pin(1) 作为 SCL 和 machine.Pin(0) 作为 SDA。这是根据您提供的 Pico 引脚信息设置的。确保这些引脚与您的 LM75A 模块正确连接。
I2C 总线编号:
我们使用了 I2C(0) 来初始化 I2C 总线。如果您的 Pico 有多个 I2C 总线,并且您想使用不同的总线,请更改此编号。
频率:
我们将 I2C 总线的频率设置为 400,000 Hz。这是大多数 I2C 设备的标准频率,但请根据您的需求和设备的规格进行调整。
连续测量:
在注释掉的 while True: 循环中,我们展示了如何进行连续测量。但是,请注意,这可能会导致您的设备持续占用资源。在实际应用中,您可能需要使用更高效的机制(如定时器中断)来控制测量频率。
中断:
LM75A 没有内置的中断功能,因此您无法直接从传感器接收中断。相反,您需要轮询温度值或使用其他外部触发器(如定时器或 GPIO 中断)来模拟中断行为。
清理资源:
在大多数情况下,当您的程序结束时,MicroPython 会自动清理资源。但是,在某些情况下(特别是当您使用低级硬件功能时),您可能需要手动禁用硬件外设以释放资源。在上面的例子中,我们注释掉了 i2c.deinit() 行,因为在大多数情况下它不是必需的。但是,如果您在程序结束时遇到问题或想要确保资源被正确释放,请取消注释该行。
祝您顺利!