(3)ESP32 Python 制作一个办公室温度计

因为经常在办公室里面不知道实际室内温度是多少,所以用ESP32做了一个工具来进行温度&湿度的监测。在之前的文章当中,已经完成了ESP32的数据上云工作,如果要进行温度/湿度的检测。从原理上就是给ESP32连接对应的传感器,并把传感器的数据上报到阿里云物联网平台。
我们先来看看效果

这样的话,每天上班前在家里可以先看看办公室空调是否已经把公司的温度提升上去,如果没有提升上去。那说明可能空调有问题,今日的取暖只能靠抖了。
下面我们说说,这个实现怎么搞。首先在阿里云IOT平台上,对我们之前的产品添加2个功能分别为当前湿度和当前温度。

实现步骤如下:

  1. 根据所使用的硬件,进行board.json的配置。 因为我们的温度传感器使用的是sht3x, 使用I2C,在board.json的配置如下:
{
    "name": "haasedu",
    "version": "1.0.0",
    "io": { 
      "sht3x": {
        "type": "I2C",
        "port": 0,
        "addrWidth": 7,
        "freq": 400000,
        "mode": "master",
        "devAddr": 68
      } 
    },
    "debugLevel": "ERROR",
    "repl": "disable"
  }
  1. 实现代码
from driver import I2C   
import sht3x        
def report_iot_data(temperature, humidity ):
    upload_data = {'params': ujson.dumps({
   
### ESP32-S3 MicroPython教程和示例代码 #### 安装MicroPython固件 为了在ESP32-S3上使用MicroPython,需要下载并烧录适合此硬件平台的MicroPython固件版本。这一步骤确保了设备能够识别并执行MicroPython脚本[^1]。 ```bash esptool.py --chip esp32s3 --port /dev/ttyUSB0 erase_flash esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash -z 0x0 path_to_firmware.bin ``` 上述命令用于擦除现有flash内容以及写入新的MicroPython固件文件到指定端口连接的ESP32-S3板子上。 #### 获取闪存信息 通过`esp.flash_size()`方法可以直接查询当前使用的Flash存储空间总量: ```python import esp print(f"Flash Size: {esp.flash_size()} bytes") ``` 这段简单的程序会打印出整个可用闪存区域的大致尺寸(以字节计),这对于评估是否有足够的内存来支持特定应用程序非常重要[^3]。 #### 控制低功耗模式 对于电池供电的应用场景来说,有效地管理电源消耗至关重要。下面的例子说明了怎样切换进入不同的省电状态之一——轻度睡眠模式(light sleep),从而减少不必要的能量浪费: ```python from machine import Pin, deepsleep pin = Pin(0, mode=Pin.IN) def go_to_sleep(): # Enter light sleep until pin value changes or timeout occurs after 5 seconds. print('Going into Light Sleep...') machine.lightsleep(timeout=5000) go_to_sleep() ``` 当调用`machine.lightsleep()`函数时,处理器将会暂停大部分活动直到被唤醒条件满足为止,在这里设置了一个最大等待时间为五秒或者是外部中断触发引脚改变其逻辑电平。 #### 查询芯片温度 内置传感器允许开发者轻松读取内部CPU核心产生的热量水平,这对于监控长时间运行状态下可能出现过热风险很有帮助: ```python import esp32 temperature_celsius = esp32.raw_temperature() print(f'Temperature is {temperature_celsius}°C') ``` 以上就是一些基础的操作指南及实用例子,它们可以帮助初学者快速掌握如何利用MicroPython编写针对ESP32-S3微控制器的小型项目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

炒陈饭老司机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值