一、预备知识
开发环境:VScode
开发语言:C++
开发板:ESP8266-NodeMCU
物联网:IOT(Internet Of Things),是人工智能应用的重要组成部分
二、开发板详细介绍
图片来源:ESP8266-NodeMCU硬件参考 – 太极创客 (taichi-maker.com)
ESP8266-NodeMCU
组成部分:ESP8266芯片 + NodeMCU开发板名称
ESP8266芯片四周布满引脚,因为引脚非常小,所以需要使用到开发板,把芯片的引脚引到开发板上,这样操作会更加方便
ESP8266是由中国企业乐鑫科技研发
数字引脚 + 一个模拟引脚(ADC):
数字引脚电压3.3V,连接的电压不能超过3.3V
模拟引脚可读取电压违反:0-1V
TX:发送数据;RX:接收数据
三、互联网基础
1.互联网协议
网络设备互相交流使用的是互联网协议(TCP/IP协议)
TCP/IP协议分为四层:
分层名称 | 包含协议 |
应用层 | HTTP, FTP, mDNS, WebSocket, OSC … |
传输层 | TCP, UDP |
网络层 | IP |
链路层(网络接口层) | Ethernet, Wi-Fi … |
(1)链路层(也称网络接口层)
ESP8266利用WiFi联网时有三种工作模式:
接入点模式(AP):手机等设备可以通过ESP8266发射的WiFi信号进行连接,从而实现设备之间的通信。ESP8266可以建立wifi网络(可以时名称,也可以是密码),其他设备可以通过查找她空间中的WiFi找到ESP8266所建立的WiFi网络就可以连接了
无线终端模式(STA):通过路由WiFi或者手机热点(本人使用)
混合模式(AP+STA):以上两种混合
(2)网络层IP
IPV4和IPV6
(3)网络层
TCP协议:
特点稳;
保证所有数据都能被接收端接收;
数据的传输顺序不会打乱;
传输数据如有损坏则重发受损数据。
应用领域:电子邮件;文件传输......
UDP协议:
UDP比TCP速度快;
不保证所有数据都能被接收端接收;
数据一旦受损,UDP协议将抛弃受损数据;
有数据损坏不会重发受损数据
应用领域:在线语音/视频;网游
(3)应用层
HTTP协议:
四、物联网开发基础
1.下载驱动程序
本人使用的CH340驱动
2.为开发板搭建开发环境
使用的Visual Studio Code开发环境,在Visual Studio Code中下载PlatformIO IDE插件
3. ESP8266-NodeMCU网络服务器