项目简介
本项目是基于可见光通信技术的通讯系统,借助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号引脚(默认)和地。
进行通讯
- 调整发送器的LED和接收器的BH1750使其相互面对。
- 打开两个微控制器的串行监视器。
- 通过发送器的串行监视器发送一条消息,等待消息传输到接收器。
- 检查接收器上显示的消息是否正确,若不正确,可尝试调整代码中的参数。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】