在本教程中,我们将介绍Arduino!我想很多人会把它们和树莓派单板机产品线混淆,它们是非常不同的产品,做着相似但不同的事情。我敢肯定,如果你有一点点DIY的癖好,你一定听说过有人在他们的项目中使用Arduino。Arduino是什么,它是怎么工作的?让我们来看看!

Let 's Talk Arduino视频

我们制作了一个关于Arduino和micro控制器的视频,除了一些真实的例子外,还介绍了本文中的所有内容,例如Mike使用Arduinos构建的全尺寸R2-D2副本!

很多人认为Arduino是一种单板计算机,但实际上它是基于一个微控制器的,所以我们先来了解一下微控制器和通用计算机的区别。计算机有一个为广泛用途而设计的微处理器(或CPU)。这可以是任何事情,从玩游戏到文字处理,再到控制机器人。计算机是万事通,样样不精。计算机通常也运行Linux、Windows或MacOS等操作系统。

微控制器是一个芯片上的系统,它被设计用于非常专门的目的。它们不运行操作系统,而是运行自定义固件。没有计算机完整的操作系统,它们的速度非常快,效率很高,只需要很少的电力,甚至可以在有限的电池电量下运行。

微控制器随处可见,从微波炉到汽车。它们甚至是价值数百万美元的环绕地球的卫星的核心!

Arduino简介

Arduino所做的基本上非常简单,但却非常强大,并围绕微控制器开创了一个完整的行业。微控制器早在Arduino出现之前就已经存在了,但它们很难编程,对初学者来说也很难学。Arduino为一组特定的微控制器创建了一个开源电子平台。

Arduino板在中心包含一个微控制器,以及与之接口的所有附加硬件,包括模拟和数字I/O、电压调节,甚至用于上传代码的USB串行I/O。有许多不同类型的Arduino董事会,如Uno和Mega。

ARDUIO还创建了一个集成开发环境(IDE),它使得使用ARDUIO编程语言(基于C++语言的简化版本)来创建板上微控制器的草图的简单程序变得简单。IDE将这些草图编译成微控制器可以理解的机器代码。这为初学者打开了平台,大大降低了入门门槛,同时也使平台对高级用户更加健壮。这个IDE可以在Windows、MacOS甚至Linux上使用。

它使代码从你的计算机到微控制器的过程变得非常简单,只需插入USB线并点击上传按钮。这是一个游戏规则的改变,当它被引入。接下来,在Arduino的介绍中,我们来谈谈Shields。

Arduino随后在这个平台上建立了一个叫做Shield的东西。Arduino Shields是设计在Arduino顶部并添加额外功能的电路板。有添加以太网和Wifi的网络盾牌。或机器人屏蔽添加步进电机和伺服控制器。甚至还有盾牌,可以让你用Arduino板创建一个MP3播放器!

相关:Arduino传感器列表

由于Arduino的设计是开源的,任何想要的制造商都可以制作电路板。现在他们不能称它们为Arduino,但他们可以说它们是Arduino兼容的。你最终会得到像LAVFIN Uno这样的产品,它是官方Arduino Uno的一个精确的克隆。这些克隆版到处都是,它们通常比官方版便宜一些。

去一家极客酒吧!

Arduino Uno之旅

现在我们知道了Arduino是什么,让我们继续我们对Arduino的介绍让我们参观一下。

Arduino微控制器

我们先来看看Arduino Uno,因为我相信它是你能找到的最普通的Arduino。Arduino Uno的核心是微控制器。这个特殊的Uno有一个表面安装的Atmega328P,但许多Uno都有一个通孔式微控制器,比如这个。

驱动Arduino

Arduino的供电可以从USB端口或直流桶插孔完成。事实上,Arduino会自动无缝地在两者之间切换。这对于电池操作的项目来说是非常棒的。它可以让你更换电池而不用重启Arduino。这里需要注意的是,虽然Arduino将从5V USB电源工作,但桶形插孔应该在7V到12V之间,因为它后面有一个电压调节器,需要最低6.2V输出稳定的5伏电压。

USB连接

在介绍Arduino时,让我们谈谈USB,Arduino上实际上有两个微型控制器。这个较小的第二个微控制器运行的是专门为连接到PC的USB端口和上传代码而设计的固件。这是阿杜伊诺创造的魔法的一部分。固件上传并运行后,这就是将数据写入Arduino草图中串行控制台的同一芯片。

Arduino状态led

这里有三个非常方便的LED灯!TX和RX让您知道串行数据何时来回移动。当事情没有按计划进行时,这是一个很好的故障排除指示器。另一个连接到数字管脚13。当我想点亮状态指示灯进行故障排除时,我经常使用这个LED,而不需要在我的试验板上连接LED。只需将引脚13定义为输出,并将其设置为高或低!

重置Arduino

接下来是复位开关。每个Arduino都有一个。这就像重置你的电脑按钮。它迫使Arduino重新启动电源循环并从头开始执行。

电源插脚

在我们介绍Arduino的过程中,让我们转到引脚。Arduino Uno具有连接性,如果您升级到像Mega 2560这样的Arduino,您可以为更多设备获得更多连接!

这些销钉是动力轨。在电源轨道上,您可以访问接地,3.3V和5V引脚。此外,还有一个复位引脚和一个电压,也可以用来为连接到桶形千斤顶相同的电压调节器的Arduino供电。

ICSP连接器

接下来是ICSP连接器或电路内串行编程器。这组引脚允许您绕过IDE的所有引导加载程序和功能,直接对ATMega微控制器进行编程。这对于重新编程损坏的Arduino或生产装配线上的批量编程非常方便。

数字I/O和串行引脚

继续移动,引脚0和1用于发送和接收串行数据。这些可用于在Arduino和其他设备之间传输串行数据。一些屏蔽,如蓝牙屏蔽,使用这些引脚作为其主要接口方式。引脚2至13是数字I/O引脚。这些引脚可用于通过数字输入和输出控制其他设备。这意味着+5V表示1,零伏表示二进制形式的零。此外,这些可以切换到软件中的输入引脚,以允许Arduino检测按钮的按下或接收来自另一个应用于引脚的5V设备的输入。您还会注意到其中一些管脚旁边有一个瓷砖。这意味着该引脚能够处理基于硬件的脉冲宽度调制(或PWM)。通过PWM,我们可以输出连续的5V脉冲,称为方波。此功能允许我们控制伺服和可寻址LED等设备。

模拟I/O引脚

接下来是模拟引脚A0到A5。模拟引脚的工作方式与数字引脚完全相同,有一个主要好处。当作为输入引脚工作时,它们可以读取0V和5V之间的任何电压。ADC具有10位分辨率,并返回0到1023之间的整数。完美的阅读输入的模拟操纵杆!如果你不需要模拟输入,你可以像使用任何数字引脚一样使用它们。

有些别针有双重用途

最后一点要指出。有些引脚支持双重用途。例如,A4和A5也是两线串行引脚I2C协议和引脚10到13也作为四线串行外围接口或SPI。更多内容将在以后的视频中介绍。

在项目中使用Arduino

现在你已经熟悉了Arduino,让我们来看看Arduino在我们的项目中的一些使用方法。我不会在这里讲太多的细节,但是有很多专门的教程和项目TheGeekPub.com你应该去看看Arduino。这是一个使用Arduino和超声波传感器来精确测量传感器和另一个物体之间的距离的演示。这可以用于机器人项目,以帮助您的机器人导航。

超声波传感器

在这个Arduino超声波传感器教程,我们将了解如何使用HC-SR04超声波传感器. 超声波传感器测量声音在发射器/接收器组合之间传播和反弹的时间。由此我们可以根据声速计算距离。在这个项目中,我们使用LCD字符显示用英寸和厘米来表示结果。

阿杜伊诺铁路道口

在这个项目中,我们用冰棒棒、一套伺服器和Arduino为孩子们制作了一个真实的火车交叉路口。这是真实世界系统(如十字路口、铁路、交通控制系统等)如何在其系统的核心使用微控制器的绝佳例子。

我们希望您喜欢这次对Arduino平台的介绍!如果您有任何问题,请在下面留言,我们将尽力为您解答!

一定要看看上面的视频,看看Arduinos被用于我的R2-D2!

下一个步骤

如果您有兴趣采取下一步步骤并学习如何开始使用Arduino,请单击下一步!