求助----树莓派同时连接BMP180气压传感器和LCD1602输出错误

晨晨起床 10cm2024-04-17742 次点击
设备:树莓派3b,T型连接器,面包板,BMP180气压传感器,lcd1602液晶屏,
通过面包板连接,设备单独连接和返回数据都没有异常,在做气压温度数据显示到液晶屏是显示乱码。
代码如下

`
import time
import Adafruit_BMP.BMP085 as BMP085
from LCD1602 import init_lcd, clear_lcd, print_lcd

# 初始化LCD
init_lcd()

# 初始化BMP085传感器
sensor = BMP085.BMP085(busnum=1)

# 主循环
while True:
# 读取温度和气压
temperature = sensor.read_temperature()
pressure = sensor.read_pressure()

# 格式化数据
temp_str = "{‌‌‌‌:.1f} C".format(temperature)
press_str = "{‌‌‌‌:.1f} hPa".format(pressure / 100.0) # 通常BMP085返回的是Pa,转换成hPa

# 显示温度和气压
clear_lcd() # 清除LCD屏幕内容
print_lcd(0, 0, temp_str) # 显示温度
print_lcd(0, 1, press_str) # 显示气压

# 等待一段时间再次读取
time.sleep(1)
`

屏幕显示如下
![屏幕显示](http://www.chenxuantech.cn:28000/zb_users/upload/2024/04/202404171116364836179.jpg)
连接方式如下
![接线方式](http://www.chenxuantech.cn:28000/zb_users/upload/2024/04/202404171117038340080.jpg)
![接线方式](http://www.chenxuantech.cn:28000/zb_users/upload/2024/04/202404171117128776802.jpg)

图片无法显示[可跳链接](http://www.chenxuantech.cn:28000/?id=23)
收藏 ♥ 感谢
Spoony 小组长 2024-04-17 
用 python 的 print 方法看看 temperature 和 temp_str 这两个变量的值先。
排除一下是不是读取传感器时返回的乱码,如果不是乱码,那就考虑是 LCD1602 驱动的问题了。
RaspiSQH 120.5m 2024-04-18 
两个设备都用i2c,地址应该没有冲突,看看lcd里面有没有奇怪操作,换一个库试试。

登录注册 后可回复。