物联网开发系列—ESP8266开发(一)环境搭建
前言
这几年物联网、车联网的发展十分迅速,许多厂商都推出了自己的物联网平台,包括华为云,阿里云以及移动的OneNET平台等等。Iot技术确实推动着人类社会生活朝着更加智能的方向发展,这给我们带来了许多好处,使我们的生活更加方便。
所谓物联网,也就是万物互联,在这其中,网络才是整个的关键。由此,许多芯片厂商也推出了集成了wifi、蓝牙等通信功能的MCU用于物联网技术。其中有华为海思的Hi3681、Hi3518系列,乐鑫科技的ESP8266、ESP32系列等
开发板介绍
本文主要介绍我的ESP8266的小e开发体验板,记得这是我大一时买的(好像物联网被炒得很火的也就是16、17那几年吧),那时候10块钱一个,还算便宜。这个板子长的是下面这个样子。

焊在洞洞板上主要是为了方便开发。
这块板子采用的是ESP-12F,内置Tensilica L106 32 bit 低功耗微控制器,26MHz晶振,系统80Mhz运行频率,最高可配置为160MHz,模块带32Mbit FLASH, 即4MB, 用于存放系统参数、用户代码、用户数据,外围总线包括UART/SDIO/SPI/I2C/I2S/IR 遥控 GPIO/ADC/PWM/LED Light & Button,详情请看ESP文档。同时这块开发板上集成了一个光敏电阻以及一个RGB呼吸灯。硬件原理图如下

开发环境
开发esp8266,首先第一步要下载官方提供的SDK,在官方SDK的基础上进行用户个人的二次开发,必要时可以修改官方SDK以满足自己的需求。官方提供了两种SDK,一种是无操作系统的SDK(ESP8266_NONOS_SDK),另一种是基于RTOS的SDK(ESP8266_RTOS_SDK)。目前,官方推荐使用新版ESP8266_RTOS_SDK作为开发环境,因为使用ESP8266_RTOS_SDK能够更好地支持ESP各个系列的开发(包括ESP32等)。原话:可帮助客户避免对单一 SDK 的依赖,允许客户应用程序同时兼容多款乐鑫芯片,包括 ESP8266 系列、ESP32 系列以及未来发布的新产品。因此,本文使用ESP8266_RTOS_SDK作为开发环境。通过下面的指令从github上下载ESP8266_RTOS_SDK或者从gitee上下载。
git clone https://github.com/espressif/ESP8266_RTOS_SDK
或者
git clone https://gitee.com/yesterdai/ESP8266_RTOS_SDK
Windows下开发:
-
1、安装虚拟机(vitualBox或Vmstation),官方提供了用于开发ESP8266的镜像文件,具体下载地址见参考文档 3.3节
-
2、不安装虚拟机,参考在线文档espressif-windows
Ubuntu下开发
主要参考这篇官方在线文档 espressif-linux
主要就两个操作:
- 1、下载编译工具链;
- 2、配置环境变量
- 3、安装python依赖包
至于修改ttyUSB0的权限,在烧录的时候才会用到,否则你连usb都没插就执行,是会报错的。
整个ESP8266的环境搭建就介绍到这里,主要还是参考官方文档,并不难。实在还有问题可以评论区见。
编译烧写hello_world工程
在git clone的目录中,有一个examples文件夹,里面有许多官方实现的例子,包括许多协议的实现,比如mqtt、http等。作为新手,我们先实现串口输出hello_world。
首先将get-started文件夹下的hello_world文件夹复制到ESP8266_RTOS_SDK文件夹下,并经如hello_world文件夹。
cd hello_world
make menuconfig
会出现如下图

这里面包含了对系统的各种配置,用图形化的方式简化了配置流程,这个部分值得研究。
目前,我们主要对Serial flasher config 进行配置,更具自己开发办的情况进行配置。我的配置如下

配置完成后保存退出
- 1、编译,在hello_world文件夹下执行
make all
系统会编译工程生成bin文件 - 2、烧录,首先插上USB并使ESP8266处于下载模式(需将GPIO0置0上电),接着执行
sudo chmod -R 777 /dev/ttyUSB0获取USB访问权限,最后在hello_world文件夹下执行make flash进行烧写。 - 3、串口信息查看,执行
make monitor查看串口输出系统信息以及hello world。
到此,大功告成。接下来,我们可以通过官方提供的各种例子进行学习,目前正在学习mqtt协议,有机会再分享。
致谢
感谢各位不耐烦地看到这里,salute。
本文介绍了物联网芯片ESP8266的开发环境搭建,包括选择使用ESP8266_RTOS_SDK,详细讲解了在Windows和Ubuntu下的开发步骤,如下载SDK、配置环境、编译及烧录hello_world程序,为初学者提供了清晰的指导。

1052

被折叠的 条评论
为什么被折叠?



