当前位置: 首页 > news >正文

香橙派/树莓派读取GY39数据

目录

前言

环境安装

效果

代码:


前言

网上还没啥GY39树莓派的代码

这次使用的是串口通信

悬空S0引脚

接上串口使用的4个引脚就可以了

环境安装

pip3 install pyserial

香橙派配置串口:

 sudo orangepi-config

配置后重启就行:

效果:

代码:

import serial
import timeSERIAL_PORT = "/dev/ttyS0"  # 根据实际情况修改
BAUDRATE = 9600def read_environment():try:with serial.Serial(SERIAL_PORT, BAUDRATE, timeout=1) as ser:# 发送查询环境数据的指令ser.write(bytes([0xA5, 0x52, 0xF7]))time.sleep(0.1)  # 等待模块响应response = ser.read(12)  # 读取12字节的响应数据if len(response) == 12 and response[0] == 0x5A and response[1] == 0x5A:# 解析温度(第4和5字节)temperature = ((response[4] << 8) | response[5]) / 100.0# 解析湿度(第6和7字节)humidity = ((response[6] << 8) | response[7]) / 100.0# 解析气压(第8和9字节)pressure = ((response[8] << 8) | response[9]) / 100.0# 解析海拔(第10和11字节)altitude = ((response[10] << 8) | response[11]) / 100.0print(f"温度: {temperature} °C")print(f"湿度: {humidity} %")print(f"气压: {pressure} hPa")print(f"海拔: {altitude} m")else:print("未收到完整的响应数据")except Exception as e:print(f"通信错误: {e}")if __name__ == "__main__":while True:read_environment()time.sleep(1)

http://www.dtcms.com/a/191074.html

相关文章:

  • QMK键盘编码器(Encoder)(理论部分)
  • 实战案例:采集 51job 企业招聘信息
  • 安卓system/文件夹下的哪些文件夹可以修改为别的设备的
  • SRM电子采购管理系统:Java+Vue,集成供应商管理,实现采购流程数字化与协同优化
  • 麒麟环境下Selenium的使用
  • 如何高效集成MySQL数据到金蝶云星空
  • Spring的 @Validate注解详细分析
  • 力扣-108.将有序数组转换为二叉搜索树
  • idea 启动Springboot项目在编译阶段报错:java: OutOfMemoryError: insufficient memory
  • VS Code 新旧版本 Remote-SSH 内网离线连接服务器方法(版本 ≤ 1.78.x 及 ≥ 1.79.0)
  • 实验五:以太网UDP全协议栈的实现(通过远程实验系统)
  • 代码随想录算法训练营Day58
  • CSP信奥赛新增的算法-马拉车算法(Manacher‘s Algorithm)
  • 初识java
  • git切换分支后需要pull吗
  • cGAS-STING通路
  • 解决 TypeError: unsupported operand type(s) for -: ‘NoneType‘ and ‘float‘ 错误
  • 前端服务器部署分类总结
  • 带直流音量控制的立体声音频功率放大器—D2668
  • 第二十四天打卡
  • 服务器被打了怎么应对
  • Vue3吸顶导航的实现
  • Nginx配置与应用案例详解
  • 每周靶点:STEAP1、NPR1及文献分享
  • 快速定位到源码位置的插件 - vite/webpack
  • 量子算法:开启计算新时代的技术密码
  • Java基础之静态代理和动态代理
  • Excel中批量对多个结构相同的工作表执行操作,可以使用VBA宏来实现
  • HCIP(BFD)
  • 音频生成技术的前沿探索:从语音合成到智能Podcast