[基础篇]ESP8266-SDK教程(二)之Hello World!

简介: 相信聪明伶俐的你,肯定完成了上一篇文章的环境搭建,如果你是第一次看本系列文章,可以先去看看前两篇文章,先了解一下并完成一些基础操作。这里推荐大家安装一下Git这个灰常炒鸡好用的分布式版本管理神器,本人是非常喜欢这款由Linux之父Linus Torvalds开发的工具,可以很方便让我完成一些工作,...

相信聪明伶俐的你,肯定完成了上一篇文章的环境搭建,如果你是第一次看本系列文章,可以先去看看前两篇文章,先了解一下并完成一些基础操作。

这里推荐大家安装一下Git这个灰常炒鸡好用的分布式版本管理神器,本人是非常喜欢这款由Linux之父Linus Torvalds开发的工具,可以很方便让我完成一些工作,比如说copy代码~哈哈,作为初级菜鸟程序员会用Git也是一个加分项,大家可以去看一下廖雪峰的Git的教程:

廖雪峰Git教程

Git下载安装链接

大家根据自己的系统选择合适的下载,貌似Linux都是自带的,因为Linux源码本身就是使用Git进行分布式开发管理的,可以想象一下像Linux这样大的项目都是使用的Git进行开发管理,你还有什么理由不去尝试一下呢?

上篇文章的最后给大家了ESP8266-NonOS-SDK 3.0的下载地址,相信大家都已经下载完成了,如果还有没下载的,刚好我们尝试一下使用Git是如何快速的copy代码,安装好Git了吗?安装好了那我们就开始吧,先找一个你想将代码copy到的目录,最好不要在含有中文的路径下copy,然后右键选择Git bash here

然后输入如下命令:

 1 git clone -b v3.0 git@github.com:espressif/ESP8266_NONOS_SDK.git 

其中clone就是克隆(copy)的意思,-b v3.0是选择3.0这个分支,如果你问分支又是什么,这就又是Git的相关知识了,相信廖大神的教程一定会让你明白的,这里就不做解释了,git@github.com:espressif/ESP8266_NONOS_SDK.git这一大串就是我们要clone(copy)的代码在github仓库中的地址了。

我们打开下载完成后的文件夹,看一下文件目录结构,然后将下图中我圈出来的文件直接删掉,我们这里暂时用不到,不然等会编译会报错:

然后将examples文件下的smart_config文件夹复制到ESP8266_NONOS_SDK文件夹下并重新命名为app(可以不改,这里为了看着好看),最后的目录结构是这样:

打开上篇文章中安装的安信可一体化开发环境,这是一个开源的开发工具,我们先将改好的工程导进来,左上角点击file->import:

选择Existing Code as Makefile Project,点击Next:

点击Browse浏览到你刚刚clone(copy)代码的目录,项目名称随便起,最后选择Cygwin GCC,然后点击Finish,就可以在左侧看到我们的工程树了,恭喜你,万里长征走了大半步了,先不要急着编译,我们先修改几个地方。

 

打开主目录中的makefile文件,找到第29行将0改为6,我这里使用的是NodeMCU,flash是32Mbit的,也就是4MByte=4096KB,可以在此文件的第100行找到参考,但是SPI_SIZE_MAP等于6时也是4096KB,其实6跟4的区别主要时代码分布不同而已,我们这里让SPI_SIZE_MAP等于6就可以了,具体代码分布有什么不同,我们后面再细说,修改完成后不要忘记CTRL+S一下。

然后打开app->user->user_main.c文件,找到第251行,user_init函数,这是整个工程的入口函数,底层初始化完成后,代码就从这个地方开始往下执行,我们这里串口打印一下“Hello World!”,将代码修改一下,如下:

1     os_printf("SDK version:%s\n", system_get_sdk_version());
2     os_printf("\n\nHello World! ZHIHU IAMLIUBO\n\n");
3 //    smartconfig_set_type(SC_TYPE_AIRKISS); //SC_TYPE_ESPTOUCH,SC_TYPE_AIRKISS,SC_TYPE_ESPTOUCH_AIRKISS
4 //    wifi_set_opmode(STATION_MODE);
5 //    smartconfig_start(smartconfig_done);

注释下面三行,我们暂时用不到,增加一行,然后保存,点击工具栏中的Project->Build Project,Console中出现以下代码,就表示编译成功了:

生成的Bin文件在工程目录的Bin文件夹下,然后我们需要将代码下载到ESP8266上去了,打开上篇文章中已经下载好的代码下载工具flash_download_tools,没有下载的可以看一下上篇文章去下载一下,也可以直接点这里:下载。打开后选择ESP8266 DownloadTool,然后参考下图设置好,代码下载地址也取决于你的Flash大小,这里是32Mbit flash的下载地址,端口号是你的硬件实际端口号,波特率建议选大点,下载速度快,也不要太大。

下载地址参考:

  • eagle.flash.bin-------->0x00000
  • eagle.irom0text.bin---->0x10000
  • esp_init_data_default_v08.bin --> 0x3FC000
  • blank.bin --> 0x3FE000

设置好后,我们点击START,就看到开始下载了,NodeMCU是有一键下载电路的,不需要我们手动去设置,如果你用的是别的开发板,没有一键下载电路,你需要将GPIO0拉低,复位一下,然后点击START,不然是没法下载的。下载完成后我们打开串口助手,波特率选择76800(这是ESP8266在使用26Mhz晶振下的默认波特率),按一下NodeMCU上的RST键,可以看到打印一些信息后,就打印出我们的“Hello World”来了,关于上电打印信息,是ESP8266底层初始化的时候打印日志,这部分代码不对用户开放,所以没办法看到,我们可以屏蔽掉上电打印日志,这个后面再讲。

恭喜你,成功完成了“Hello World”实验,通过一个简单的小例程,相信你对整个ESP8266开发流程有了一定的了解,没错,后面我们还是一样的套路去编写代码,编译代码,下载代码,查看代码执行结果,但是最重要的如何去编写我们的代码,后面将会跟大家一起来探讨如何深入开发ESP8266。

最后附上一个小视频,从修改代码开始,但是由于没有麦克风,所以没有声音,大家就当参考一下吧。

最后附上我的ESP8266仓库,后面代码会全部在此仓库更新,欢迎小伙伴们Star~

makingfunxyz-esp8266

本系列文章在知乎同步更新,知乎搜索专栏:IAMLIUBO的神奇物联网之旅

唯有爱与科技不可辜负。
目录
相关文章
|
开发工具 Android开发 Windows
Android sdk下载安装配置教程
Android sdk下载安装配置教程
Android sdk下载安装配置教程
|
14天前
|
开发工具 C语言 内存技术
ZYNQ_SDK HelloWorld实验
ZYNQ_SDK HelloWorld实验
|
Java API 开发工具
安卓集成云端java sdk教程
安卓项目中,集成云端java sdk,完成API调用。
444 2
安卓集成云端java sdk教程
|
JSON Java API
阿里云SDK核心库(Core SDK)使用教程
本文档主要介绍:JAVA、Python、PHP、JavaScript、NET、Go六款开发语言Core SDK的安装及使用。
6826 0
阿里云SDK核心库(Core SDK)使用教程
|
开发框架 Unix 区块链
IOV Weave SDK开发教程【Tendermint 】
IOV Weave SDK是一个基于Tendermint共识引擎的区块链开发框架,Weave提供了很多常用功能的预置模块用于你自己的区块链,同时也支持自定义扩展。 Weave的一些亮点包括基于Merkle树的数据存储、高度灵活的扩展支持系统以及核心逻辑的定制(例如手续费机制及签名验证机制)。
3692 0
|
Java 区块链 开发工具
Fabric Java SDK 1.4简明教程
在超级账本Fabric区块链中,应用通过节点的RPC协议接口访问链码。Java应用可以使用官方提供的Fabric-sdk-java开发包来实现对链码的访问,java开发包封装了Fabric区块链的GRPC链码访问协议,有利于开发人员聚焦于业务逻辑。
2258 0
|
移动开发 JSON 网络协议
[网络篇]ESP8266-SDK教程(五)之SmartConfig、Airkiss等多种配网方式
在前面网络篇TCP通信中,我们用到了Wi-Fi功能,但是没有细讲,今天我们在这篇文章中仔细探讨一下ESP8266的Wi-Fi联网过程,以及各种方式的配网过程是如何实现的。文章中难免有疏漏或不正确的地方,如遇不正确的表述还请指出,本系列文章现在在知乎和简书同步更新。
4470 0
|
移动开发 网络协议 开发工具
[网络篇]ESP8266-SDK教程(三)之TCP通信Server<->Client
纳尼?昨天刚刚打印了个“Hello World!”,今天你就让我学习TCP通信?有没有搞错~哈哈,相信很多读者会很迷,其实学习这东西嘛,单单学一些比较简单的,相信没两天就没人看了,所以咱就在基础篇和网络篇穿插着去学习一下ESP8266,毕竟兴趣才是最好的老师嘛!大家以后遇到问题了,来翻文章建议大家根...
1988 0
|
Java API 开发工具
最新鲜最详细的Android SDK下载安装及配置教程
第一步、安装JDK; 第二步、安装Eclipse; 第三步、下载并安装AndroidSDK; 第四步、为Eclipse安装ADT插件   下面详细介绍。 第一步、安装JDK Android开发工具要求必须安装JDK(JavaDevelopment Kit),不能只安装JRE(Java Runtime Edition),在安装Android开发工具之前需要先安装JavaJDK。
3079 0

热门文章

最新文章