第一个物联网程序
要开始学习物联网,首先,了解如何使用面包板和微控制器制作电路非常重要。然后,使用程序控制该电路也很重要。有一些模拟器可以让物联网初学者学习这两个概念,而无需使用物联网设备。但是,要获得真实的结果,使用电路组件并制作实际电路非常重要。在本文中,通过两个不同的示例,给出了开始物联网编程的方法。在示例 1 中,使用了 Wokwi 模拟器,在示例 2 中,使用面包板、ESP32、LED、电阻和导线制作了实际电路,并使用 Arduino IDE 编写的 C 程序控制了这些组件。
示例 1:使用 Wokwi 入门以及第一个 C 语言物联网程序
Wokwi 是一个在线平台,可以在其中制作虚拟电路,编写控制这些电路的程序,然后测试结果。它是一个易于使用且免费的服务,可以帮助您开始学习物联网。Wokwi 的链接在此提供。
登录 Wokwi 后,首先在右侧区域制作电路,并在左侧代码区域使用 C 语言编写代码,如图 1 所示。
电路设计步骤和编码
步骤 1 − 登录 Wokwi。在 Wokwi 模拟器上启动一个新的 ESP32 项目。
步骤 2 − 使用“+”号将带有 ESP32 的面包板放置在虚拟电路区域。
步骤 3 − 将面包板的负轨连接到 ESP32 的 GND。
步骤 4 − 使用四个 LED。将 LED 的短脚连接到蓝色导轨,另一端连接到电阻。现在将电阻连接到 ESP32 引脚 (D32、D33、D25、D26)。
步骤 5 − 转到图表选项卡并找到所有 LED,以更改 LED 的颜色,因为它们最初都是红色的。
步骤 6 − 使用左侧的 Wokwi 代码区域编写 C 程序。
步骤 7 − 使用 Wokwi 上的播放按钮编译程序。检查结果。
代码
int delay_times = 200;
int coloredLed_pin[4]={32,33,25,26}; The First IOT program
int n, q;
void setup() {
for (int n=0; n<4; n++) {
pinMode(coloredLed_pin[n], OUTPUT);
}
delay(200);
}
void loop() {
//start from the lowest pin to the highest pin:
for (n=0; n<4; n++) {
digitalWrite(coloredLed_pin[n], HIGH);
delay(delay_times);
digitalWrite(coloredLed_pin[n], LOW);
}
//start from the highest pin to the lowest pin:
for (q=3; q>=0; q--) {
digitalWrite(coloredLed_pin[q], HIGH);
delay(delay_times);
digitalWrite(coloredLed_pin[q], LOW);
}
}
查看结果
程序编译完成后,只要在 Wokwi 上按下播放按钮,就可以看到结果。
图 1:显示 Wokwi 上的电路、程序和结果
示例 2:制作第一个物联网电路并使用 Arduino IDE 编写 C 程序
首先使用面包板、ESP32、3 个彩色 LED、3 个电阻和一些公对公线制作电路。然后需要 Arduino IDE 来编写 C 程序,编译它,然后将其推送到 ESP32 以执行。
因此,首先按照图 2 所示制作电路。然后使用 Arduino IDE 编写 C 程序。
电路设计步骤和编码
步骤 1 − 将 ESP32 微控制器连接到面包板。
步骤 2 − 将面包板的负轨连接到 ESP32 的 GND。
步骤 3 − 使用三个不同颜色的 LED。将 LED 的短脚直接连接到蓝色导轨,另一端连接到电阻。现在将电阻引脚连接到 ESP32 引脚 (D25、D26、D27)。
步骤 4 − 如果计算机上未安装 Arduino IDE,请下载并安装它。
步骤 5 − 启动 Arduino IDE。编写 C 程序并使用勾号进行编译。
步骤 6 − 通过按下勾号旁边的右箭头将程序上传到 ESP32。检查电路上的结果。
代码
//The time between leds on and off state
int delay_times = 200;
//Colored leds positive line through the resistors connected to pin D25, D26 //and D27 of ESP32
int coloredLed_pin[3]={25,26,27};
//variables to select leds one by one
int n, q;
void setup() {
for (int n=0; n<3; n++) {
// set all LEDs as Output components
pinMode(coloredLed_pin[n], OUTPUT);
}
delay(200);
}
void loop() {
//start from the lowest pin to the highest pin:
for (n=0; n<3; n++) {
//make an LED ON
digitalWrite(coloredLed_pin[n], HIGH);
delay(delay_times);
//make an LED OFF
digitalWrite(coloredLed_pin[n], LOW);
}
//start from the highest pin to the lowest pin:
for (q=2; q>=0; q--) {
//make an LED ON
digitalWrite(coloredLed_pin[q], HIGH);
delay(delay_times);
//make an LED OFF
digitalWrite(coloredLed_pin[q], LOW);
}
}
查看结果 - 示例 2
图 2:程序所需的实际电路以及显示 LED 高低电平的结果
本文介绍了如何制作第一个物联网程序并运行它以显示结果的方法。如果要学习该概念而不购买物联网设备,则可以在 Wokwi 等模拟器上制作第一个物联网程序。另一方面,如果物联网设备可用,则可以实际制作电路并查看结果。这里,通过两个不同的示例,展示了实际和虚拟地创建相同类型的电路,并提供了创建程序来处理和控制物联网项目的方法。
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP