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进行安装包的制作了,虽然思路差不 ...
随机推荐
- 代码编译与反编译 (.py文件与.pyc文件互转)
# 将.py文件转化为.pyc文件,实现代码隐藏的需要,转化后的.pyc文件将在当前目录的__pycache__文件夹下. # .pyc文件的使用与.py文件的使用相同. .py -> .pyc ...
- Codeforces New Year and Arbitrary Arrangement
New Year and Arbitrary Arrangement time limit per test2 seconds You are given three integers k, pa a ...
- Vue_子级组件调用主组件函数
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- shell数组变量
- gradle笔记
gradle笔记 一.基础知识 1.1.groovy语言 Groovy适用于Java虚拟机的一种敏捷的动态语言,他是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言,使用该 ...
- window下Mysql 恢复Delete删除的数据
转载:https://www.cnblogs.com/q149072205/p/11940591.html 本机用的Navicat连mysql测试DB又连了正式DB,因为本地与正式要频繁操作所以都打开 ...
- JMeter 常用网站
1.jmeter插件 https://blog.csdn.net/weixin_39430584/article/details/80947093 http://www.doc88.com/p-214 ...
- java统计一个子串在指定字符串中出现的次数
今天查着用了用String类里的几个方法,分享下代码 题目要求:统计一个子串在指定字符串中出现的次数( 提示java字串出现了6次) public class SearchSameString { p ...
- leetcode-162周赛-1255-得分最高的单词集合
题目描述: 方法:穷举暴力 class Solution: def maxScoreWords(self, words: List[str], letters: List[str], score: L ...
- 误将SELINUXTYPE看成SELINUX后,将其值改为disabled。导致操作系统服务启动,无法进入单用户模式
环境:Redhat 6.4 ORACLE11g RAC 在安装ORACLE11g之前需要关闭操作系统的防火墙和SELinux. 1.关闭防火墙:iptables -F————————————清除防火墙 ...