第四章:ESP32零基础教学 - 4.1.2光敏传感器

该文章已生成可运行项目,

ESP32是一款功能强大的微控制器,广泛应用于物联网和嵌入式系统中。本教程将详细介绍如何使用ESP32与光敏传感器(光强检测)进行光强检测,并控制执行器(如LED灯)进行响应。我们将一步步地编写代码,并对每一行代码进行详细解释。

所需硬件

  • ESP32开发板
  • 光敏传感器(LDR,光敏电阻)
  • 10kΩ电阻
  • LED灯
  • 220Ω电阻
  • 跳线
  • 面包板

电路连接

光敏传感器连接

  1. 将光敏传感器的一个引脚连接到ESP32的3.3V引脚。
  2. 将光敏传感器的另一个引脚连接到ESP32的模拟输入引脚(例如GPIO34)。
  3. 在光敏传感器与地之间连接一个10kΩ电阻。

LED连接

  1. 将LED的正极(长脚)通过220Ω电阻连接到ESP32的GPIO引脚(例如GPIO23)。
  2. 将LED的负极(短脚)连接到地。

软件环境

  • Arduino IDE
  • ESP32开发板支持包

安装ESP32开发板支持包

  1. 打开Arduino IDE。
  2. 导航到 文件 -> 首选项
  3. 在“附加开发板管理器网址”中添加以下URL:
    https://dl.espressif.com/dl/package_esp32_index.json
    
  4. 导航到 工具 -> 开发板 -> 开发板管理器,搜索并安装 esp32

本文章已经生成可运行项目
2025-12-04 09:57:05.319 INFO 117510 --- [ssageDispatcher] o.j.local.office.OfficeConnection : Disconnected from 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1' 2025-12-04 09:57:05.319 WARN 117510 --- [ssageDispatcher] o.j.l.o.LocalOfficeManagerPoolEntry : Connection lost unexpectedly; attempting restart 2025-12-04 09:57:05.319 INFO 117510 --- [ssageDispatcher] o.j.l.office.LocalOfficeProcessManager : Restarting due to lost connection... 2025-12-04 09:57:05.319 INFO 117510 --- [er-offprocmng-1] o.j.l.office.LocalOfficeProcessManager : Process exited with code 137 2025-12-04 09:57:05.320 ERROR 117510 --- [ter-poolentry-3] o.j.local.task.LocalConversionTask : Local conversion failed. com.sun.star.lang.DisposedException: null at com.sun.star.lib.uno.environments.remote.JobQueue.removeJob(JobQueue.java:210) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:330) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:303) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.environments.remote.JavaThreadPool.enter(JavaThreadPool.java:87) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:636) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.request(ProxyFactory.java:146) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.invoke(ProxyFactory.java:128) ~[jurt-4.1.2.jar!/:na] at com.sun.proxy.$Proxy75.loadComponentFromURL(Unknown Source) ~[na:na] at org.jodconverter.local.task.AbstractLocalOfficeTask.loadDocumentFromURL(AbstractLocalOfficeTask.java:240) ~[jodconverter-local-4.4.6.jar!/:4.4.6] at org.jodconverter.local.task.AbstractLocalOfficeTask.loadDocument(AbstractLocalOfficeTask.java:204) ~[jodconverter-local-4.4.6.jar!/:4.4.6] at org.jodconverter.local.task.LocalConversionTask.execute(LocalConversionTask.java:129) ~[jodconverter-local-4.4.6.jar!/:4.4.6] at org.jodconverter.local.office.LocalOfficeManagerPoolEntry.doExecute(LocalOfficeManagerPoolEntry.java:121) [jodconverter-local-4.4.6.jar!/:4.4.6] at org.jodconverter.core.office.AbstractOfficeManagerPoolEntry.lambda$execute$0(AbstractOfficeManagerPoolEntry.java:81) [jodconverter-core-4.4.6.jar!/:4.4.6] at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_251] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_251] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_251] at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_251] Caused by: java.io.IOException: com.sun.star.io.IOException: EOF reached - socket,host=127.0.0.1,port=2002,tcpNoDelay=1,localHost=localhost,localPort=40520,peerHost=localhost,peerPort=2002 at com.sun.star.lib.uno.bridges.java_remote.XConnectionInputStream_Adapter.read(XConnectionInputStream_Adapter.java:55) ~[jurt-4.1.2.jar!/:na] at java.io.DataInputStream.readInt(DataInputStream.java:387) ~[na:1.8.0_251] at com.sun.star.lib.uno.protocols.urp.urp.readBlock(urp.java:355) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.protocols.urp.urp.readMessage(urp.java:92) ~[jurt-4.1.2.jar!/:na] at com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:105) ~[jurt-4.1.2.jar!/:na] 2025-12-04 09:57:05.324 INFO 117510 --- [er-offprocmng-1] o.j.local.office.OfficeDescriptor : soffice info (from exec path): Product: LibreOffice - Version: ??? - useLongOptionNameGnuStyle: true 2025-12-04 09:57:05.420 INFO 117510 --- [er-offprocmng-1] o.j.local.office.OfficeDescriptor : soffice info (from help output): Product: LibreOffice - Version: 7.5.3.2 - useLongOptionNameGnuStyle: true 2025-12-04 09:57:05.448 INFO 117510 --- [er-offprocmng-1] o.j.l.office.LocalOfficeProcessManager : Starting process with --accept 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1;urp;StarOffice.ServiceManager' and profileDir '/tmp/.jodconverter_socket_host-127.0.0.1_port-2002_tcpNoDelay-1' 2025-12-04 09:57:05.728 WARN 117510 --- [er-offprocmng-1] o.j.l.o.StartProcessAndConnectRetryable : Office process died with exit code 81; restarting it 2025-12-04 09:57:07.272 INFO 117510 --- [er-offprocmng-1] o.j.local.office.OfficeConnection : Connected: 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1' 2025-12-04 09:57:07.272 INFO 117510 --- [er-offprocmng-1] o.j.l.office.LocalOfficeProcessManager : Started process; pid: 39568 curl: (7) Failed connect to 119.45.16.244:8888; Connection timed out 如何判断是否是内存的问题导致的泄露
最新发布
12-05
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

龙大大L

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

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

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

打赏作者

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

抵扣说明:

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

余额充值