看网上说linux下开发比较舒服,就想试试在linux上搭建一个环境。
用的是ESP8266_RTOS_SDK v3.1的,作为一个新手,仅仅是搭个环境,顺便熟悉一下好久没用的linux,入门还是先拿以前的环境和sdk,毕竟资料和教程多。sdk v3.1是esp-idf的架构,编译、二次开发方便了很多,其他一些库的更新就没去多了解了(反正最近一段时间是用不上)。
系统环境安装
Windows10系统下装虚拟机ubuntu16.04 64bit
具体虚拟机的安装可以参考我的另一篇博客
TensorFlow新手入门笔记(1)——环境配置
编译工具链搭建
首先打开你的终端,到你的用户主目录
cd ~
创建编译链目录
//下面两种方法选一个就行,建议第一个
mkdir -p esp/toolchain //直接创建多级目录
//或者
mkdir esp
cd esp
mkdir toolchain //一级一级创建
进入刚刚创建的目录下
cd ~/esp/toolchain
//可以用pwd看一眼是不是在这个目录,用ls看一眼目录下的文件,你们现在应该是空的没有东西的。
开始下载解压编译工具链
//下载
wget -c https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
//解压
tar xvf xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
设置环境变量
export PATH=$HOME/esp/toolchain/xtensa-lx106-elf/bin:$PATH
下载esp8266-rtos-sdk
//先创建一个目录
cd ~/esp
mkdir esp8266
//进入刚刚创建的目录
cd esp8266
//git
git clone https://github.com/espressif/ESP8266_RTOS_SDK.git
可能会报错提示你没有安装git,按照提示安装就行,一般都需要管理员权限,命令前加sudo就行。后面还有一系列的东西没有安装,都按照提示安装就行,到时候具体点再标注一下。一般是用apt-get。比如这个git
sudo apt-get install git
下载sdk比较慢,静静的等他下完吧,我是Windows上用IDM工具直接去GitHub上下载的,然后拖过去解压缩。
下载完后,你的esp8266目录下就有一个这个东西啦
然后配置sdk环境变量
export IDF_PATH=$HOME/esp/esp8266/ESP8266_RTOS_SDK 到这里东西基本都准备好了,可以找个例程编译下载一下了。
按照传统,打印一个helloworld先。
进入到我们get-started例子的主目录
cd ~/esp/esp8266/ESP8266_RTOS_SDK/examples/get-started/project_template/
用vim打开main目录下的user_main.c文件
vim的操作就不细说了,有兴趣的可以了解一下,神器。
按i进入编辑,然后在app_main里加个打印,然后按esc返回命令模式,按:进入末行模式,输入wq回车保存退出。
编辑好后用make menuconfig查看编辑串口,flash等配置,具体很多细节没去了解,就写一下我用到的吧,我用的是nodemcu,esp8266-12e,32mflash
上下操作上面的选择,左右操作下面一栏,选serial flasher config回车进到里面
设置好后选save,然后退出就行。
打开menuconfig的时候可能会有这个错误,那是因为你中断框太小了,拉大就行
mples/get-started/project_template# make menuconfig
WARNING: Toolchain version is not supported: 1.22.0-88-gde0bdc1
Expected to see version: 1.22.0-92-g8facf4c
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Please download and use the toolchain from the URL of README.md
WARNING: Compiler version is not supported: 4.8.5
Expected to see version(s): 5.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Please download and use the toolchain from the URL of README.md
MENUCONFIG
Your display is too small to run Menuconfig!
It must be at least 19 lines by 80 columns.
make: *** No rule to make target 'menuconfig', needed by '/home/chenjiawei/esp/esp8266/ESP8266_RTOS_SDK/examples/get-started/project_template/build/include/config/auto.conf'。 停止。
停止。 设置好后就可以make了,直接输入make,这是编译ok的图
不过刚开始的时候遇到了好多问题,一堆东西没装,应该有落下的,欢迎评论区留言讨论,先把记得的列一下吧。
serial.serialutil.SerialException: [Errno 2] could not open port /dev/ttyUSB0: [Errno 2] No such fil 这个好像是没找到设备文件,你插拔一下串口去/dev目录看看有没有相关设备文件,有就ok了,插拔完记得ls刷新目录。
ImportError: No module named serial.tools.list_ports 这个是缺一个python的模块,好像是串口相关的,安装一下就行
easy_install pyserialsudo apt-get install python-pipsudo pip install pyserial 可以检查一下,这样就没问题了,输入quit()退出
其他就是看打印出什么,缺啥apt-get啥,有什么欢迎讨论区讨论。
make完后我们插上板子,先擦除,在烧录,这个下载的比Windows快。
make erase_flashmake flash
然后用乐鑫的监视工具看一下结果,差不多就是个串口助手一样的,不过有颜色区分,挺好的。
make monitor
可以按复位键看看效果,然后就可以开心的学习了。
两个坑
- 刚开始不知道怎么退出这个监视工具,直接关终端结束进程。最后去官网找到了(还是官网靠谱)ctrl+]退出。
- 这个是为了第一次搭建快速看效果留下的坑,两个环境变量最好是放到用户目录下的.bashrc文件下,不然每次重新开终端都要配置环境变量。保存环境变量的方法网上有好多,我写一个我常用的吧,只对当前用户有效。编辑用户主目录下的.bashrc文件。
vim ./bashrc//没有配置过vim想复制粘贴的可以用gedit编辑器打开,就跟Windows的记事本一样。gedit ./bashrc 然后把这两句话加到最后,保存退出
export PATH=$HOME/esp/toolchain/xtensa-lx106-elf/bin:$PATHexport IDF_PATH=$HOME/esp/esp8266/ESP8266_RTOS_SDK
然后终端source一下就行了
source ~/.bashrc
最好reboot重启一下,不过应该关系不大。
看网上说linux下开发比较舒服,就想试试在linux上搭建一个环境。
用的是ESP8266_RTOS_SDK v3.1的,作为一个新手,仅仅是搭个环境,顺便熟悉一下好久没用的linux,入门还是先拿以前的环境和sdk,毕竟资料和教程多。sdk v3.1是esp-idf的架构,编译、二次开发方便了很多,其他一些库的更新就没去多了解了(反正最近一段时间是用不上)。
系统环境安装
Windows10系统下装虚拟机ubuntu16.04 64bit
具体虚拟机的安装可以参考我的另一篇博客
TensorFlow新手入门笔记(1)——环境配置
编译工具链搭建
首先打开你的终端,到你的用户主目录
cd ~
创建编译链目录
//下面两种方法选一个就行,建议第一个
mkdir -p esp/toolchain //直接创建多级目录
//或者
mkdir esp
cd esp
mkdir toolchain //一级一级创建
进入刚刚创建的目录下
cd ~/esp/toolchain
//可以用pwd看一眼是不是在这个目录,用ls看一眼目录下的文件,你们现在应该是空的没有东西的。
开始下载解压编译工具链
//下载
wget -c https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
//解压
tar xvf xtensa-lx106-elf-linux64-1.22.0-88-gde0bdc1-4.8.5.tar.gz
设置环境变量
export PATH=$HOME/esp/toolchain/xtensa-lx106-elf/bin:$PATH
下载esp8266-rtos-sdk
//先创建一个目录
cd ~/esp
mkdir esp8266
//进入刚刚创建的目录
cd esp8266
//git
git clone https://github.com/espressif/ESP8266_RTOS_SDK.git
可能会报错提示你没有安装git,按照提示安装就行,一般都需要管理员权限,命令前加sudo就行。后面还有一系列的东西没有安装,都按照提示安装就行,到时候具体点再标注一下。一般是用apt-get。比如这个git
sudo apt-get install git
下载sdk比较慢,静静的等他下完吧,我是Windows上用IDM工具直接去GitHub上下载的,然后拖过去解压缩。
下载完后,你的esp8266目录下就有一个这个东西啦
然后配置sdk环境变量
export IDF_PATH=$HOME/esp/esp8266/ESP8266_RTOS_SDK 到这里东西基本都准备好了,可以找个例程编译下载一下了。
按照传统,打印一个helloworld先。
进入到我们get-started例子的主目录
cd ~/esp/esp8266/ESP8266_RTOS_SDK/examples/get-started/project_template/
用vim打开main目录下的user_main.c文件
vim的操作就不细说了,有兴趣的可以了解一下,神器。
按i进入编辑,然后在app_main里加个打印,然后按esc返回命令模式,按:进入末行模式,输入wq回车保存退出。
编辑好后用make menuconfig查看编辑串口,flash等配置,具体很多细节没去了解,就写一下我用到的吧,我用的是nodemcu,esp8266-12e,32mflash
上下操作上面的选择,左右操作下面一栏,选serial flasher config回车进到里面
设置好后选save,然后退出就行。
打开menuconfig的时候可能会有这个错误,那是因为你中断框太小了,拉大就行
mples/get-started/project_template# make menuconfig
WARNING: Toolchain version is not supported: 1.22.0-88-gde0bdc1
Expected to see version: 1.22.0-92-g8facf4c
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Please download and use the toolchain from the URL of README.md
WARNING: Compiler version is not supported: 4.8.5
Expected to see version(s): 5.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Please download and use the toolchain from the URL of README.md
MENUCONFIG
Your display is too small to run Menuconfig!
It must be at least 19 lines by 80 columns.
make: *** No rule to make target 'menuconfig', needed by '/home/chenjiawei/esp/esp8266/ESP8266_RTOS_SDK/examples/get-started/project_template/build/include/config/auto.conf'。 停止。
停止。 设置好后就可以make了,直接输入make,这是编译ok的图
不过刚开始的时候遇到了好多问题,一堆东西没装,应该有落下的,欢迎评论区留言讨论,先把记得的列一下吧。
serial.serialutil.SerialException: [Errno 2] could not open port /dev/ttyUSB0: [Errno 2] No such fil 这个好像是没找到设备文件,你插拔一下串口去/dev目录看看有没有相关设备文件,有就ok了,插拔完记得ls刷新目录。
ImportError: No module named serial.tools.list_ports 这个是缺一个python的模块,好像是串口相关的,安装一下就行
easy_install pyserialsudo apt-get install python-pipsudo pip install pyserial 可以检查一下,这样就没问题了,输入quit()退出
其他就是看打印出什么,缺啥apt-get啥,有什么欢迎讨论区讨论。
make完后我们插上板子,先擦除,在烧录,这个下载的比Windows快。
make erase_flashmake flash
然后用乐鑫的监视工具看一下结果,差不多就是个串口助手一样的,不过有颜色区分,挺好的。
make monitor
可以按复位键看看效果,然后就可以开心的学习了。
两个坑
- 刚开始不知道怎么退出这个监视工具,直接关终端结束进程。最后去官网找到了(还是官网靠谱)ctrl+]退出。
- 这个是为了第一次搭建快速看效果留下的坑,两个环境变量最好是放到用户目录下的.bashrc文件下,不然每次重新开终端都要配置环境变量。保存环境变量的方法网上有好多,我写一个我常用的吧,只对当前用户有效。编辑用户主目录下的.bashrc文件。
vim ./bashrc//没有配置过vim想复制粘贴的可以用gedit编辑器打开,就跟Windows的记事本一样。gedit ./bashrc 然后把这两句话加到最后,保存退出
export PATH=$HOME/esp/toolchain/xtensa-lx106-elf/bin:$PATHexport IDF_PATH=$HOME/esp/esp8266/ESP8266_RTOS_SDK
然后终端source一下就行了
source ~/.bashrc
最好reboot重启一下,不过应该关系不大。
举报