惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MyScale Blog
MyScale Blog
Jina AI
Jina AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
Last Week in AI
Last Week in AI
博客园 - 司徒正美
Martin Fowler
Martin Fowler
T
Tailwind CSS Blog
B
Blog RSS Feed
Vercel News
Vercel News
博客园 - 聂微东
I
InfoQ
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
M
MIT News - Artificial intelligence
Recent Announcements
Recent Announcements
GbyAI
GbyAI
L
LangChain Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Security Blog
Microsoft Security Blog
C
Check Point Blog
MongoDB | Blog
MongoDB | Blog
B
Blog

博客园 - ejiyuan

vLLM + MTP + DFlash 部署测试 ChatGPT(codex) 第三方LLM配置 AI Search By PostgreSQL Jetson Orin Nano 刷机、Docker GPU 环境与大语言模型部署实践(Ollama / vLLM) linux 系统相关工具和命令 arduino首选项 ESXi安装openwrt idea 如何使用Let's Encrypt和Nginx为您的网站提供免费的SSL/TLS证书 docker 安装 onlyoffice docker使用alpine构建jdk21镜像 Minio服务搭建与应用 frp内网穿透 基于Docker 的redis cluster部署 docker 部署mongoDB集群与读写分离 MariaDB MaxScale实现mysql8读写分离 ESP8266引脚的说明 ESP8266 超声波测距模块HC-SR04 树莓派PICO Wifi 无线网卡 esp82666接线图 树莓派PICO读取温度传感器 树莓派使用python+继电器控制220V灯泡 docker的/var/lib/docker目录迁移
Arduino uno r3 使用 ESP8266 UART-WiFi 透传模块
ejiyuan · 2021-11-21 · via 博客园 - ejiyuan

一、所需硬件材料

1.ESP8266:01s某宝上3、5块钱

2.杜邦线:某宝几块钱一组40P,这里只需要三根,用于连接 树莓派与继电器

  

3.烧录器

二、ESP8266 AT固件烧录

ESP8266主要有两种固件,一种是AT固件(一般出厂自带)实现UART-WiFi 透传模块,一种是IoT固件,即我们自己编写通过IDE烧录的固件,如果ESP8266中包含这种固件无法通过AT命令实现透传,需要从新烧录AT固件。

0,软件准备:

1,连接烧录器:

如果是ESP01s 直接插入烧录器,然后插入电脑usb接口;如果是12E/F按阵脚对应接线,注意GPIO0、REST必须接,模块CH_PC接烧录器EN(网上说需要接10k电阻,我没接)

 2,软件烧录

  • 在出现的窗口中, 选择SPIDownload标签页(默认是这一页)
  • 在固件选择栏中, 勾选需要写入的行, 文件和地址分别为
  •   boot_v1.7.bin 0x00000
  •   user1.1024.new.2.bin 0x01000
  •   esp_init_data_default_v08.bin 0xfc000
  •   blank.bin 0x7e000
  •   blank.bin 0xfe000
  • 检查下面的参数配置: CrystalFreq 26M, SPI SPEED是40MHz, SPI MODE是DIO, FLASH SIZE是8Mbit
  • 界面右下方, 选择正确的COM口, 波特率使用默认的115200
  • 点击START

三、连接到Arduino uno 到ESP8266

1,连线图

2、代码

const int tx = 1;
const int rx = 0;
void setup() {
  pinMode(rx,INPUT_PULLUP);
  pinMode(tx,INPUT_PULLUP); 
}

void loop() {

}

以上连接的Arduino上的0和1是硬串口,也可使用软串口比如设置arduino上的8号口为rx,9号口为tx。就需要把ESP8266 的rx连接到Arduino的9号口上,模块的tx连接Arduino的8号口上,代码如下:

#include <SoftwareSerial.h>
SoftwareSerial mySerial(8, 9); // RX, TX
void setup() {
  Serial.begin(9600);
  mySerial.begin(9600);
  delay(1000);
  Serial.println("Goodnight  moon2");
  mySerial.println("AT+GMR");
}
void loop() {
  while (mySerial.available()) {
    Serial.write(mySerial.read());
  }
}

3、调试,打开串口工具

 4,使用AT命令透传

 

四、AT 常用命令

AT+RST //重启模块
AT+GMR //查看版本信息
AT+CIOBAUD=9600 //修改波特率
AT+CWMODE? //查询工作模式 1.Station (客户端模式)2.AP (接入点模式)3.Station+AP (两种模式共存)
AT+CWMODE=1 //设置模组为STA模式。
AT+CWLAP //查询附近 WIFI
AT+CWJAP="wifi名称","wifi密码" //连接路由器的 WIFI
AT+CIFSR //查看路由器分配给模组的IP地址,例如 192.168.43.103
AT+CIPMUX=0 //设置单连接
AT+CIPMODE=1 //设置透传模式
AT+CIPSTART="TCP","192.168.43.104",8899 //建立的TCP服务器
AT+CIPSEND //开始发送数据
>      //进入发送模式
abc     //发送数据
+++     //注意退出透传,直接发送。取消发送新行

五、参考