Arduino学习之旅:从零开始的物联网探索

物联网的世界里,发现自己落后了。因此,决定开始物联网学习之旅。作为一个初学者,会分享学习经历,相信有很多人也在等待开始他们的探索。

选择了Arduino板作为学习起点。为什么呢?因为它经济实惠、易于使用,并且拥有自己的IDE,让可以编写代码并上传到板上。让先来了解一些Arduino的基本知识。

Arduino简介

Arduino是一个简单的微控制器,基于输入输出接收单元。可以将它连接到任何传感器、LED灯、开关等。最棒的是它是开源的,易于理解和使用。也可以为Arduino社区做出贡献,创建自己的原型程序。对于初学者来说,Arduino是最好的选择,会这么说!

要开始使用,首先需要一块Arduino板。所以,以非常低的价格在线购买它,大约是500卢比(印度货币)。将使用Arduino UNO板。

以上是简单的Arduino板,它能创造奇迹。让理解图中提到的点以及它们的用途!

这是连接的母端口,电缆插入这里以便与计算机建立连接,以便访问IDE并上传程序。通常它是2.0 USB端口。输入和输出通道通过这个端口进行,可以认为这是板的起点。通常可接受的电压是:

  • 输入电压(可接受)- 7-12V
  • 输入电压(限制)- 6-20V

顾名思义,这是外部电源。但使用时要小心,使用万用表检查可接受的电源限制,以避免短路。

用于连接跳线以形成接地电路的接地引脚。通常,当看到连接时,会意识到GND引脚被认为是负电源。

这是用于为电路提供5V电源的点,将在一会儿检查。

这是用于为电路提供3.3V电源的点。与5V相同,但根据电路需求,如果缺少电阻器,也可以使用这个。

IOREF:虽然在图中没有编号,但这是板上一个有趣的端口,它提供了微控制器或Arduino板操作的电压参考。

如上所述,这是外部电源到板的端口,用于将电压传递到电路(外部),可以使用这个端口。

这些是板上的模拟点,可以帮助将模拟输入转换为数字。通常用于读取模拟信号。

提供电路上传代码以连接(通俗术语)。用于数字I/O

这是不言而喻的,用于重置微控制器或板。

当连接到USB时,这个绿色LED灯会亮起,让知道板已通电。

供应给Arduino板的电压调节器。

这些是当代码或程序成功上传到微控制器时点亮的LED。这是到目前为止遇到的实践应用!

有关引脚的更多信息,请参考。

这就是关于Arduino板的简要总结,会这么说。还有很多内容。请参考。

一些先决条件

以下是学习并开始使用Arduino所需的一些先决条件。在从市场上购买Arduino板之后,下一项工作是在系统上安装Arduino IDE,以便与微控制器交互。

要安装IDE,请访问链接:。在这里,可以看到可以安装的操作系统列表,这证明了它是跨平台的!:O哇!这是另一个很棒的功能!

安装后,需要通过插线将USB插座连接到计算机,并将Arduino连接起来。

IDE看起来像这样:

标记下面突出显示的部分,它说Arduino UNO在COM3。COM3是一个串行端口ID,这表明选择在COM3端口上连接板。

对于使用MAC,请按照链接。选择在:

Tools-> Port-> "Select"

默认代码如下:

C# void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }

非常简单易懂。它首先进行设置,然后循环代码被执行以执行配置的主要任务。代码中内置了许多示例程序,可以在下找到。运行Blink程序并尝试理解它做了什么。非常简单。

Blink程序代码

C# // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); Serial.begin(9600); } // the loop function runs over and over again forever void loop() { digitalWrite(13, LOW); // turn the LED off(LOW is the voltage level) delay(1000); // wait for a second digitalWrite(13, HIGH); // turn the LED ON by making the voltage HIGH delay(1000); // wait for a second }

在这里,pinMode函数激活指定的引脚作为输入或输出。在这里它是引脚13,并且是输出。引脚13是众所周知的默认LED。在这里它设置了引脚,然后在循环方法中,找到了带有digital-Write前缀的方法,这表明连接是在数字引脚上。看到的方法有引脚端口号和另一个参数作为LOW/HIGH,可以被认为是1/0,以便点亮和熄灭LED 13。延迟被给出,以指定延迟时间点亮LED。

构建前的准备

在检查将要构建的内容之前,让看看要使用的其他组件。

这是所有电气或工程学生都熟悉的板。还是让简要介绍一下这个。正如在图片中看到的,+符号意味着要连接到这个端口的电压。整个线,列方式是连接的。每个加号列的孔都是内部连接的。可以使用万用表检查并验证面包板。

减号符号列也是如此。但是,这通常用于从Arduino连接接地引脚。a,b,c,d..列用于连接LED和电阻器,一会儿会看到。与+/-不同,这些是行内连接的。

这些是用于连接Arduino和面包板端口的连接线。它们便宜且可靠。它们看起来像:

接下来是设计电路,看起来像:

以上是基本的面包板连接电路。将提供整个电路连接的图片。在本文中,将分享如何通过串行端口获取用户输入,并使用它来打开和关闭LED。电路连接看起来像下面:

以上图表是参考。如果有任何疑问,可以添加与连接相关的查询。

正如看到的,使用了引脚13将Arduino程序连接到面包板。这就是说,上传的程序将用于通过引脚13操纵LED的开/关。让看看涉及的代码:

C# int userInput = 0; // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); Serial.begin(9600); } // the loop function runs over and over again forever void loop() { if (Serial.available() > 0) { // read the incoming byte: userInput = Serial.read(); // say what you got: Serial.print("Received Input: "); Serial.println(userInput, DEC); } if (userInput == 49){ // As checked through, if 1 is pressed, // the result comes to be 49 based on the ASCII code digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second } else { digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } }
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485