注意,本文章已近乎废弃,因为以后的教程都是基于Arduino的写法。
目录
零之前言
1.简述
2.说明
一.芯片选型
二.环境搭建
1.JAVA
2.Eclipse
3.AiThinkerIDE / Cywin
4. (可选)xtensa-lx106-elf
三.NONOS包
1.下载
2.处理
①解压
②删除驱动编译文件
③删除第三方文件
④拿出一个项目包
四.编译测试
1.启动IDE
①说明
②配置
③打开IDE
2.载入一个包
①进入加载模式
②导入我们的包
③选择编译器与语言
④完成
3.编译
五.后记
本来是想直接用8266给单片机联网,这样单片机如果能连上网,法力就无边。但是真正意义上的了解了ESP8266的时候,我却发现8266本身已经是一个很强大的单片机了,我们可以直接用它干一些简单的事。
本学习记录,是跟着半颗心脏大佬走的,博客地址:
对于芯片的选型,可以直接去淘宝网查阅资料,对于学习的话,我选择的是8266-12F。因为其IO口多,价格也不贵,淘宝单个零售11元一枚。图我不想找了,反正淘宝里面看看就知道了。
Java是我很久很久之前配置的了,所以我放出连接:https://www.runoob.com/java/java-environment-setup.html 参照这个就可以了。
我给出连接:
Eclipe for c/c++ 2019版本:https://pan.baidu.com/s/1Eqg0nu_fHSIVTwiFvLLijA 提取码:fqt7
安装就行。
Cywin window:链接:https://pan.baidu.com/s/189N2t2OCBMuhTV2Mz4URHw 提取码:wmpn
安装就行。我不知道要不要手动配置环境变量,但是最好还是配一下,定位至bin文件就可以了:
D:\IOT\AiThinkerIDE_V0.5\cygwin\bin
参照半颗心脏大佬的教程,如果使用了这个就可以用Eclipse原生态的进行开发,但是我会报错,始终就有错,解决不了,所以放弃使用这个方法。所以可以参照大佬原博客上面进行配置。
对于NoNos包下载,我是下载的2.2.0版本的,因为3.0以上的会与2.2.0有差异,所以姑且用了2.2.0版本的。
gayhub地址:https://github.com/espressif/ESP8266_NONOS_SDK
首先把默认的master版本切换到我们要的版本:
然后我们DownloadZip就行
将我们的包解压到某个地方:
我们一看,这差不多就是一个Linux的工作环境的结构嘛,一个项目。
进入到driver_lib里面,把Makefile删除,否则它会编译driver里面的文件导致出错。
把整个文件夹都给删掉:(好像不删也可以)
我们进入examples里面,随便找个文件夹拖到examples同级的文件夹下:
from:
to:
重命名把,好听些:
在我们AiThinkerIDE_V0.5目录下,我们有一下两个个重要的东西
AiThinker_IDE.exe:通过这个东西启动我们的IDE
ConfigTool.exe:用这个来首次配置环境
通过阅读我们的目录里的IDE我们可以知道:
1 打开 ConfigTool.exe,点击 Default 可以检测当前所在路径,或手动进行路径配置;
2 配置后点击 Save 进行保存;
3 打开 AiThinker_IDE.exe,可以直接进行固件的编译;
4 点击 OpenWorkSpace.bat 可以快速打开默认的 project 目录;
5 点击 Register 可注册 Cygwin Here 快捷方式到鼠标右键,可实现在当前目录打开终端。
②配置
我们打开Config Tool,先点击Dafault,然后把第一个Eclipse换成我们的那个Eclipse的目录,然后点击Save就可以了。
因为我们的Eclipse比较高级些
(虽然俺英语不好,但是我也知道这是Default啊,程序员小哥哥你太飘了)
然后,我们要通过AiThinker_IDE.exe来启动我们的Eclipse,而不是原Eclipse。
这货:
③打开IDE
我们打开IDE后,你是看不到我们的工作区间的,我们要先把这个欢迎界面关掉:
然后我们可以得到以下界面:
像这样如果我们里面没有Project的样子,我们可以window-show view-project Explorer打开它
2.载入一个包
①进入加载模式
②导入我们的包
选择目录就可以了,Project Name我们可以随便写。
③选择编译器与语言
用Cygwin 和 只使用C
④完成
3.编译
进入我们拖出来的项目Demo里面,把我们的User_main加一个HelloWorld:
先清理再编译
然后编译成功:
如果是3.0以上的版本,需要修改芯片的信息:
把根目录的MakeFile里面的第25之后几行覆盖:
BOOT?=new
APP?=1
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=6
具体解释看大佬博客。
五.后记
烧录还是要有技巧的,但我看有人设计出来了一键下载的电路,通过TXD发送数据的高电平去反转拉低P12的电平,然后导致自动下载,牛逼!可惜我已经画好了我的手动下载电路的最小系统板(5块钱5个),还在快递的路上,所有的东西都在快递的路上……后面几天云学代码吧!
我的板子:
大佬的自动下载器: