![[ESP8266]用Win10子系统Ubuntu来开发ESP8266](https://zouyingzheng.com/zb_users/theme/os_2019/static/images/article-default-cover.jpg)
[ESP8266]用Win10子系统Ubuntu来开发ESP8266
这次我们来尝试使用Win10的子系统Ubuntu来开发ESP8266,同理的ESP32也可以如此开发.
安装Ubuntu,此处不再赘述.
第一步:启动Ubuntu终端
点击开始,找到这个磁贴点击运行即可,除此之外,你还可以在任意CMD处输入bash回车也可进入子系统
第二步:搭建开发环境
先安装必要程序/组件
$ sudo apt-get install make unrar-free autoconf automake libtool gcc g++ gperf flex bison texinfo gawk ncurses-dev libexpat-dev python-dev python python-serial sed git unzip bash help2man wget bzip2
完成后,随便找个地方创建一个文件夹,这个文件夹放置我们的ESP8266开发相关的(例程使用用户目录~)
$ mkdir ESP8266
这里创建了一个文件夹,名字是ESP8266
$ cd ESP8266
进入该文件夹
按照编译工具,SDK,工程源码分离的思想来创建三个文件夹
准备下载的交叉编译工具链文件夹
打开网页https://github.com/espressif/ESP8266_RTOS_SDK
乐鑫的Github的ESP8266-RTOS项目底部有交叉编译工具链的下载链接
右键复制下来这个链接即可.
https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
这是撰稿当日的交叉工具链的版本
回到终端在之前创建的文件夹目录下输入 后面的链接为之前右键复制的链接
$ wget https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
下载成功后,输入ls可以看到下载的tar.gz文件
继续在此输入
$ tar -xzf xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
解压后,在之前创建的ESP8266目录下就多了xtensa-lx106-elf,这个目录就是存放交叉编译工具链的目录
拉取RTOS-SDK
在ESP8266目录下运行git clone指令,完成拉取ESP8266最新RTOS-SDK
$ git clone https://github.com/espressif/ESP8266_RTOS_SDK.git
完成后 工作目录下就多了一个ESP8266_RTOS_SDK文件夹了
进入该目录
编辑 Kconfig
找到
default "xtensa-lx106-elf-" if TARGET_PLATFORM_ESP8266
改为
default "~/ESP8266/xtensa-lx106-elf/bin/xtensa-lx106-elf-" if TARGET_PLATFORM_ESP8266
这个添加的路径就是存放交叉编译工具链的路径
接下来还需要创建一个工程目录
继续输入指令
$ mkdir project
创建一个project目录,这个目录下用来存放工程
至此,已搭建好必要环境,可以开始创建工程并开始测试编译了
第三步:创建工程
进入之前ESP8266-RTOS-SDK文件夹,此中example目录下有工程模板,复制到project目录下
$ cp -r ../ESP8266_RTOS_SDK/examples/get-started/project_template/ .
这样在project目录下有个project_template目录,进入该目录,修改Makefile文件
在include $(IDF_PATH)/make/project.mk上方添加一行
IDF_PATH=~/ESP8266/ESP8266_RTOS_SDK
这里就是设置SDK路径,保存退出
第四步:编译烧录
完成第三步后,在工程目录下输入make menuconfig
在这里我们可以设置一下串口,因为稍后需要用来烧录程序
可以稍微设置大一些的波特率,115200,150000,1500000都是可以的波特率,如果无法下载请稍微调小波特率.
设置完成后使用方向键选中save,按下几次回车后,保存后,选中Exit回车即可退出界面
然后我们就可以开始编译了,继续输入make all 开始编译
编译完成后提示如下说明成功了
如果不能成功,可以检查是不是缺少某个组件没有安装成功
烧录程序
编译完成后,只需要继续输入make flash 就可以完成烧录,串口设备需要root权限
需要输入sudo make flash
如果你使用的是nodemcu或具有自动下载电路的板子,则无需操作板子,将会自动开始下.
如果你的只是串口链接线路,那么你需要按住板子上的FLASH按键不松开,同时点按一下RST,然后松开FLASH也可以进入下载模式.
正在烧录程序
烧录程序完成
围观大佬