littlebot
Published on 2025-04-18 / 0 Visits
0

【源码】基于Arduino的可见光消息传输系统

项目简介

本项目是基于可见光通信技术的通讯系统,借助UART协议通过光线传输数据,利用BH1750光强度传感器接收信号。通过简单光学设备与两个微控制器,实现了简单的消息传输功能。

项目的主要特性和功能

主要特性

  • 以可见光作为数据通信媒介。
  • 支持UART协议进行数据通讯。
  • 采用BH1750光强度传感器接收信号。
  • 支持ESP32、ESP8266等多种微控制器平台。

功能说明

系统包含发送器和接收器两部分。用户可通过发送器发送消息,接收器通过光线接收并显示消息。系统提供灵活的参数配置,用户能根据实际需求调整代码中的参数以优化性能。用户可通过串行监视器与发送器和接收器进行交互,包括发送消息、接收消息以及调整参数等。该项目适用于近距离数据传输,也可为相关学术研究和技术开发提供参考。

安装使用步骤

准备所需材料

准备两个微控制器(如ESP32或ESP8266)以及BH1750光强度传感器,并注意它们之间的电路连接。

安装必要的软件和库

在Arduino IDE中安装BH1750库。若使用ESP系列微控制器,需从板管理器安装ESP库。

上传代码

receiver.ino文件上传到接收端的微控制器板上,将transmitter.ino文件上传到发送端的微控制器板上。同时,确保已正确连接BH1750传感器和LED。连接方式如下: - 接收端(连接BH1750): - VCC -> 3V3或5V - GND -> GND - SCL -> SCL(Arduino Uno、Leonardo等为A5,Mega和Due为21,esp8266可自由选择,esp32为22) - SDA -> SDA(Arduino Uno、Leonardo等为A4,Mega和Due为20,esp8266可自由选择,esp32为21) - ADD -> (不连接)或GND - 发送端:将LED连接到板上的13号引脚(默认)和地。

进行通讯

  1. 调整发送器的LED和接收器的BH1750使其相互面对。
  2. 打开两个微控制器的串行监视器。
  3. 通过发送器的串行监视器发送一条消息,等待消息传输到接收器。
  4. 检查接收器上显示的消息是否正确,若不正确,可尝试调整代码中的参数。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】