ESP8266 打造一款物联网产品—搭建环境编译及烧录

  • 2019 年 11 月 2 日
  • 笔记

一 前记

  作为一个在wifi领域耕耘了多年的人,以前一直在外企和大公司做芯片,没有怎么使用过国内的芯片公司做出来的芯片。最近正好有一个项目需要用到一款低成本的wifi芯片,找来找去,发现乐鑫的最适合。就拿来用了。
基本熟悉了一下乐鑫的ESP8266之后,让我感觉到非常的惊讶,居然有国内芯片公司能把文档写的这么详细的。完全不用问任何人,就能把一款芯片跑起来,并且能够快速的上手。这个不是一般公司能够做到的,能够有如此详细文档和生态链的,以前只有意法半导体和NXP这种公司才能做的。
  自己动手编译运行之后,也遇到了一些问题。一个是文档太多,模组的型号太多,很难找到正确的文档。再者,国内使用百度很难搜到乐鑫的官方文档,这样只能在他们官网搜索了,官网搜索功能又太差,很多搜不到。还有就是官网上的资料就是太多,针对某款的芯片和板卡,要费了不少时间才找全的。

  把系统整个功能跑通之后,我就做一个记录,方便后面的朋友吧。

二 环境搭建

  编译环境搭建:
  他们文档上有几种安装方法,一种是源码安装,另外一种是库安装。我刚开始使用的是源码安装,期间,遇到了很多问题,首先是代码太大,在github上下载很难成功。需要比较好的网络,再者,编译会遇到各种依赖库。对程序员的挑战比较大。另外一种是库安装,这种比较方便,笔者建议这种安装方法。

还有就是官方文档用的是linux虚拟机,个人感觉虚拟机开发效率太低了。有个朋友说的好,玩虚拟机linux就如找了一个充气娃娃版的女友,建议你还是最好不要用虚拟机的ubuntu来玩了。

在linux下的安装方法见下面文档:

https://docs.espressif.com/projects/esp8266-rtos-sdk/en/latest/get-started/linux-setup.html

其实,这个文档是很清楚了,但是有几个重点还是要画一下的。

 编译器安装之后一定要测试一下是否安装的是否正确:

第一步任意目录下运行:xtensa-lx106-elf-gcc -v 如下显示才算安装正确。

第二步,确定编译功能是否可以:

在ESP8266_RTOS_SDK/examples/get-started/hello_world 目录下运行: 有elf文件编译出来才算编译成功了。

三 下载运行

  笔者选择的开发板是ESP-Launcher。上榜理由,所有接口都引出来了,乐鑫本公司生产,质量有保证。

板子的网址:这个板子就连淘宝上也是他们自家卖的,看来只能给他们免费做广告了。

https://www.espressif.com/zh-hans/products/hardware/development-boards 

拿到这个板子,瞄上几眼之后,赶紧看一下使用说明,笔者已经帮你找到了:下面网址可在线查看:

https://www.espressif.com/sites/default/files/documentation/esp8266_quick_start_guide_cn.pdf

经过使用,感觉有两个地方后来者要认真看一下:

  第一个是分为boot模式和运行模式的区分:

这两个模式是依靠板子上的一个GPIO来控制的,具体的使用规则乐鑫的视频教材讲解最清楚,网络地址:

https://v.youku.com/v_show/id_XMTY5Nzc5ODEwOA==.html

  第二个就是多GPIO复用,这个板子一个GPIO在不同的地方有引出,看原理图和做东西的时候要注意下,总有一个接口适合你。

具体如下所示:

  有了板子和编译环境,那就好办了,只剩下下载了。官方的windows版本的下载做的非常复杂,让人看了有种眩晕的感觉。笔者这里是在ubuntu下下载的,非常简答,只需要在板子进入下载模式的情况下,源码根目录下执行:make flalsh 即可完成下载:

下载之后,把板子的波码开关拨到正常运行模式。

重新上电,这样就能看到正常的log打印了。