无线手持二维码识别项目是中山大学电子与信息工程学院(微电子学院)的工程应用训练课程的设计要求。项目是基于STM32F103开发的,开源代码:stm32f103zet6-qrcode-detect,bilibili:基于STM32F1的无线手持二维码识别项目。CSDN总目录:基于STM32F103的二维码识别项目。项目移植了Zbar库进行二维码识别,而非使用二维码识别模块。
此篇文章讲述ESP01模块相关的设计。
文章目录
为了实现检测到二维码后将二维码的信息传到上位机,我使用了ESP01S模块,核心思想为ESP01S开启热点,建立web服务,电脑端通过连接热点访问相应的地址从而获得数据。
注意有两款,博主使用的是ESP-01.

一、 开发环境搭建
进入Arduino IDE 2.3.2安装软件,之后打开软件,文件–>首选项…

复制http://arduino.esp8266.com/stable/package_esp8266com_index.json到下方位置,然后确定。

重启IDE后,工具–>开发板–>开发板管理器…

搜索ESP8266进行安装,安装失败就用梯子。

按照下面的选项选择。

二、 ESP8266代码详解
我们的核心思想是在ESP8266上创建一个WiFi热点和Web服务器。它通过串口接收数据,并在客户端请求时通过Web接口提供这些数据。这样,用户可以通过连接到ESP8266创建的WiFi热点并访问其IP地址,获取串口接收到的数据。
const char *ssid = "ESP8266_HOTSPOT";
const char *password = "lpflpflpf";
ssid:定义WiFi热点的名称。
password:定义WiFi热点的密码。
ESP8266WebServer server(80);
String data;
server:创建一个Web服务器实例,监听80端口。
data:用于存储从串口接收到的数据。
void handleRoot() {
server.send(200, "text/plain", data);
data = ""; // 清空数据
}
handleRoot() 函数用于处理对 Web 服务器根路径(“/”`)的请求。当客户端请求根路径时,将调用此函数来生成响应。
总体而言,handleRoot() 函数会向客户端发送一个 HTTP 响应,其中包含 data 变量中的数据。
1. server.send(200, “text/plain”, data); 这行代码用于向客户端发送 HTTP 响应。它接受三个参数:
- <


1404

被折叠的 条评论
为什么被折叠?



