玩转X-CTR100 l STM32F4 l ESP8266串口WIFI模块

我造轮子,你造车,创客一起造起来!更多塔克创新资讯【塔克社区 www.xtark.cn 】【塔克博客 www.cnblogs.com/xtark/ 】-

ESP8266是一款非常火的WIFI模块,性价比高,操作简单,通过AT指令实现复杂的WIFI通信,大大降低开发难度。
夸张点说,如果创客不知道这么模块,不能称之为创客!
本文介绍ESP8266模块的使用,X-CTR100控制器连接ESP8266模块实现无线WIFI网络连接功能。
原理
模块核心处理器 ESP8266 在较小尺寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU,带有 16 位精简模式,主频支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA,板载天线。支持标准的 IEEE802.11 b/g/n 协议,完整的 TCP/IP 协议栈。用户可以使用该模块为现有的设备添加联网功能,也可以构建独立的网络控制器。
ESP8266 是高性能无线 SOC,以最低成本提供最大实用性,为 WiFi 功能嵌入其他系统提供无限可能。
特点
802.11 b/g/n
内置Tensilica L106 超低功耗 32 位微型 MCU,主频支持 80 MHz 和160 MHz,支持 RTOS
内置10 bit高精度ADC
内置TCP/IP协议栈
内置TR 开关、balun、LNA、功率放大器和匹配网络
内置PLL、稳压器和电源管理组件,802.11b 模式下+20 dBm的输出功率
A-MPDU 、 A-MSDU 的聚合和 0.4 s的保护间隔
WiFi @ 2.4 GHz,支持 WPA/WPA2 安全模式
支持AT远程升级及云端OTA升级
支持 STA/AP/STA+AP 工作模式
支持 Smart Config 功能(包括 Android 和 iOS 设备)
HSPI 、UART、I2C、I2S、IR Remote Control、PWM、GPIO
深度睡眠保持电流为 10 uA,关断电流小于 5 uA
2 ms 之内唤醒、连接并传递数据包
待机状态消耗功率小于1.0 mW (DTIM3)
工作温度范围:-20℃- 85℃
功能说明
ESP8266可以使用官方提供的SDK作二次开发来使用,也可以直接利用官方出厂提供的固件直接AT指令配置模块使用。
SDK开饭方式较为专业,本文对常用的AT指令模式进行说明,模块波特率:115200(8位数据位,1位停止位)。
ATK_ESP8266模块支持STA/AP/STA+AP三种工作模式。
STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。
AP 模式:默认模式ATK_ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。
STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。
指令说明
AT指令主要包括3部分
基础AT指令

WIFI功能AT指令

TCP/IP工具箱AT指令

详细说明参考《ESP8266AT指令集》。
模块说明
本文选用模块为正点原子的ESP8266模块进行试验,模块及引脚如下


连接方式

调试
基于串口调试工具进行AT指令调试。
使用X-CTR100控制器的COM口USB转串口调试,请按如下图连接,RX接RX,TX接TX。
主要拔掉BOOT跳线帽,使程序不跑,避免处理器程序使用UART1干扰通信。

TCP透传模式
AT+CWMODE=1 "设置STA模式"
AT+CWJAP="XXX","XXXXXXXX" "加入路由器,与服务器在同一局域网下,或自行设定"
AT+CIPMUX=0 "设置单链接"
AT+CIPSTART="TCP","192.168.31.101",8080 "正常tcp连接测试"(IP和端口自行设定)
AT+CIPMODE=1 "设置透传模式"
AT+CIPSEND "发送数据"
注意每个指令后面需增加换行符。
测试结果如下:


退出透传请发送"+++",注意取消发送新行。

UDP透传模式
AT+CWMODE=1 "设置STA模式"
AT+CWJAP="XXX","XXXXXXXX" "加入路由器,与服务器在同一局域网下,或自行设定"
AT+CIPMUX=0 "设置单链接"
AT+CIPSTART="UDP","192.168.31.101",1000,2000,0 "UDP连接测试,1000位目标端口,2000为本机端口,可修改
AT+CIPMODE=1 "设置透传模式"
AT+CIPSEND "发送数据"
测试结果略。
开机透传模式
如果网络没有变换,每次上电都进行一次配置,比较麻烦,尤其是处理器使用,配置不方便。
ESP8266具有保存开机进入透传模式功能,指令如下。

UDP指令示例如下。
AT+SAVETRANSLINK=1,"192.168.31.235",1000,"UDP",2000
例程
大多数电子制作应用场景是串口数据透传,本例程中ESP8266模块已完成开机UDP透传模式设置。
ESP8266连接X-CTR100控制器,无须任何配置,即可实现串口数据的无线网络通信。

硬件连接如下图,不同于调试时的连接,ESP8266的RX连接控制器的TX,TX连接控制器的RX。

下载陀螺仪加速度基础例程,传输效果如下,实现了串口数据的无线WIFI接收,后续功能调试非常方便。

参考
正点原子 ATK-ESP8266 WIFI用户手册_V1.0
玩转X-CTR100 l STM32F4 l ESP8266串口WIFI模块的更多相关文章
- ESP8266串口WiFi扩展板详解
产品简介 ESP8266串口WiFi扩展板是深圳四博智联科技有限公司开发的一款基于乐鑫ESP8266的超低功耗的UART-WiFi模块,兼容Arduino UNO.Mega等标准主板,可以方便地进行二 ...
- Arduino 基于 ESP8266 配置WIFI模块
Arduino 基于 ESP8266 配置WIFI模块 使用ESP8266作为服务器,使用浏览器访问该服务器,从而控制LED灯 选择 [文件]->[示例]->[ESP8266WIFI]-& ...
- 基于H7的串口WIFI模块ESP8266的TCP客户端例子和操作说明(AP兼STA模式)
说明: 1.如果不熟悉网络的话,等我这几天更新V7用户手册的ESP8266章节,如果熟悉的话,直接操作即可,这里将操作说明发出来. 2.串口WIFI是采用的AT指令操作,简单易用,指令手册在这个帖子里 ...
- 玩转X-CTR100 l STM32F4 l ADC 模拟数字转换
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 AD转换接 ...
- 玩转X-CTR100 l STM32F4 l MPU6050加速度陀螺仪传感器
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 板载加速度 ...
- 玩转X-CTR100 l STM32F4 l X-CTR100与树莓派搭建机器人平台
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器与树莓派Linux系统 ...
- 玩转X-CTR100 l STM32F4 l 舵机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器的舵机控制,X-CTR ...
- 玩转X-CTR100 l STM32F4 l DRV8825 A4988 步进电机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器控制步进电机 ...
- 玩转X-CTR100 l STM32F4 l 基础例程printf、LED、蜂鸣器、拨码开关、位带操作
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器基础板载资源 ...
随机推荐
- Mato的文件管理 (莫队)题解
思路: 莫队模板题,转换几次就是找逆序数,用树状数组来储存数就行了 注意要离散化 代码: #include<queue> #include<cstring> #include& ...
- ACM-ICPC 2018 南京赛区网络预赛 L. Magical Girl Haze 最短路+分层图
类似题解 There are NN cities in the country, and MM directional roads from uu to v(1\le u, v\le n)v(1≤u, ...
- perl usage()和getopt
#!/usr/bin/perl#perl search.pl --infile Targets.Lung.Carcinoma.genelist.txt --homogene Homo_sapiens. ...
- Cassandra学习笔记
CASSANDRA在工作中用过,但是用的项目少,能用却了解的不全面.今天来稍加学习下: http://zqhxuyuan.github.io/2015/10/15/Cassandra-Daily/ ...
- java动态代理和cglib
1.代理类可以分为两种. 静态代理:由程序员创建或特定工具自动生成源代码,再对其编译.在程序运行前,代理类的.class文件就已经存在了. 动态代理:在程序运行时,运用反射机制动态创建而成. 2.JD ...
- Python day12部分内置函数的常见方法
#内置函数 print(abs(-1))#绝对值 ']))#判断list的真假,都真则真,有一个假也是假 print(any(''))#有一个真就真,全假则假 print(bin(3))#十进制转换二 ...
- MongoDB(课时22 过期索引)
3.6.2 过期索引 在一些程序的站点会出现若干秒之后信息被删除的情况,例如:手机信息验证码,那么在MongoDB里面可以轻松实现过期索引.但这个时间往往不怎么准确. 范例:设置过期索引(实现过期索引 ...
- Qt5_加载DLL
1.QLibrary 加载普通 DLL //写清楚库的路径,如果放在当前工程的目录下,路径为./Oracle.so QLibrary *libOCI = new QLibrary("F:\\ ...
- 《A_Pancers》第二次作业 基于Android系统的音乐播放系统项目开题报告
小组名 N A B C D 总分 Just_Do_IT! 8 8 9 9 8 42 Miracle-House 8 8 7 8 8 39 ymm3 9 8 8 8 8 41 Spring_Four ...
- Android系统广播处理机制
Android系统中的广播是广泛用于应用程序之间通信的一种手段,它类似于事件处理机制,不同的地方就是广播的处理是系统级别的事件处理过程(一般事件处理是控件级别的).在此过程中仍然是离不开Intent对 ...