轻松使用8266

简介: 今天算是做好了板子啦!做了一块直接用串口配置8266的板子,,也可以无线配置,配置完一次,上电自动运行...这篇文章也是写给一个朋友看的,朋友的项目做了很长时间了,遇到了AT指令的问题....我在学习了用lua开发后就渐渐摒弃了AT指令了,,,,,因为用lua开发方便快捷,大部分功能直接用lua写入芯片内部.

今天算是做好了板子啦!做了一块直接用串口配置8266的板子,,也可以无线配置,配置完一次,上电自动运行...这篇文章也是写给一个朋友看的,朋友的项目做了很长时间了,遇到了AT指令的问题....我在学习了用lua开发后就渐渐摒弃了AT指令了,,,,,因为用lua开发方便快捷,大部分功能直接用lua写入芯片内部.....配置好以后都是网络数据自动发送到串口,,,串口数据自动发送到网络

配合了历程....

 

安排上呢

一, ESP8266下载和刷固件(Lua开发----体验一下lua开发的魅力所在)

二, 控制一个灯亮灭

三, TCP服务器

四, TCP客户端

五, UDP

六, 文件操作(保存数据到8266内部)

七, 外设操作(SPI,ADC)

八, 再说......

写完一篇就更新一篇

用AT指令版本的

一,  http://www.cnblogs.com/yangfengwu/p/5205570.html    发AT指令,,其实AT指令就是事先用SDK内部写好了

二,  http://www.cnblogs.com/yangfengwu/p/5295632.html    这个呢是配合路由器实现远程,,其实可以买个域名,或者用云端

三,  http://www.cnblogs.com/yangfengwu/p/5220919.html   这是做了一个用手机控制的WIFI小车

 

用LUA语言的,更灵活,功能更强

一   http://www.cnblogs.com/yangfengwu/p/7514336.html      下载自己选择功能的固件,刷固件,写LUA的软件

二    http://www.cnblogs.com/yangfengwu/p/7520260.html     GPIO,串口,注意事项,空闲中断

三    http://www.cnblogs.com/yangfengwu/p/7524297.html      SPI通信介绍,,STM32 SPI 从机

四    http://www.cnblogs.com/yangfengwu/p/7524326.html      TCP服务器,单个连接

五    http://www.cnblogs.com/yangfengwu/p/7531730.html      TCP服务器,多个客户端连接,CRC校验

六    http://www.cnblogs.com/yangfengwu/p/7533302.html       TCP Client 断开自动重连,AD采集

七    http://www.cnblogs.com/yangfengwu/p/7533845.html      UDP支持一路默认,3路动态连接,ssid 与 pwd 的读取

八  http://www.cnblogs.com/yangfengwu/p/7534521.html       文件保存数据

Android 软件

一,  http://www.cnblogs.com/yangfengwu/p/5212570.html    Android TCP客户端

二,  http://www.cnblogs.com/yangfengwu/p/5294921.html    Android TCP服务器

 

 

先说做了一个什么东西:先看板子

 

 

上位机配置软件

现在先用串口配置

连接

或者

 先说一下各配置选项

一,

这是设置模块的工作模式AP   Station   和AP+Station  

二,

 作为TCP服务器的时候,端口号为监听的端口号(支持最多4个客户端同时连接通信,,,如果再有连接会循环断开原先的连接)

作为TCP客户端的时候......IP地址是模块连接的服务器的IP地址,,端口号是模块连接的服务器的端口号

UDP收发的时候,,,,,,我设置的最多可以同时和7个UDP通信....上面设置的IP地址和端口号是模块默认一直通信的一个(信息总会发向这一个),,,,,,

其余的六个呢是后面又连接的六个,,如果已经连接六个了,再有连接会断开这六个连接中的最先连接的那个,然后就是循环这样子

对了上面的端口号也是内部UDP监听的端口号

三,

 

 这是设置模块连接的路由器名称和密码 和 模块为AP模式时的wifi名称和密码

关于密码,,,如果设置的密码小于8位或者大于16位就会当成没有密码(模块内部是这样的)

三,

 

设置模块在AP模式下的IP地址,,子网掩码,,和默认网关

设置模块在Station模式下连接路由器后的IP地址,,子网掩码,,和默认网关(也就是可以固定IP地址)

 

 四,

设置和读取各引脚状态

本来呢加了引脚的SPI功能,,没想到啥都想好了就是没想到写的模块的内存不够了.............所以就去掉了SPI功能,,只做普通的GPIO使用

所以其实自己也倍感伤心,,为了内存的原因重写了好几遍程序.............

五,

可以通过连接模块的无线来配置模块,,,不仅如此哈,自己还做了手机APP来配置模块

            

本打算昨天就写好APP了,,,,可是呢因为布局嵌套出现了问题,,,所以就只能推迟两三天了..............

 

 

进入正题,,先用串口方式配置模块为TCP服务器

 

 这个先不设置,先按照默认的,,,其实很有用,,,,待会再设置(是为了固定IP)

 

 然后点击

   

 

 还可以发送命令查看

命令是++MDIP?

 可以固定住模块连接路由器后分得的IP

如果没有连接路由器的IP会回复 +STAIP:nil

 软件正好是TCP客户端

 

 现在测试发送数据

 

 现在测试多个连接

 

 客户端发给服务器

 

 

 

 

服务器发给客户端

 

 

 现在再连接两个,超过四个会自动断开第一个连接,,意思就是腾出个位置

 对了客户端断开的时候会有提示

 

 现在固定IP

我让模块连接路由器后的IP是192.168.1.123

 

 

 

 这样就能防止分得的IP会变了,通信的时候

 在AP+Station模式下好处就是连接模块的无线进行通信

 

模块默认默认默认默认的IP是192.168.4.1......当然如果必要也可以设置

 

 

好了看TCP Client

我用电脑的TCP软件建立的服务器,,我的电脑的ip是192.168.1.103

 

模块是断线自动重连

亲们自己体验吧

 

 

再看UDP

模块默认会把数据发给192.168.1.103,的8080端口,,自己监听的也是8080端口

现在看一下模块是不是默认发给指定的ip和端口号

现在让另一个UDP把数据发给模块,,这样的话模块就记录了这个UDP的IP地址和端口号,,,那么数据也能发给它了

 

现在让模块再发数据,,两个UDP都会接收到数据

 

亲们可以自己去测试好多个UDP连接哈,,,,,,和TCP Sever一样会循环断开.............

用这个地方来控制板子上的继电器和各个引脚吧!!

协议

++MD61(1代表输出高电平,0代表输出低电平) 0 (0-控制继电器,1-CS引脚,2-MOSI引脚,3--MISO引脚,4--CLK引脚)

 

 

 

 

好了现在用无线配置

为了快捷起见我加了一个按钮

 

这样的话,如果忘记了自己配置的了或者因为特殊情况无法和模块进行串口通信了(没带电脑,,没有串口模块),而我想配置...

点击着左上角的那个按钮然后断电上电或者按一下复位

然后呢连接模块的无线

 

                 

然后就去配置把

上面说没带电脑但是一定要带个手机哈,,,,,,APP两三天后做好吧,,,,,,,,,,

实物在这

https://item.taobao.com/item.htm?spm=0.7095261.0.0.67c286e3NS59Y&id=558508797404

上位机软件

链接:http://pan.baidu.com/s/1i4PqzuX 密码:7bhc

 

最后附一张部分协议

 

注意亲们的数据不要以++MD开头,因为这样的数据会被当成命令而不发向串口或者网络

 

                                 发送                    回复

读取AD值          ++MD9            ++MDAD=132     真实电压=132/1024

 

置低继电器引脚       ++MD600          OK

置低CS引脚               ++MD601          OK

置低MOSI引脚           ++MD602          OK

置低MISO引脚           ++MD603          OK

置低CLK引脚             ++MD604          OK 

 

置高继电器引脚         ++MD610          OK

置高CS引脚               ++MD611          OK

置高MOSI引脚           ++MD612          OK

置高MISO引脚           ++MD613          OK

置高CLK引脚              ++MD614          OK

 

读取继电器引脚      ++MD80          ++MDIO0=1(/0)  (1代表高电平,0代表低电平)

读取CS引脚            ++MD81          ++MDIO1=1(/0)  (1代表高电平,0代表低电平)

读取MOSI引脚        ++MD82          ++MDIO2=1(/0)  (1代表高电平,0代表低电平)

读取MISO引脚        ++MD83          ++MDIO3=1(/0)  (1代表高电平,0代表低电平)

读取CLK引脚          ++MD84          ++MDIO4=1(/0)  (1代表高电平,0代表低电平)

 

读取模块的IP地址    ++MDIP?       +APIP:192.168.4.1(自身的IP)                                    

                                                       +STAIP:192.168.1.123 (连接路由器后分得的IP,没有则回复+STAIP:nil)          

 

复位重启模块        ++MDA(CRC16校验) 或以16进制发送 2B 2B 4D 44 41 4E C5

其余的指令哈我直接提供源码,,亲们自己在程序中看

 

目录
相关文章
|
Web App开发 移动开发 编解码
melonJS 2 - 全新轻量级 2D 开源游戏引擎,采用现代化构建
介绍一个采用 ES6 重建的开源前端游戏框架。
|
7天前
|
NoSQL Cloud Native Redis
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
阿里云瑶池数据库团队后续将持续参与Valkey社区,如过往在Redis社区一样耕耘,为开源社区作出持续贡献。
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
|
7天前
|
关系型数据库 分布式数据库 数据库
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
PolarDB分布式版助力《香肠派对》实现百亿好友关系20万QPS的毫秒级查询。
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
|
8天前
|
消息中间件 Cloud Native Serverless
RocketMQ 事件驱动:云时代的事件驱动有啥不同?
本文深入探讨了云时代 EDA 的新内涵及它在云时代再次流行的主要驱动力,包括技术驱动力和商业驱动力,随后重点介绍了 RocketMQ 5.0 推出的子产品 EventBridge,并通过几个云时代事件驱动的典型案例,进一步叙述了云时代事件驱动的常见场景和最佳实践。
115060 1
|
9天前
|
弹性计算 安全 API
访问控制(RAM)|云上安全使用AccessKey的最佳实践
集中管控AK/SK的生命周期,可以极大降低AK/SK管理和使用成本,同时通过加密和轮转的方式,保证AK/SK的安全使用,本次分享为您介绍产品原理,以及具体的使用步骤。
101832 3
|
8天前
|
自然语言处理 Cloud Native Serverless
通义灵码牵手阿里云函数计算 FC ,打造智能编码新体验
近日,通义灵码正式进驻函数计算 FC WebIDE,让使用函数计算产品的开发者在其熟悉的云端集成开发环境中,无需再次登录即可使用通义灵码的智能编程能力,实现开发效率与代码质量的双重提升。
95408 2
|
5天前
|
物联网 PyTorch 测试技术
手把手教你捏一个自己的Agent
Modelscope AgentFabric是一个基于ModelScope-Agent的交互式智能体应用,用于方便地创建针对各种现实应用量身定制智能体,目前已经在生产级别落地。
|
1天前
|
NoSQL Java Redis
使用Redis实例搭建网上商城的商品相关性分析程序
本教程将指导您如何快速创建实例并搭建网上商城的商品相关性分析程序。(ApsaraDB for Redis)是兼容开源Redis协议标准的数据库服务,基于双机热备架构及集群架构,可满足高吞吐、低延迟及弹性变配等业务需求。
17082 0
Doodle Jump — 使用Flutter&Flame开发游戏真不错!
用Flutter&Flame开发游戏是一种什么体验?最近网上冲浪的时候,我偶然发现了一个国外的游戏网站,类似于国内的4399。在浏览时,我遇到了一款经典的小游戏:Doodle Jump...
112745 12
|
13天前
|
SQL 存储 JSON
Flink+Paimon+Hologres 构建实时湖仓数据分析
本文整理自阿里云高级专家喻良,在 Flink Forward Asia 2023 主会场的分享。
71378 1
Flink+Paimon+Hologres 构建实时湖仓数据分析

热门文章

最新文章