距离我签约古月居已经过去了一个月了,博主因为在这一个月的时间里琐碎的事情非常的多,所以也推迟了我发博客的时间。

古月居这个平台是以ROS起家的,但是我们不能局限于软件,在硬件的学习上也要更上一层楼,所以我今天在这开辟新坑,一步步的去学习ESP8266,也把我前段时间完成的一些有意思的项目分享给大家。

在此,感谢古月居能给我这次机会来向大家分享。

1.简介

这里我们主要用到的是ESP8266EX,这款芯片,拥有有完整的且⾃成体系的 Wi-Fi ⽹络功能,既能够独⽴应⽤,也可以作为从机 搭载于其他主机 MCU 运⾏。

ESP8266EX 集成了天线开关、射频 balun、功率放⼤器、低噪声放⼤器、滤波器和电源管 理模块。这样紧凑的设计仅需极少的外部电路并且能将 PCB 的尺⼨降到最⼩。

TIM截图20200811104352 

图示:ESP8266EX                                       封装:QFN32

2.发展

  • ESP8266EX由乐鑫公司开发,ESP8266模块乐鑫公司也有开发
  • ESP8266模块是由安信可公司开发的基于ESP8266EX整合开发的模块完善了外围器件布局和优化天线,可以方便开发者进行二次开发

3.WiFi的主要特性

  • ⽀持 802.11 b/g/n (HT20)
    • b/g/n分别代表什么?

802.11a/b/g/n,指bai的是无线网络协议,分为802.11a、802.11b、802.11g、802.11n等。这du几种不同的zhi无线协议、都是由802.11演变而来的。

1597048022248-b3516876-736e-4c65-9a69-bd9cb4bf1eaa

    • HT20又代表什么?

11n有两种频宽模式:HT(High Throughput)20和HT40

HT20指的是网络bai中的20M频宽,HT40指的是网络中的40M频宽。

HT20是出于du兼容性考虑:比如,一个区域内zhi存在802.11b/g信号,那么为dao了尽量减少对它们的干扰,需要设定为HT20,以减少频带的重叠。

HT40是出于高性能考虑:HT40将两个相邻的20MHz信道捆绑在一起形成一个40MHz的信道,一个是主,一个是辅。主信道发送beacon报文和部分数据报文,辅信道发送其他报文。

  • 802.11 n (2.4 GHz),速度⾼达 72.2 Mbps

在这里为我自己给Mbps做个注释:

Mbps等同于Mbit/s

1Mbps=0.125MB/s

按这个来换算的话,官方给出的最高速度是9MB/s

  • 重组 (defragmentation)
  • 2 x 虚拟 Wi-Fi 接⼝

虚拟Wifi等同于热点吧,可以给别的设备单独搭建一个网络

  • Beacon ⾃动监测(硬件 TSF)
  • ⽀持基础结构型⽹络 (Infrastructure BSS) Station 模式/SoftAP 模式/混杂模式
    • (1)SoftAP模式(软路由模式)
      • 模块本身相当于一个路由器,其他设备可链接到该模块发送的信号,主要应用在主从设备的主机部分。 
    • (2)station模式(客户端模式)
      • 模块相当于一个客户端,可以链接到其他路由器发出的WIFI信号。主要应用在网络通信中。 
    • (3)SoftAP+station共存模式(混合模式)
      • 模块可在与其他设备链接的同时充当路由器,结合上面两种模式的综合应用,一般可应用在需要网络通信且在主从关系中的主机。 

4.整合后的模组

型号

ESP-01E ESP-01S ESP-01M ESP-07S ESP-12L ESP-12F ESP-12S

封装

DIP-18 DIP-8 DIP-18 SMD-16 SMD-16 SMD-22 SMD-16
尺寸(mm) 18*17*2.8 24.7*14.4*11.0 18*18*2.8 17.0*16.0*3.0 24.0*16.0*3.0 24.0*16.0*3.0 24.0*16.0*3.0

板层

4 2 4 4 2 4 4
Flash 8Mbit/16Mbit 8Mbit 8Mbit/16Mbit 32Mbit 32Mbit 32Mbit 32Mbit
已认证 FCC、CE - FCC、CE、SRRC、REACH、RoHS FCC、CE、REACH、RoHS、SRRC SRRC、FCC、CE、RoHS FCC、CE、IC、SRRC、KCC、NCC、TELEC、ANATEL、REACH、RoHS FCC、SRRC、CE、RoHS
天线 IPEX天线 PCB天线 PCB天线 IPEX天线 PCB天线 PCB天线 PCB天线
指示灯 - GPIO2 - - GPIO2 GPIO2 GPIO2
可用IO数 11 2 11 9 9 9 9

5.选择ESP8266的原因

1.便宜

ESP8266芯片大概人民币5元左右,模组10元左右。某宝上有些店铺的ESP模块价格非常低,之前买过5元一个的ESP-12F,这么低的价格还要什么自行车。

2.高性能

一般而言,Wi-Fi的传输距离多在100米左右,而在乐鑫官方微信曾推出一篇文章:ESP8266 Wi-Fi 到底传多远 中有分享来自德国的 AReResearch 的测试视频(Youtube),选用的是 NodeMCU 开发板,测试: 空旷 300m 以内可以保持可靠的连接,超过400m时会信号丢失。

这样的测试视频在网上广为流传,使很多就算没听过、没买过ESP8266的人,也开始知道世上有这玩意,知名度大大提升。

3.便利的开发环境

ESP8266SKD的开发环境有很多,官方的开发环境配置还比较复杂,但是其方案商安可信出品 的集成开发环境ESP8266 IDE2.0,后续Arduino IDE也支持ESP8266(博主使用VScode开发ESP8266,为什么呢?下期再告诉大家),使其程序开发进入门槛大幅降低。

另一方面其开发语言的支持丰富:

NodeMCU项目可以用Lua语言来开发ESP8266控制程序

MicroPython项目可以用Python语言开发ESP8266控制程序

Smart.js项目可以用Java语言来开发ESP8266控制程序

Forth、LISP、Apple BASIC······

进一步降低开发门槛,让更多的软件人员加入到这个行业来。

4.丰富的板卡支持

各供应商推出ESP8266的模组、板卡,使其应用更快捷。如国内安信可推出一系列不同功能的ESP8266模组,Seeed Studio的Wio Link,不同方案商推出的ESP8266开发板(如nodeMCU等)等;国外知名创客供商Adafruit、SparkFun也推出ESP8266板卡。更别提很多工程事自己做的ESP8266模块、开发板。

5.非常活跃的开发者社群

不论官方或非官方的开发者社群,都相当活跃的在分享和讨论,其丰富的开发资源正是印证了这一点。而乐鑫则能通过这样一群活跃的开发者,收集到更多用户需求,研发出更优秀的产品(乐鑫新发布的ESP32 Wi-Fi + 蓝牙双模芯片更是引起行业轰动)。

6.总结

古月居作为一个机器人的社区,我们作为社区的作者,应该把社区的涉及的范围做大、做远。这样能吸引到更多的读者。

本章作为ESP8266的开坑章,博主要带给大家的是丰厚的知识和实操经验。希望能给ESP8266这个大家庭添砖加瓦。接下来就让我们走进基于Arduino开发的ESP8266世界。