ESP8266真会是Arduino Killer么?

两则新闻:

-----------

1)前不久刚看见Arduino中国网站放出的新闻,说和ESP8266的原厂乐鑫已经达成合作,以后新产品估计就不用原来那个死贵的Wi-Fi shield,而直接上乐鑫的Wi-Fi芯片了。

http://arduino.org.cn/blog/1-the-new-blog/arduino-releases-several-new-upgrade-products

[升级版Uno Pro是Arduino与全球知名Wifi芯片厂商乐鑫[Espresif]联手为广大中国创客推出的全新升级产品,在原Arduino Uno上内嵌了WiFi,并且通过Arduino 最新的物联网函数库Ciao(桥)让众多创客可以轻松在他们的创意上加入物联网功能。Arduino Uno中文版也将同步发售,这款中国版产品只在中国大陆地区进行销售,价格也一改往日,非常亲民。 ]  (此新闻稿把乐鑫的名字也打错了,应该是Espressif,看来两者还不是真爱/还有那个Ciao会让我想到Cao,只是我一个人这样想么?)

-----------

2)今天一大早起来看见篇文章,标题好惊悚  [ Meet the Arduino Killer: ESP8266]

http://www.makeuseof.com/tag/meet-arduino-killer-esp8266/

-----------

人家刚要相亲相爱,你们标题党就冒出来写killer这么吓人的文章,真的好么?

看不懂英文的,我就和你说下概要,大意就是NodeMCU怎么怎么好用,本来推广时的一个卖点就是可以替代Arduino原来死贵的40刀的Wi-Fi Shield,后来手痒的骇客们突然醒悟,这板子直接就可以替代Arduino 的板子呀?干嘛还要加在arduino上面?脱裤子放屁多此一举嘛!再有那等高人,直接就把Arduino IDE搞到NodeMCU上面去了,开发怎么怎么爽歪歪!

这文章看上去像是NodeMCU的歪果仁粉丝写的,但没搞清楚ESP8266 / ESP-12E / NodeMCU之间的关系,所以里面名词就有点乱乱的。

我来给大家理一下思路哦:

ESP8266: Wi-Fi芯片,原厂是乐鑫Espressif, 官网在www.espressif.com,官方有个技术论坛bbs.espressif.com 要找啥官方的SDK啦文档啦都去那里翻,专门有个板块叫SDK,还有个板块叫document,技术支持邮箱是feedback@espresif.com,找文档找不到还可以写邮件给docs@espressif.com


ESP-12E: 模组商安信可出品的使用ESP8266芯片的Wi-Fi模组。安信可很早就开始推广ESP8266芯片,据我所知当时SDK的版本号还是0.6 (现在已经是1.4了)。

安信可继承了中国伟大的人海战术精神,一上来就搞了ESP-01/02/03...../11,整整11款模组,所以现在在海外一些论坛能发现11个的全家福,其实芯片都是一样的,就是模组的尺寸有点不同,有的没天线,有的陶瓷天线,有的板载天线。结果把大家都搞晕了,还以为是一代代升级出来的。其中又以ESP-01和ESP-07最为有名,但后来12出来以后,07就没落了,现在海外最火的是01和12。

后来又整出了ESP-12,  ESP-13,ESP-14, 12里面还有12E,12F。 据我所知12F的性能比较好,在制造工艺上有所长进。

ESP-14比较特别,和其他兄弟模组不一样,多了一颗STM8的MCU,所以天生就是给那些只想用AT指令开发的用户的。

因为ESP8266自带一颗32位的MCU,所以有些有能力的开发者都直接用ESP8266自带的MCU了,不再使用外接MCU,但这个MCU和其他MCU比最大的硬伤就是I/O不够,所以简单的应用可行,复杂点的还是要靠外接MCU。

提到模组,额外再多说一句,乐鑫自己也出了款模组ESP-WROOM-02,这个是公版参考设计,PCB之类都在bbs上公开的,大家尽管抄没有关系。这个模组过了一堆认证,FCC/CE/TELEC/KCC。。。。现在总是在日本网站上看到有人在卖,国内销售大概比较少,不太看见。毕竟人家原厂,也不接受定制,给个参考设计意思一下。不过话说回来,自从看到原厂模组出来以后,觉得安信可模组的品质是上去了不少,12F什么比原来一窝兄弟靠谱多了。  

对了,安信可的网站 www.ai-thinker.com, 论坛 bbs.ai-thinker.com

现在业内还有一些其他模组商,都是各自做自己原有的商业客户渠道,不是针对Maker玩家市场的,所以都比较低调,不像安信可在Maker市场那么有名。


NodeMCU:又是一伙新的团队,把lua语言移植到了ESP8266上,网站是nodemcu.com,创立最初是说想要打造Arduino一样的开源硬件,所以自己有硬件,还有自己lua语言的固件。 但这孩子命不太好,ESP8266内部资源有限,最初留给用户的才35KB SRAM,NodeMCU的固件跑着跑着就内存不足了,所以一直没发展起来。后来乐鑫的SDK升级优化,现在留给用户SRAM上升到50KB了,NodeMCU才重新又有些起色,但整个发展时机错过了,市场眼球都被其他固件吸引过去了,Arduino IDE冒出来支持ESP8266之后,就更加竞争困难。反而那个硬件小板子一直很受欢迎,大家都买去做ESP8266的开发板用, NodeMCU委托的生产商也是安信可,所以上面自带了ESP-12E ,没有另外再设计模组。这款硬件设计的很不错,比原厂的开发板小,且便宜很多。

最近乐鑫原厂放消息说新款芯片ESP32即将上市,双核32位MCU,Wi-Fi+BLE Combo,内存大很多,约有400KB了,且I/O大量增加,凭着NodeMCU在创客届以往的表现,应该会在这款新芯片上有所作为。

----------

最后回归标题,应该说NodeMCU会不会是Arduino的Killer,而不是ESP8266会不会是Arduino Killer,Arduino也将会用ESP8266,这一场恋爱,是相爱相杀呢,还是在开源硬件世界里创造新的天地。NodeMCU目前离Arduino的影响力还尚远,但随着新一代ESP 32芯片的诞生,如果NodeMCU能把双核32位MCU+WI-FI+BLE的SoC玩耍的极为出色,再加上自身Lua语言的简便易学,应该会把一批原来不擅长嵌入式开发的玩家带进这个世界成为战斗主力军。Arduino确实势力强大,但新世代的打法是在你的战场打不赢你没关系,我另开一个战场开打呗。


  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: ESP8266 WiFi 模块是一种低成本的 WiFi 模块,可以在很多微控制器平台上使用,比如 Arduino。 使用 ESP8266 WiFi 模块和 Arduino 连接 WiFi 的步骤如下: 1. 将 ESP8266 WiFi 模块连接到 Arduino 板上。 2.下载并安装 ESP8266 Arduino 驱动程序。 3. 使用 Arduino IDE 打开新的项目,选择板类型为 "Generic ESP8266 Module"。 4. 使用 Arduino IDE 编写代码,使用 WiFi 库来连接 WiFi 网络。 5. 上传代码到 Arduino 板上。 6. 使用串口监视器调试连接状态,检查连接是否成功。 还需注意,需要先配置好 ESP8266 的 AT 命令模式才能与 Arduino 进行通信。 ### 回答2: ESP8266是一款基于WiFi的芯片,具有成本低廉、小巧易用等特点,ArduinoESP8266结合起来,可以实现与网络无线交互。 首先,我们需要准备一块Arduino开发板和一款ESP8266模块。将ESP8266模块插入到Arduino板上时,需要先将模块中的的VCC接到Arduino板的3.3V,然后将GND接到Arduino板上的GND,最后将TXD和RXD引脚分别连接到Arduino板上的2号和3号引脚。 接下来,需要在Arduino IDE中导入ESP8266的库文件。在菜单栏中选择"Sketch-> Include Library-> Manage Libraries",在搜索框中输入ESP8266,选择并安装相应的库文件即可。 在Arduino IDE中,可以通过Serial Monitor调试ESP8266模块。首先需要上传一个简单的代码,例如: ``` void setup() { Serial.begin(115200); } void loop() { if (Serial.available()){ Serial.write(Serial.read()); } } ``` 该代码可以实现将串口中访问的任何数据都输出到串口中。 然后,需要将波特率设置为115200,并打开串口监视器。在串口监视器中,点击“Both NL&CR”按钮,最后点击“Connect”即可进行调试。 接下来,可以使用WiFi模块进行网络连接。首先需要设置WiFi模块的SSID和密码,代码如下: ``` #include <ESP8266WiFi.h> const char* ssid = "YourSSID"; const char* password = "YourPass"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); ``` WiFi.begin()函数可以用来启动WiFi连接。一旦连接成功,可以通过WiFi.localIP()获取本地IP地址。 这样,我们就完成了ESP8266WiFi模块教程的学习和实践。通过简单的代码实现了ESP8266Arduino的连接,以及WiFi模块的网络连接。我们可以将其应用到实际项目中,实现与网络的无线交互。 ### 回答3: ESP8266是一款廉价、易用、高性能的WiFi模块,特别适合于物联网应用。它能够快速地与局域网无线通信,而且支持TCP/UDP等网络协议。这款模块的操作相对来说比较简单,因此很适用于初学者学习和使用。 接下来我们将介绍基于ArduinoESP8266WiFi模块教程: 一、准备工作 需要准备的物品:Arduino开发板、ESP8266模块、LED、杜邦线。 二、连接电路 将ESP8266连接到Arduino开发板上,由于模块与电脑USB口之间的电流不足,所以建议用一个适配器将它们连接在一起。接下来,将杜邦线连接到ESP8266模块的GND、VCC、EN、RX、TX、GPIO2等引脚,再把LED连接到开发板的5V和数字引脚上。 三、代码编写 这里我们使用Arduino IDE编写代码,需要将Arduino IDE的版本升级到1.6.4以上才可以支持ESP8266。代码中需要添加ESP8266WiFi库,因为这个库包含了所有的API、数据类型和常量,可以进行ESP8266 WiFi模块的交互。 代码范例: #include <ESP8266WiFi.h> const char* ssid = "你的WiFi名称"; const char* password = "你的WiFi密码"; void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("正在连接WiFi.."); } Serial.println("已连接上WiFi.."); } void loop() { digitalWrite(LED_BUILTIN, HIGH); delay(1000); digitalWrite(LED_BUILTIN, LOW); delay(1000); } 四、上传和调试 将编写好的代码上传到Arduino开发板上,可以通过串口监视器显示输出信息,同时也可以观察LED的灯光变化。在串口监视器中可以看到连接成功提示,表示ESP8266WiFi模块已经成功连接到WiFi网络。此时可以通过其他方法控制LED的闪烁,可以实现更多的应用和功能。 总之,ESP8266WiFi模块作为当前较为热门的物联网应用模块之一,它具有使用方便、功能强大、性价比高的特点,对于学习物联网、快速搭建智能家居等应用场景非常适用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值