esp8266 rtos 开发环境 ubuntu_树莓派安装ESP8266_SDK开发环境

陈拓 chentuo@ms.xab.ac.cn 2020/02/19-2020/03/31

1. 概述

ESP8266的开发工具是在linux系统下运行的,树莓派的官方操作系统是Linux系统。如果你手头刚好有一块树莓派,就可以用它进行ESP8266的开发。下面我们在树莓派3B+上安装ESP8266的开发环境。所用的树莓派安装官方操作系统版本是:
2019-09-26-raspbian-buster-lite.img。树莓派的存储用16G的TF卡。

电脑通过Putty连接树莓派,看看树莓派操作系统系统版本:

5339546f3cd84699058c15507ab15dff.png

有关putty的使用,见参考文档《电脑连接树莓派3B+》,看到第3节,网线访问树莓派3B+就可以了,不用WiFi连接,网线连接可靠性好。

1.1 ESP8266开发工具的分类

在官方文档《ESP8266 SDK入门指南》中有关于开ESP8266发工具的分类。

https://www.espressif.com/sites/default/files/documentation/2a-esp8266-sdk_getting_started_guide_cn.pdf

2473fda80f7133a77b46b945a88cbbe2.png

乐鑫SDK官方开发工具下载网址:

https://www.espressif.com/en/support/download/sdks-demos

7cd055f32cdc6dc8f73abbdfc2f9d4e8.png

我们编译的工具链esp-open-sdk默认情况下安装ESP8266_NONOS_SDK-2.1.0,安装完成后我们将安装最新版本的ESP8266_NONOS_SDK-3.0.x。如果你有需要也可以再安装ESP8266_RTOS_SDK。多个SDK可以同时存在。

1.2 官方关于ESP8266_NONOS_SDK的说明

https://github.com/espressif/ESP8266_NONOS_SDK

README.md

304ac10e930fda0c8346420e28188eaa.png

1.3 其他说明

  • 为什么不安装ESP-IDF

乐鑫最新的开发环境是ESP-IDF (Espressif IoT Development Framework)

见乐鑫的官方文档:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html

但是在树莓派上安装ESP-IDF,编译时会出现错误:

Error: selected processor does not support 'mls r1,r4,r8,r11' in ARM mode

所选择的处理器在ARM模式中不支持'mls r1,r4,r8,r11'

这是树莓派操作系统本身的问题,可以看看下面链接的一篇文章:

http://silicone.homelinux.org/2017/03/05/raspberry-pi-3-as-desktop-computer/

  • 下载安装问题

由于网络问题,工具链和相关依赖包的下载非常困难,常规安装很难完成。因此我们将更换apt的源,并且将github上的一些仓库克隆到gitee上,以加快下载速度。你也可以通过代理下载。

  • 电脑配置要求

我用的电脑操作系统是32位版的win7,这应该是目前电脑的最低配置了。

2. 更新apt源

  • 更新apt 源:sudo apt-get update

4e8c2f59676abd6cad258856fa7a31e3.png

64673ef49ffe8b57ab5a5a831d6d1cfc.png

树莓派的官网连接问题,常用的解决方法就是换源。

  • 更换apt源

需要修改的地方有两处:

/etc/apt/sources.list

/etc/apt/sources.list.d/raspi.list

查看系统版本:lsb_release -a

6a6aeaf90da709e072378c0044d9529a.png
  • 修改 /etc/apt/sources.list

下面我们要经常使用Linux的命令行文本编辑器nano,如果不熟悉先上网学学。

sudo nano /etc/apt/sources.list

40ba66fd7b8a2b5024bea90336e5f849.png

在下面的语句前面加#注释掉这行:

#deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi

据说阿里源比较快,我们就用阿里源:
deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi

f9394278d645b2d16ab6de637266185a.png
  • 修改/etc/apt/sources.list.d/raspi.list

sudo nano /etc/apt/sources.list.d/raspi.list

d1d9e5d99d26f1890d27c9e3eae8886b.png

在下面的语句前面加#注释掉这行:

#deb http://archive.raspberrypi.org/debian/ buster main

在这里可以添加阿里的源:

deb http://mirrors.aliyun.com/archive.raspberrypi.org/debian/ buster main ui

但经过测试,阿里源同步的不及时,所以我这里用科大源

deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main ui

253e290a7673bc3dcc9590dae6f33c50.png
  • 更新apt 源

sudo apt-get update

f8f596a9afb2510ec52e3dda2d092a48.png

完成。

3. 编译工具链xtensa-lx106-elf

因为ESP8266功能太弱,不足以支持开发工作,所以需要在其他平台上进行开发。现在我们就要在树莓派上将ESP8266的程序代码编译链接成ESP8266可执行的文件,再将编译好的文件烧写到ESP8266上运行,这个过程就是交叉编译,交叉编译所需的软件工具叫做工具链toolchain。

我们需要的工具链是一个lx106编译器,可以为各种以lx106为内核的器件开发程序,也包括ESP8266。

因为树莓派资源也有限,还有前面说过的树莓派操作系统本身的问题,我们没有采用乐鑫最新的编程架构ESP-IDF。而使用较老的ESP8266开发工具esp-open-sdk为树莓派编译一个工具链xtensa-lx106-elf。

安装编译工具链的说明见:https://gitee.com/chentuo2000/esp-open-sdk/README.md

3.1 安装依赖项

  • 安装gcc g++库

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

cdffe864441731e23294ae99beb3ac4f.png

……

f2188b378e07346e38aa846b4952a9f2.png
  • 安装libtool-bin

sudo apt-get install libtool-bin

3fc8754b89458ea034bb205d1fc9e777.png

3.2 克隆下载esp-open-sdk源码

  • 创建并进入下载安装工具链目录

用putty登录树莓派

mkdir -p ~/esp/

cd ~/esp/

990611d5542afcb9272a2e0e84ec65b4.png
  • 在码云gitee上克隆esp-open-sdk

可以用git clone命令直接从github上克隆esp-open-sdk:

git clone --recursive https://github.com/pfalcon/esp-open-sdk.git

由于网络原因,下载速度很慢。

我们先在码云gitee上克隆一个esp-open-sdk。

d3ac44694175770071bf857d3bb6ccfa.png

再从码云上克隆esp-open-sdk到本地,这样会快很多。

esp-open-sdk还有几个子模块也需要一并克隆到码云上。

看看子模块在哪里:

在esp-open-sdk仓库页面打开文件.gitmodules

39725efaff8051b27af94ccdc0f6f515.png

其中有4个子模块的下载地址,用这4个下载地址在gitee上克隆它们。

修改url:

a75c270c10496528948fe75209673f79.png

这样在在克隆esp-open-sdk的时候带上参数—recursive,子模块也就一并克隆了。

因为要用git克隆下载esp-open-sdk,所以先安装git。

  • 安装git

sudo apt-get install git

cc61252dab05262f090337de61c2fa30.png

测试git --version

35a44767c5d1e7b0c9a1211b286879f7.png

关于Git的使用可以看《树莓派使用Git》https://blog.csdn.net/chentuo2000/article/details/104834522

  • 从码云克隆esp-open-sdk

git clone --recursive https://gitee.com/chentuo2000/esp-open-sdk.git

64bc30660796e7cd6064fcb27d294524.png

e8a71bf8ad105900f43f3de4e5b83aeb.png

查看ls –l

70b571ed781400653bb744ec6f24409a.png

3.3 编译esp-open-sdk

  • 先在gitee上克隆ESP8266_NONOS_SDK

从https://github.com/espressif/ESP8266_NONOS_SDK克隆ESP8266_NONOS_SDK到gitee

0ba7f8b11a018caeecb4fc9650789122.png
  • 编辑Makefile文件

cd esp-open-sdk/

cp Makefile Makefile.bak

nano Makefile

3df794d8de736872fcb478e8368d4f52.png

就是两处http://github.com/espressif修改成http://gitee.com/chentuo2000。

  • 编译选项

README.md文件中有关于make命令的说明,我们用默认编译命令make。

  • 编译

make

8545b8a305b617d9438e1c1459e59f6c.png

b025ab1f5336bd2661ed4db1a43ae094.png

错误信息:error: could not find bash >= 3.1

  • 修改configure.ac

要求bash的版本 >= 3.1,查看当前的bash版本bash --version

0f0d9f6c07ef9cedb490e01016ebd6ab.png

5.0.3 > 3.1,满足条件。

解决方法(https://github.com/pfalcon/esp-open-sdk/issues/365):

修改/home/pi/esp/esp-open-sdk/crosstool-NG/configure.ac

nano /home/pi/esp/esp-open-sdk/crosstool-NG/configure.ac

找到行|$EGREP '^GNU bash, version (3.[1-9]|4)')

84caa61b50eaae34956d7322ba2f5f9b.png

改成:|$EGREP '^GNU bash, version ([0-9.]+)')

保存,退出。

  • 继续编译make

出现错误:

938225f64d1df1c8908dd31bd12d66e6.png

查看日志cat ./crosstool-NG/build.log

看日志中的这一句:

Not at this location: https://ftp.gnu.org/gnu/gmp/gmp-6.0.0a

  • 手工下载gcc的依赖库gmp-6.0.0a

先看看GMP的官网https://gmplib.org。

查看gmp的全部版本

https://gmplib.org/download/gmp/

d86230ced15ac636329f732d667c93fd.png

在列表中找到gmp-6.0.0a.tar.xz

21c42407545bc9121a324896cf3a8ff3.png

右击gmp-6.0.0a.tar.xz复制链接地址,下载:

wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.xz

d887237ec234775347c55da1969be203.png

下载完成:

5db76616e35e25406fe946107f0bc6a6.png

如果下载中断,可以多试几次,或者找它的镜像网站,或者通过代理。

看看错误信息,找出下载的资源包放在什么目录中。

Build failed in step 'Retrieving needed toolchain components' tarballs'

查找tarballs(源压缩文档)目录的位置find . -name "tarballs"

390cfd43345b4c7cf2b08ff6277b7a56.png

所有下载的资源包都放在这里。

将gmp-6.0.0a.tar.xz复制到./crosstool-NG/.build/tarballs目录中:

cp gmp-6.0.0a.tar.xz ./crosstool-NG/.build/tarballs

e72bd0e352e0bb5b2177335eafaca31b.png
  • 继续编译make

你会遇到11个要下载的资源包,仿照上面的方法都下载下来放在./crosstool-NG/.build/tarballs目录中。

列表看看ls -l ./crosstool-NG/.build/tarballs

29f0ec70d4fcceedaa5363977022a5cf.png

现在一切都准备好了,正式开始编译,大约2个小时。

继续make

完成编译!

ec283170b1cf9a5d00969a658a9cc651.png

编译成功后会在esp-open-sdk文件夹出现xtensa-lx106-elf、esptool和 ESP8266_NONOS_SDK三个文件夹,分别是编译器、烧录工具和ESP8266的非操作系统开发工具NONOS_SDK。

e52b3ca86948cbe0ee13e8876f31a286.png

SDK的目录名字ESP8266_NONOS_SDK-2.1.0-18-g61248df太长了,用起来很麻烦,所以你看到有一个软链接sdk代替了那个很长的名字。

3.4 使用工具链

完成工具链构建后,带有Xtensa HAL库的工具链,也就是交叉编译器位于

/home/pi/esp/esp-open-sdk/xtensa-lx106-elf

子目录中。

将xtensa-lx106-elf/bin/子目录添加到PATH 环境变量以运行xtensa-lx106-elf-gcc和其他工具。在构建过程结束时,crosstool-NG将根据你的环境给出正确的PATH设置命令。上图中工具链构建结束时提示,我的环境变量这样设置:

export PATH=/home/pi/esp/esp-open-sdk/xtensa-lx106-elf/bin:$PATH

这个命令每次开机都要重新设置,很麻烦,下面我们将环境变量写到.bashrc中,这样每次开机时环境变量就自动设置了。

  • 设置环境变量

回到家目录,就是我们登录的目录

cd ~

查看当前环境变量echo $PATH

ab2ecac19c231ce74c544de4af52f52b.png

看看有没有文件.bashrc

f21737e99eca9a8e4e877baa06f650e4.png

编辑这个文件nano .bashrc

export PATH=/home/pi/esp/esp-open-sdk/xtensa-lx106-elf/bin:$PATH

添加到最后一行。

重新启动树莓派sudo reboot,重新登录树莓派,再查看环境变量echo $PATH

16c8f590c94809810309ea2e2d51b105.png

工具链的路径已经在里面了。

  • 运行xtensa-lx106-elf-gcc -v来验证安装

529f5205d0690e3339139e79c55daa31.png

19ce89fdf16d9ef668f6d662c615fd62.png

OK!

3.5 升级SDK

上面的安装过程中安装的SDK版本是ESP8266_NONOS_SDK-2.1.0-18-g61248df,

现在我们安装最新的ESP8266_NONOS_SDK。

  • 克隆ESP8266_NONOS_SDK

cd ~/esp

git clone https://gitee.com/chentuo2000/ESP8266_NONOS_SDK.git

8500300585d0e2942c5e04e5069ec40c.png
  • 看安装位置:

34e7a9b39c2c43756a7d54e16ee6d9b4.png
  • 安装tree命令,查看目录树(可以在任何目录位置安装)
  1. wget http://mama.indstate.edu/users/ice/tree/src/tree-1.7.0.tgz
  2. tar zxvf tree-1.7.0.tgz
  3. cd tree-1.7.0
  4. make
  5. make install
  6. 查看目录结构tree -L 1

c2c1c70ee66d9cdabef8f6937aba61c4.png

4. 树莓派串口连接ESP8266

我们用ESP8266-01模块为例与树莓派串口进行连接。

4.1 树莓派串口硬件设置

树莓派的串口需要设置才能使用。

看看默认情况下设备文件和串口的映射关系:ls -l /dev

57ecfee6bf68ca43b855760a4e3ec36c.png

我们需要的映射关系是这样的:

0c0322e6d68a6ae6e99c4b015de89a53.png

有关串口的设置请看文章《树莓派串口的使用》https://blog.csdn.net/chentuo2000/article/details/104711494

28c46d7c1f14c5aa79ad89502c275a1e.png

设置好的串口对应的引脚是Pin8(TXD, GPIO14)和Pin10(RXD, GPIO15)。

4.2 串口工具软件Minicom的安装和使用

乐鑫官方文档建议使用Minicom作为串口调试工具。

8abe57f8db3573a9cfe6311dcb4c391b.png
  • 安装串口工具Minicom

sudo apt-get install minicom

f66e90d2234b8fffe11cf980a4d22ffb.png

查看版本:

207bbaf110247a58bf347f098120965d.png
  • 执行以下命令在minicom中对串口进行配置

sudo minicom -s

c89e89b97de51a834f59929b27a418ee.png

8f4ebd06ef3b130a20b4f808508968b4.png

在弹出的菜单中选择“Serial port setup”,将默认设置

29259d57e294958edaedeba42da5c4a0.png

改成:

be84814126ee40c3dc3e2bc93a0d28be.png

回车:

3af9a3bf7b9abc591b7ecd8dddd73296.png

保存Save setup as df1,退出Exit from Minicom。

常用命令:

Ctrl+A W:当显示的内容超过一行之后自动换行

Ctrl+A X:退出minicom

4.3 ESP8266-01参数

70d95287b368651445fc88747bdff156.png

4.4 树莓派3B+和ESP8266-01的引脚图

07b44ec9a0e75a8b9fd022b738171c4e.png

4.5 ESP8266-01的引脚说明

dba545506d72e7aee0258aed7a7d5de1.png

4.6 树莓派3B+和ESP8266-1的连接

  • 正常运行程序时的连接

07b966a87c534df388ccc2dfcdd6f53c.png

用杜邦线按照表中的对应关系连接树莓派和ESP8266-01。

c695a63640867570f05055183138a5a9.png

如果使用的是ESP8266-01S模块CH-PD可以不接。

两者的外观区别是:ESP8266-01S天线区域右下角只有一个指示灯,ESP8266-01天线区域右下角有两个指示灯。另外ESP8266-01上有个LED在工作时一直亮着,这对于要求低功耗的场合很不利。

在烧写程序时模块上的GPIO0需要接低电平(默认为高电平)。

4.7 ESP8266-01 AT命令测试

ESP8266-01模块自带AT命令支持,用minicom可以测试。

  • minicom

a2fca934f7b904a74b88e08d0aed1bf9.png
  • 插拔VCC重新启动模块

c833f5aa165fd54e3f06b9868f4483db.png
  • 树莓派用minicom发送AT指令说明

AT 指令是一行一行发送给设备的,每一行以 rn 结尾,而我们在电脑上敲的回车键通过putty传到树莓派上只有 n没有 r。所以AT命令的结束不能用回车键,要用组合键Ctrl+M和Ctrl+J。

对应关系:

r - Ctrl+M

n - Ctrl+J

例如发送查看固件版本指令AT+GMR是这样的:

AT+GMR Ctrl+M Ctrl+J

6bdccc6f09243e1ac03be5b54fb12328.png

看测试是否正常,以检测模块的好坏,连线是否正确。

5. 编译一个项目

乐鑫官方文档:

  • ESP8266 SDK入门指南

https://www.espressif.com/sites/default/files/documentation/2a-esp8266-sdk_getting_started_guide_cn.pdf

  • ESP8266 Non-OS SDK API参考

https://www.espressif.com/sites/default/files/documentation/2c-esp8266_non_os_sdk_api_reference_cn.pdf

5.1 官方编程规范

195c2faca03e98b3580feeaccddb80de.png

5.2 编译第一个ESP8266程序

  • 查看ESP8266_NONOS_SDK目录

c6d2211648d319312005ee8c8d0a4eaf.png

查看ESP8266_NONOS_SDK/examples子目录

bea9ead06129c0c8008a19c0c9b10cb7.png

在examples目录中有一个esp_mqtt_proj子目录,我们就从这里起步。

  • 复制目录

把esp_mqtt_proj目录复制到和examples目录平级,并改名为i_mqtt。

cp -r ./examples/esp_mqtt_proj ./i_mqtt

2c74ca211df544821f2b78407280a625.png
  • 修改代码

进入i_mqtt目录,nano user/user_main.c

找到void user_init(void)函数,保留:

uart_init(BIT_RATE_115200, BIT_RATE_115200);

添加:

os_printf("SDK version:%sn", system_get_sdk_version());

其他语句都注释掉。

aacc78e573e41678f2d1fff280d0827e.png
  • 编译

运行gen_misc.h并回答5个问题:

./gen_misc.sh

f65839e8e2e77ca5baed98e23503af9b.png

选择5个参数

5445639410c3898cebdc502a81f2b104.png

cf50a326cd2cdeadba1f34fe9ab1838b.png

编译过程开始:

c715cd4519b3aee36bc3245b0098468b.png

编译结果放在~/esp/ESP8266_NONOS_SDK/bin目录中:

cd ../bin/

ls -l

3b502c6544138599ffeec60f7eb670e7.png

红框中的4个文件要烧写到ESP8266的Flash中。

  • 简化编译过程

每次运行gen_misc.sh都要选择输入比较麻烦,可以根据上面的选择输入写一个文件input.esp-01,其中记录了上面的回答。

nano esp01

be0be06d8526c8cc8de3a5b74e2e823e.png

存盘退出,下次编译用下面的输入重定向自动输入选项就可以了。

./gen_misc.sh < esp01

6. 烧写ESP8266 Flash

要烧写4个文件。先熟悉一下ESP8266 Flash的布局,再确定每个文件的烧写地址。

6.1 ESP8266 Flash布局

85d89023fe02d3235e2377d7c352463e.png

6.2 ESP8266 FM(固件)

7a323a9e75ab921b7e3e028351b5c67d.png

e31bd2ee76946de729d4e7a483f6a7e9.png

ESP8266 HDK就是指ESP8266模块,我们用ESP8266-01。

156210df5a47e3a93a5a10c58d4da8da.png

ESP8266-01的flash 存储器为8Mbit,也就是1MB。

6.3 确定烧写地址

  • 查固件地址表blank.bin位于0xfb00和0xfe000
  • 查固件地址表esp_init_data_default_v08.bin位于0xfc000
  • eagle.flash.bin位于0x00000
  • eagle.irom0text.bin位于0x10000

注意,其中除了flash.bin和irom0text.bin每次都需要下载,blank.bin和esp_init_data_default_v08.bin只需要保证flash里面下载过就行了,对应版本的SDK只需要下载一次,并且要对照着上述地址下载。

6.4 烧写flash

  • 接线

c695a63640867570f05055183138a5a9.png

用1条杜邦线连接ESP8266-01的GPIO0和树莓派引脚Pin6(GND)。

  • 烧写flash的工具在这里

/home/pi/esp/esp-open-sdk/esptool/esptool.py,在前面我们已经设置了工具链的环境变量,可以直接使用。

  • 查看串口设备

确认前面设置的串口设备ls -l /dev

serial0 -> ttyAMA0

  • 构造烧写命令

1) 第一次烧写命令

esptool.py --port /dev/ttyAMA0 write_flash 0x00000 eagle.flash.bin 0x10000 eagle.irom0text.bin 0xfb000 blank.bin 0xfc000 esp_init_data_default_v08.bin 0xfe000 blank.bin

2) 之后的烧写命令

esptool.py --port /dev/ttyAMA0 write_flash 0x00000 eagle.flash.bin 0x10000 eagle.irom0text.bin

  • ESP8266 flash烧写操作流程

1) VCC断电

2) 连接GPIO0和GND

3) VCC上电

4) 执行上面准备好的烧写命令

84843b10f7bd3ac1fac135e5e6fd6f5e.png

5) VCC断电

6) 断开GPIO0和GND

7) 运行minicom

210f1bd84aea8e3be43bb7afc9e2f272.png

注意:开多个putty窗口工作时,一定要烧写完成后再运行minicom,否则串口被占着,烧写会失败!!!

8) 上电运行程序

47848bc5e53d29a7597db3b0e588b8f0.png

OK!

  • 制作ESP8266-01烧写转接板

烧写过程挺麻烦的,如果经常烧写可以做一个电路板简化烧写过程。其实在烧写过程中GPIO0和GND的连线不用一直连着,在上电进入烧写模式之后就可以拿掉了,烧写完成后将RST拉低一下模块就进入程序运行模式。这里有一张网上找的电路图可以参考。

c16482d0ed8dc5643d680dcd224a7e54.png

在参考文档《ESP8266-01 Programming Breakout Board》中有详细的制作说明。

  • 擦除芯片命令

如果模块烧写后运行异常,可以擦除芯片重新烧写。通常直接烧写就可以,不用擦除。

esptool.py --port /dev/ttyAMA0 erase_flash

6.5 程序调试方法

官方给出的程序调试方法:

d9dd1d3f481e464c9a108999b9c1f6ca.png

7. 更多的例子

在ESP8266-01S上面有一个蓝色的LED接GPIO2引脚,我们下面用程序控制这个LED闪烁。

注意:如果使用ESP8266-01需要自己在GPIO2引脚上外接一个LED。

  • 修改代码nano user_main.c

1) 添加2个变量

static const int pin = 2;

static volatile os_timer_t some_timer;

2) 添加一个定时函数

void some_timerfunc(void *arg)

{

//Do blinky stuff

if (GPIO_REG_READ(GPIO_OUT_ADDRESS) & (1 << pin))

{

// set gpio low

gpio_output_set(0, (1 << pin), 0, 0);

}

else

{

// set gpio high

gpio_output_set((1 << pin), 0, 0, 0);

}

}

1114d6e031a5ffd976694a1eae2758cc.png

3) 在函数void user_init(void)中添加

// init gpio subsytem

gpio_init();

// configure UART TXD to be GPIO1, set as output

PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U, FUNC_GPIO1);

gpio_output_set(0, 0, (1 << pin), 0);

// setup timer (500ms, repeating)

os_timer_setfn(&some_timer, (os_timer_func_t *)some_timerfunc, NULL);

os_timer_arm(&some_timer, 500, 1);

2eccb279106c57613b63aaf4441788e5.png
  • 编译./gen_misc.sh < esp01

81b24312862f12a355abacfee455dbfe.png

6930a8a74488c008389256be82f950ee.png
  • 烧写

esptool.py --port /dev/ttyAMA0 write_flash 0x00000 eagle.flash.bin 0x10000 eagle.irom0text.bin

30b849b814af5c99716f22668cc2b6e1.png
  • 运行烧写完成后程序自动运行,可以看到led闪烁。

参考文档:

  1. 电脑连接树莓派3B+https://blog.csdn.net/chentuo2000/article/details/103332186
  2. esp8266 SDK开发之环境搭建https://www.cnblogs.com/mmmmar/p/6370549.html
  3. ESP8266 Community Forumhttps://www.esp8266.com/
  4. Prebuilt Windows Toolchain for PowerPChttps://gnutoolchains.com/powerpc-eabi/
  5. How to set up manually the GCC toolchain and SDKhttps://www.esp8266.com/wiki/doku.php?id=toolchain
  6. esp8266-wikihttps://github.com/esp8266/esp8266-wiki/wiki
  7. esp-linkhttps://github.com/jeelabs/esp-link
  8. ESP8266_NONOS_SDK 3.0https://github.com/espressif/ESP8266_NONOS_SDK/releases/tag/v3.0
  9. ESP8266https://fixme.ch/wiki/ESP8266
  10. ESP8266-01 Programming Breakout Boardhttp://www.martyncurrey.com/esp8266-01-programming-breakout-board/
  11. 乐鑫官方文档https://www.espressif.com/zh-hans/support/download/documents
  12. 树莓派使用Githttps://blog.csdn.net/chentuo2000/article/details/104834522
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值