01_ESP8266 NONO_SDK 创建工程模板
参考:https://wiki.ai-thinker.com/ai_ide_use , 仅作为学习笔记。
一、关于报错
注意:Eclipse 只是一个代码编写工具,它并不能读取 makefile 里面的一些配置,甚至它会读取到 cygwin 下同名称的头文件。
针对该现象引起的报错,我们建议用户在使用该 IDE 时,直接将 Problems 栏目关掉,因为该提示并不准确,我们主要关注的信息应该为 Console 栏目下的输出。(第一条 Console 报错最重要!)

二、下载NONO_SDK
打开https://github.com/espressif/ESP8266_NONOS_SDK/tags
选择v2.2.1版本,下载:


三、解压ESP8266_NONOS_SDK-2.2.1

ESP8266的ESP8266_NONOS_SDK,采用了SDK和工程文件夹分离的方式,所以我们需要手动创建一个 app 目录,在下面会详细介绍。
四、ESP8266_NONOS_SDK-2.2.1目录文件处理
1、将sdk目录下的 driver_lib 重命名为 app(用其他名称也可以)

2、进入examples / IoT_Demo 文件夹,复制其下的所有文件至app文件夹下,覆盖相同文件。


3、将third_party/makefile 重命名为 makefile.bak ,以防止编译时报错。

五、导入项目处理
1、打开软件 → 点击File → Import

2、点开C/C++分支,并选中Existing Code as Makefile Project,去除C++支持,选中 Cygwin GCC,点击Browser,选中ESP8266_NONOS_SDK-2.2.1所在的目录。

3、点击 Finish 完成ESP8266_NONOS_SDK-2.2.1的导入

六、制作工程模板
1、进入user_main.c文件,删除以下内容


2. user_main.c文件内,将user_init(void){ }函数里面的内容全部清空:

3.打开app /user文件夹,除了user_main.c文件,其他c文件全部删除。

4.app/driver 存放的是外设相关c文件。模板暂时没用到这些外设,暂时删掉。

5. app /include/driver 存放的是外设相关的头文件
模板暂时没用到这些外设,暂时删掉,之后想要使用外设,只需将相应的C文件和头文件放到对应的文件夹下即可。

6、app /include/ssl 以及app /include下除user_config.h外,其他头文件全部删除

7、打开user_config.h文件,用来定义用户的参数、宏定义等,被很多C文件和头文件所引用,我们清空内容。

七、编译工程
1、先Clean Project 清除工程,再点击build Project 编译工程

2、显示如下,表示创建工程模板成功。

01_ESP8266 NONO_SDK 创建工程模板的更多相关文章
- STM32学习笔记:创建工程模板
STM32作为一类高级单片机,在应用中不容小觑. 所以本人从2018年1月1日开始对于STM32系列单片机的学习. 本人所持的型号为:STM32F429ZI-DISCOVERY,M4内核,封装类型为: ...
- IAR为STM32创建工程模板(基于STM32f103zet6)
今天给小伙伴分享一篇给stm32新建工程模版 1.首先打开IAR,就是这个样子 2.再建一个目录文件夹 3.建立一个工作空间,以及建好工作空间如右图所示 4.接下来建立工程,Project------ ...
- [SAM4N学习笔记]SAM4N工程模板搭建
一.需要安装的软件: 因为笔者是使用MDK-ARM开发的版本是4.72,所以需要安装这个工具,具体在哪里下载自行放狗或问度娘.除了这个重要工具以为,还需要安装Atmel官方的Atmel Studio, ...
- ABP示例程序-使用AngularJs,ASP.NET MVC,Web API和EntityFramework创建N层的单页面Web应用
本片文章翻译自ABP在CodeProject上的一个简单示例程序,网站上的程序是用ABP之前的版本创建的,模板创建界面及工程文档有所改变,本文基于最新的模板创建.通过这个简单的示例可以对ABP有个更深 ...
- Mac终端的Cocoapods创建自己的私有库和公有库
一,前言 为什么要用Cocopods 通常在开发的过程中,大多时候,我们会处理一类相同的操作,比如对于字符串String的邮箱验证,是否为空,手机号验证,或者一些UIView的动画操作,我们为了避免写 ...
- Scrapy开发指南
一.Scrapy简介 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. Scrapy基于事件驱动网络框架 Twis ...
- 基于InstallShield2013LimitedEdition的安装包制作
在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012.VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不 ...
- 基于DevExpress的Winform程序安装包的制作
在我们做系统开发的时候,都会面临一个安装包制作的问题,如何把我们做好的系统,通过安装包工具整合成一个安装包给客户进行安装.安装包的优势就是一步步安装就可以了,不用复制一大堆文件给客户,还怕缺少那个文件 ...
- VS2013 生成安装文件
在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012.VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不 ...
随机推荐
- KMP算法及实现
#include<cstdio> #include<cmath> #include<cstring> #include<iostream> #inclu ...
- 【Neo4j查询优化系列】如何快速统计节点的关系数
在图数据库中我们经常需要统计节点上的关系数目.一种常见的查询写法是这样的: MATCH (n:Person {name:'Keanu Reeves'})-[]-() RETURN count(*); ...
- iView的page 组件
//html <div class="pageNation"> <Page :total= totalPages :page-size= pageSize siz ...
- 【牛客网-剑指offer】用两个栈实现队列
题目: 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 知识点及概念: 队列:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而 ...
- shell位置参数和专用参数举例
- KiCAD绘制器件内部逻辑符号库
KiCAD绘制器件内部逻辑符号库 像比较器,运放这些器件,里面是由多个相同的part组成,有时候我们只需要用到其中一个或者某几个,又或者是为了在原理图中更清楚的表达出逻辑关系,需要单独绘制内部的逻辑符 ...
- 【CSS】text-align:justify 的使用
工作需要写一个全是文本的网页,规范格式的时候发现很多css属性不是很熟悉,比如text-align:justify. 这个是两端对齐,css3中新增了text-justify属性 语法:text-ju ...
- 【LeetCode】Hash
[451] Sort Characters By Frequency [Medium] 给一个字符串,要求返回按照字母出现频率的排序后的字符串.(哈希表+桶排) 有个技巧是Hash用Value作为In ...
- Hadoop常用端口和定义方法
Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如 ...
- JavaScript实现时间上一天和下一天切换
JavaScript实现时间上一天和下一天切换 1.先获取时间戳毫秒数 var date = new Date()//实例化时间戳 var time = date.getTime()//获取当前毫秒数 ...