数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 1558|回复: 2

[Arduino] [esp8266_micropython] 光敏电阻传感器模块+看门狗

[复制链接]
发表于 2024-4-22 21:56:59 | 显示全部楼层 |阅读模式
# 接线

AO->A0
DO-D1
# 代码

  1. import  machine
  2. import time
  3. import network
  4. from machine import WDT,Pin
  5. import time
  6. import network
  7. from umqtt.simple import MQTTClient
  8. import json
  9. import gc

  10. device_id = "esp0007"
  11. wifi_ssid='FAST_20CC'
  12. wifi_password='409409409'
  13. mqtt_serverip='192.168.1.113'
  14. mqtt_serverport=1883
  15. mqtt_clientid=device_id
  16. mqtt_publishtopic=b'espiot'

  17. digital_pin = machine.Pin(5)
  18. adc_pin = machine.ADC(0)

  19. led=Pin(2,Pin.OUT)
  20. led.on()

  21. def connectionWifi(ssid, password):
  22.   wlan = network.WLAN(network.STA_IF)
  23.   wlan.active(True)
  24.   wlan.connect(ssid, password)
  25.   while True:
  26.     if not wlan.isconnected():
  27.       led.on()
  28.       time.sleep_ms(1000)
  29.       led.off()
  30.       time.sleep_ms(1000)
  31.     else:
  32.       print('connected to network')
  33.       led.on()
  34.       break

  35.   
  36. if __name__=='__main__':
  37.   print ("start")
  38.   
  39.   message_template = {}
  40.   message_template['source_device'] = mqtt_clientid
  41.   message_template['target_device'] = 'server'
  42.   message_template['msg_type'] = 'ReportLuminance'
  43.   
  44.   connectionWifi(wifi_ssid,wifi_password)
  45.   
  46.   client = MQTTClient(mqtt_clientid,mqtt_serverip,mqtt_serverport)
  47.   client.connect()
  48.   
  49.   wdt = WDT()
  50.   wdt.feed()
  51.   
  52.   count = 0
  53.   
  54.   while True:
  55.     digital_value = digital_pin.value()
  56.     adc_value = adc_pin.read()
  57.     wdt.feed()
  58.     print (digital_value)
  59.     print (adc_value)
  60.     message_template['digital'] = str(digital_value)
  61.     message_template['adc'] = str(adc_value)
  62.     wdt.feed()
  63.     wdt.feed()
  64.     client.publish(mqtt_publishtopic,json.dumps(message_template))
  65.     wdt.feed()
  66.     count = 0
  67.     while count < 50:
  68.       time.sleep_ms(100)
  69.       wdt.feed()
  70.       count = count + 1
  71.     gc.collect()

复制代码


# 结果


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
发表于 2024-4-23 19:49:55 来自手机浏览器 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-4-29 23:07:51 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|数码之家-技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2026-6-1 10:56 , Processed in 0.343201 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz!

© MyDigit.Net Since 2006

快速回复 返回顶部 返回列表