esp8266教程:开发方式和SDK选择

esp8266教程:开发方式和SDK选择

两种开发开发方式

在esp8266中有一般有两种开发方式,分别是一种是一个MCU当主控ESP8266当一个wifi模块进行使用,即MCU+ESP8266,一种是ESP8266当主控只需要一颗芯片。

STM+ESP8266

在这里插入图片描述

一种是将esp8266当成wifi模块进行使用,比如常用的有STM32+esp8266,它们之间使用uart(串口)进行连接,STM32作为主控,esp8266作为wifi从机模块,然后使用AT指令进行交互。

ESP8266当主控

在这里插入图片描述

另一种直接拿到官方的esp8266的SDK进行开发,把esp8266当成一个主控的MCU,然后在esp8266芯片外围添加控制电路,比如我们使用ESP8266制作一个智能插座,就需要在外围电路添加继电器然后控制继电器达控制家用220V电路开关的效果。

优缺点

STM32+ESP8266优点:
1、esp8266因为是当成一个模块使用,esp8266的软件不用开发,只需要简单的AT指令控制即可。
2、易于剪裁esp8266可以当成一个产品高端和低端区别,比如高端的产品有wifi功能那就扩展一个wifi模块,低端的产品没有wifi就不加模块。
STM32+ESP8266缺点:
1、如果只是做一个简单的功能,比如智能插座,STM+ESP8266这个方案成本过高,ESP8266使用一个芯片+一个继电器,使用官方的SDK进行开发就可以省下一个STM32单片机。
2、在有功耗要求的的方案上,多一颗芯片STM32所需要的功耗就会大一点,如果只有ESP8266就能省下更多的电量,续航更久,比如在wifi智能锁上,少一颗芯片智能锁的续航就更久。

单独使用ESP8266优点:
1、省成本,省电。
单独使用ESP8266缺点:
1、需要在SDK上开发软件,如果是没有使用过这个芯片的开发者陌生感,内心抵触使用新的芯片。

SDK选择

ESP8266官方的sdk有两种,一种是带操作系统的版本,一种是没有操作系统的版本。分别为ESP8266_RTOS_SDK和ESP8266 Non-OS SDK,其中使用操作系统的版本使用的是开源的freeRTOS,如果你是初学者,没有使用过freeRTOS,那么我建议是开始使用带操作系统的版本,这样你还可以学习一下RTOS的知识,RTOS现在在产品上使用越来越广泛了,如果现在你出去面试,人家问你有没有使用过RTOS,那么你的竞争力就下一截了。如果你是老手学过RTOS,那就不需要我劝你了,你一定会选择RTOS进行开发的。

arduino 方式的开发

ESP8266已经被arduino官方加入了他们的支持平台,所以一些创客爱好者可能会使用arduino的方式进行开发。什么是arduino的开发方式,就是arduino这个组织写了底层硬件的库,大家可以使用arduino的方式去掉用人家写好的库,然后使用arduino的语法进行编程,就可以控制i2c、gpio、wifi等。但是我不建议大家使用这种方式去学习esp8266。1、因为学习esp8266是想进入嵌入式软件开发这个行业,这个行业都是使用C语言进行开发,arduino的方式不是主流。2、arduino的编程方式不够灵活,毕竟是在人家写好的库上面进行开发,有些功能arduino可能还没有实现,但是我们现实的需求中有这个需求就无法实现,产品的竞争力就不强。
我们现实的需求中有这个需求就无法实现,产品的竞争力就不强。
综上所述,如果你是想当个创客玩玩,可以使用arduino的方式的学习esp8266,但是如果你想当一个iot的开发者,或者说进入嵌入式软件这个行业,我建议你还是使用官方的SDK+C语言的方式进行开发。

总结

SDK选择 FreeRTOS版本 Non-OS arduino方式
是否推荐 推荐 不推荐 不推荐

猜你喜欢

转载自blog.csdn.net/qq_27809619/article/details/116748825
今日推荐