第一个物联网程序


要开始学习物联网,首先,了解如何使用面包板和微控制器制作电路非常重要。然后,使用程序控制该电路也很重要。有一些模拟器可以让物联网初学者学习这两个概念,而无需使用物联网设备。但是,要获得真实的结果,使用电路组件并制作实际电路非常重要。在本文中,通过两个不同的示例,给出了开始物联网编程的方法。在示例 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 等模拟器上制作第一个物联网程序。另一方面,如果物联网设备可用,则可以实际制作电路并查看结果。这里,通过两个不同的示例,展示了实际和虚拟地创建相同类型的电路,并提供了创建程序来处理和控制物联网项目的方法。

更新于:2023年4月18日

568 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.