ESP8266 WIFI模块开发笔记一 NONRTOS开发
2016-05-05 20:35
661 查看
现在物联网如火如荼,很多老产业都在转型,投入到物联网平台的热潮中。目前高端市场可能会用RT5350或则MT7620路由芯片走网络,低端市场乐鑫的ESP8266就比较火了,价格10块左右。开发也很简单,官方直接有现成的AT指令。本文主要讲解NONRTOS固件开发,为原创博客,希望转载的小伙伴注明出处哦~
乐鑫其实是国外的一家公司。
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/quiet.gif)
最新的资料包我就打包上传了,小伙伴们可以去下载ESP8266
最新固件包
4000
层的代码都封装成库了,对我们不透明的。实际开发中只需要调用API的接口就可以了,我们可以不需要关心底层的网络。ESP8266片子预留了6个左右的IO供二次开发使用,这个足够我们对于一些小型的设备只需用一颗片子就可以跑了,极大的降低了成本与开发进度。
点击打开链接
打开SDK文件夹,我先讲下文件目录与代码结构吧,先上图。
![](https://img-blog.csdn.net/20160514145514817?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
app:用于存放用户应用代码,包括程序的主入口user_main.c
bin: 默认存放编译成功后的bin文件
driver_lib:存放外围的.c驱动与.h文件,包括uart、I2C、SPI等等
examples:提供IOT_Demo、AT、smart_config等应用示例
include:该目录下存放的是应用程序的相关头文件
ld:编译时使用的连接文件,一般无需修改。(脚本会自动配置)
lib:存放ESP8266SDK的库文件
tools:工具目录
还有比较重要的文件就是Makefile,这个是规定编译与连接规则的。这个我们不需要修改,但是需要知道有这个东西。需要深入的自己百度makefile吧。
由于官方并没有这块的IDE,目前编译可以采用cygwin或者官方的虚拟机跑得一个交叉编译器。我推荐采用cygwin,直接通过输入命令行就可以编译了。
目前网上已经有比较多的视屏教程了,推荐边看视屏边学习,可以比较快上手。
概述:
一、初步了解ESP8266
8266为32位的SOC芯片,采用的是MIPS构架。芯片不带ROM,所以一般都通过SPI外挂FLASH作为程序储存器。内部留有50KRAM给用户开发使用(官方是这么说的)。官方提供了两款SDK给用户开发,NONRTOS和FREERTOS。乐鑫其实是国外的一家公司。
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/quiet.gif)
最新的资料包我就打包上传了,小伙伴们可以去下载ESP8266
最新固件包
二、AT指令的开发
这个适用于开发时间比较短的使用,相当于把8266当作外挂的透传模块使用,收发数据都通过串口执行。开发者需要外挂一个至少有一路串口的MCU,根据AT指令文档就能走网络了。8266出厂官方都会预先烧录AT固件的,这个没太多的东西,我就不细讲了。二、NONRTOS固件开发
NONRTOS其实就是类似裸跑程序了,单线程没有任务的调度。乐鑫把网络4000
层的代码都封装成库了,对我们不透明的。实际开发中只需要调用API的接口就可以了,我们可以不需要关心底层的网络。ESP8266片子预留了6个左右的IO供二次开发使用,这个足够我们对于一些小型的设备只需用一颗片子就可以跑了,极大的降低了成本与开发进度。
2.1.文件夹的名称介绍
先下载8266的SDK,我把最新的SDK上次了,小伙伴就到这里下载把。点击打开链接
打开SDK文件夹,我先讲下文件目录与代码结构吧,先上图。
app:用于存放用户应用代码,包括程序的主入口user_main.c
bin: 默认存放编译成功后的bin文件
driver_lib:存放外围的.c驱动与.h文件,包括uart、I2C、SPI等等
examples:提供IOT_Demo、AT、smart_config等应用示例
include:该目录下存放的是应用程序的相关头文件
ld:编译时使用的连接文件,一般无需修改。(脚本会自动配置)
lib:存放ESP8266SDK的库文件
tools:工具目录
还有比较重要的文件就是Makefile,这个是规定编译与连接规则的。这个我们不需要修改,但是需要知道有这个东西。需要深入的自己百度makefile吧。
由于官方并没有这块的IDE,目前编译可以采用cygwin或者官方的虚拟机跑得一个交叉编译器。我推荐采用cygwin,直接通过输入命令行就可以编译了。
目前网上已经有比较多的视屏教程了,推荐边看视屏边学习,可以比较快上手。
相关文章推荐
- <玩转电商系统>读书笔记
- 【转】Android 手机连接台式电脑无线 Wi-Fi 上网
- STM32 IO口双向问题
- 下一代互联网与技术平台的选型分析
- WiMAX与Wi-Fi、DSL和3G的竞合关系
- 物联网被纳入十二五规划
- ARM公布“物联网”嵌入式mbed OS系统软件平台
- 物联网“十二五”规划或9月出台
- Wi-Fi WPS种类
- 物联网的兴起与二维码的前景
- 6款实惠好用的Windows Wi-Fi工具
- 难以长久的“物联网”
- 物联网时代
- 近距离无线通讯兵器谱
- 【视频】趣谈物联网及物联网感知端的开发
- 在国内市场《智能家居》的可行性发展
- zigbee网蜂cc2530组播实验,基于SampleApp例程
- 和菜鸟一起学android4.0.3源码之wifi direct的简单分析(转载)
- 利益第一,隐私第二
- 大数据和物联网时代的隐私伪命题