前言
由于核心板与开发板不同,每一次烧录要进行步骤相当多。为了懒以及更加简化相关步骤,因此尝试使用OTA进行远程升级代码,此部分仅介绍arduino部分,OTA传输也可通过服务器进行
借鉴
- 太极创客的相关示例操作
过程
第一次烧录的时候,需要使用tll或者相关方式去进行烧录,之后的话便可以通过网络来进行上传烧录示例代码
这里以太极创客的示例代码为例1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70/**********************************************************************
项目名称/Project : 零基础入门学用物联网
程序名称/Program name : OTA_Flash_Example
团队/Team : 太极创客团队 / Taichi-Maker (www.taichi-maker.com)
作者/Author : CYNO朔
日期/Date(YYYYMMDD) : 20200713
程序目的/Purpose :
本示例程序用于演示ESP8266的OTA功能。通过本程序,我们将启动ESP8266的OTA程序上传功能。
我们将无需使用连接线将ESP8266与电脑进行连接,而可以使用WiFi对ESP8266上传程序。
如需了解本程序的详细说明,请参考以下链接:
http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-tips/esp8266-ota/
-----------------------------------------------------------------------
其它说明 / Other Description:
本程序为太极创客团队制作的免费视频教程《零基础入门学用物联网 》中一部分。该教程系统的
向您讲述ESP8266的物联网应用相关的软件和硬件知识。以下是该教程目录页:
http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/
***********************************************************************/
// 闪烁时间间隔(秒)
const int blinkInterval = 2;
// 设置wifi接入信息(请根据您的WiFi信息进行修改)
const char* ssid = "taichimaker";
const char* password = "12345678";
Ticker ticker;
void setup() {
Serial.begin(9600);
Serial.println("");
pinMode(LED_BUILTIN, OUTPUT);
ticker.attach(blinkInterval, tickerCount); // 设置Ticker对象
connectWifi();
// OTA设置并启动
ArduinoOTA.setHostname("ZHYCarge"); //进行OTA名称的设置
ArduinoOTA.setPassword("12345678"); //设置密码,上传代码的时候会需要
ArduinoOTA.begin();
Serial.println("OTA ready");
}
void loop() {
ArduinoOTA.handle();
}
// 在Tinker对象控制下,此函数将会定时执行。
void tickerCount(){
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}
void connectWifi(){
//开始连接wifi
WiFi.begin(ssid, password);
//等待WiFi连接,连接成功打印IP
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi Connected!");
Serial.print("IP address:\t");
Serial.println(WiFi.localIP());
}将项目编译上传
与正常烧录一样,将esp8266连接到设备,选择好相关端口并进行烧录,等待上传完成
上传完成之后,esp8266芯片会自动重启,并指示灯会进行闪烁,我们需要手动将esp8266进行重启
通过串口监视器,我们发现esp8266已经连接上wifi并且OTA运行正常
之后我们可以打开端口选择界面,之后我们会发现在串口中多了一个网络串口的位置
点击它之后尝试更改一些信息,例如将OTA的名称更改为ZHYCarge_esp8266
并将密码更改为88888888
,之后点击上传代码,然后会弹出需要我们输入开发板的密码来进行代码上传
之后便会进行代码的上传
之后,我们会发现相关信息已经进行了更改