博主的 ESP8266开发之旅 专栏主要分为三个部分:

  • 基础篇
  • 网络篇
  • 应用篇

    从这一篇开始,博主将会带领各位读者在基础篇的基础上进入网络的世界。在此,博主认为各位读者已经具备以下前提:

  • 读者具有C语言以及Arduino的开发知识;
  • 读者已经可以自行烧写成功 Arduino Core For ESP8266的固件;

1. Arduino Core For ESP8266是什么?

    一开始刚接触Arduino Core For ESP8266的时候,博主和很多初学者一样,表示一脸懵逼,这到底是个什么鬼?

    对于开发人员来说,要想提高个人开发能力,必须知其然,并知其所以然。所以,万能的github能告诉我们这个到底是什么?请点击传送门 Arduino Core For ESP8266 github。说到底,它就是一个在Arduino平台上开发ESP8266的插件,特别适合有Arduino开发经验的入门者。
    同时,Arduino Core For ESP8266也有专门的官方文档说明,请点击传送门 ESP8266 Arduino Core。这个链接地址上的文档说明,建议初学者多次认真阅读,包含较多api方法说明。
    Arduino core for ESP8266为ARPUNO环境下的ESP8266芯片提供了支持。它允许您使用熟悉的Arduino函数和库编写代码,并直接在ESP8266上运行它们,不需要外部微控制器。
    ESP8266 Arduino内核提供了使用TCP和UDP通过WiFi进行通信的库,设置HTTP、mDNS、SSDP和DNS服务器,进行OTA更新,在闪存中使用文件系统,使用SD卡、伺服器、SPI和I2C外围设备。

2. Arduino core for ESP8266库

    为了向大家更好地讲解Arduino Core For ESP8266,麻烦大家 Arduino Core For ESP8266 github 代码clone或者download下来,然后用查看代码的IDE工具打开,博主这里使用了webstorm,可以看到以下的代码结构:

    目前,我们需要重点关注libraries目录,该目录下的库就是我们编写代码的基础库。博主根据库的作用,给读者整理了一个百度脑图,后期根据学习进度适量更新:

    仔细分析上图,根据功能区分,可以分为:

  1. Arduino功能,把ESP8266 当做 Arduino来使用
  • SD —— SD卡库
  • Servo —— 伺服电机库
  • Wire —— I2C库
  • SPI —— spi库
  • EEPROM —— eeprom库
  1. WiFi功能,其中又可以分为网络服务功能以及无线更新ESP8266功能。提供了使用TCP和UDP通过WiFi进行通信的库等等。
  • ESP8266WiFi —— wifi基础功能
  • ESP8266HTTPClient —— http客户端功能
  • ESP8266WiFiMulti —— ESP8266WiFi多连接功能
  • ESP8266WebServer —— 局域网web服务器功能
  • WiFiUdp —— UDP服务
  • ESP8266mDNS —— 局域网本地发现功能
  • DNSServer —— 真正的DNS域名服务
  • ArduinoOTA —— OTA无线更新

    读者重点关注脑图中的引入二字,后续的代码编写中会引入各种头文件,到时读者就应该知道具体的头文件拥有什么样的功能。

3. 总结

    本篇主要带读者从源码结构上初略理解Arduino core for ESP8266的整体库结构,让大家有个初步认识,干货不多,敬请原谅。

ESP8266开发之旅 网络篇① 认识一下Arduino Core For ESP8266的更多相关文章

  1. ESP8266开发之旅 网络篇⑯ 无线更新——OTA固件更新

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  2. ESP8266开发之旅 网络篇⑦ TCP Server & TCP Client

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  3. ESP8266开发之旅 网络篇⑧ SmartConfig——一键配网

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  4. ESP8266开发之旅 网络篇⑨ HttpClient——ESP8266HTTPClient库的使用

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  5. ESP8266开发之旅 网络篇⑩ UDP服务

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  6. ESP8266开发之旅 网络篇⑪ WebServer——ESP8266WebServer库的使用

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  7. ESP8266开发之旅 网络篇⑬ SPIFFS——ESP8266 SPIFFS文件系统

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  8. ESP8266开发之旅 网络篇③ Soft-AP——ESP8266WiFiAP库的使用

    1. 前言     在前面的篇章中,博主给大家讲解了ESP8266的软硬件配置以及基本功能使用,目的就是想让大家有个初步认识.并且,博主一直重点强调 ESP8266 WiFi模块有三种工作模式: St ...

  9. ESP8266开发之旅 网络篇④ Station——ESP8266WiFiSTA库的使用

    1. 前言     在前面的篇章中,博主给大家讲解了ESP8266的软硬件配置以及基本功能使用,目的就是想让大家有个初步认识.并且,博主一直重点强调 ESP8266 WiFi模块有三种工作模式: St ...

随机推荐

  1. 【Win10】时钟精确到秒

    [Win10]时钟精确到秒 前言 想要桌面右下角的时钟"xx:xx:xx"精确到秒,可以使用绿色免费开源软件Dism++,也可以从该软件的代码中读到方法:用注册表实现. 步骤 进入 ...

  2. [Linux] telnet 具体到某个端口Connection refused

    可以参考这个链接:https://q.cnblogs.com/q/106337/

  3. 搭建第一个node服务器

    1.在项目文件夹根目录创建app.js: (1)先引入模块 const http = require('http');//http是安装好node就有的一个模块,是用来创建http服务器的 (2)创建 ...

  4. 如何快速转载CSDN中的博客

    看到一篇<如何快速转载CSDN中的博客>,介绍通过检查元素→复制html来实现快速转载博客的方法.不过,不知道是我没有领会其精神还是其他原因,测试结果为失败.

  5. 虚拟机VMware14 pro下安装REHL5U11

    1. 创建虚拟磁盘,自定义,磁盘类型选IDE,确保安装系统过程中只有一个物理光盘驱动/ISO镜像: 2. 安装VMware Tools 2.1 虚拟机>安装VMware Tools 2.2 在光 ...

  6. Eureka Server不剔除已关停的节点的问题

    由于Eureka拥有自我保护机制,当其注册表里服务因为网络或其他原因出现故障而关停时,Eureka不会剔除服务注册,而是等待其修复.这是AP的一种实现. 自我保护机制:Eureka Server在运行 ...

  7. springboot 整合ehcache缓存

    1.CacheManager Spring Boot默认集成CacheManager,如下包所示: 可以看出springboot自动配置了 JcacheCacheConfiguration. EhCa ...

  8. 3DEarth PPT :一款专为GIS系统研发的三维汇报演示系统

    3DEarth PPT(三维地球汇报演示系统)又称 3DGis PPT,是专为GIS系统研发的三维汇报演示系统.对有3DGis系统的客户它可以作为一个组件(dll)嵌入原系统,对没有3DGis系统的客 ...

  9. Kafka常用命令合集

    在上一篇文章<Linux安装Kafka>中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息.这篇文章就介绍介绍Kafka的那些常用的命 ...

  10. VisualStudio自定义调试工具(GIS)

    闲言     偶尔分享技术,对,这次就是偶尔,几年一次(技术自卑).上周末竟然有人催更,也是受宠...若惊.以后会主动定期更的,可能. 前言   Visual Studio 调试器自带很多调试工具,调 ...