购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 Arduino UNO

Arduino UNO是Arduino系列的旗舰版,适合初学者和高级用户。Arduino UNO是Arduino系列开发板中最常用的。如果刚开始使用Arduino进行开发,这是很适合的开发板,如图1-1所示。

图1-1 Arduino UNO

1.1.1 概述

Arduino UNO是基于ATmega328的微控制器板。它有14个数字输入输出引脚(其中6个可用作PWM输出)、6个模拟输入、16MHz陶瓷谐振器、USB连接、电源插孔、ICSP接头连接器和复位按钮。它包含支持微控制器所需的一切功能,只需使用USB电缆将其连接到计算机或使用AC到DC适配器或电池供电即可开始使用。

Arduino UNO与以前的开发板的不同之处在于它不使用FTDIUSB到串行驱动芯片。相反,它将ATmega16U2(ATmega8U2 R2版本)编程为USB到串行转换器。

Arduino UNO开发板的第二版,有一个电阻将8U2 HWB线拉到接地端,使其更容易进入DFU模式。

Arduino UNO第三版具有以下新功能:

引脚排列:添加靠近AREF的SDA引脚、SCL引脚以及放置在RESET引脚附近的另外两个引脚,IOREF允许为扩展板上提供电压,将来,扩展板与开发板兼容,其中,AVR采用5V工作电压,Arduino DUE使用3.3V工作电压,第二个是未连接的引脚,用于将来的扩展;

更强的RESET电路;

ATmega16U2代替8U2。

Arduino UNO是该系列的参考版本,不断向前推进。Arduino UNO是Arduino USB系列产品中最早的,也是Arduino平台的参考模型。其微控器的参数及开发板参数如表1-1和表1-2所示。

表1-1 Arduino UNO微控器参数

表1-2 Arduino UNO总体参数

1.1.2 技术规范

本部分主要介绍Arduino UNO开发板的电源、存储器、输入和输出、通信、编程、自动复位(软件)。USB过流保护和物理特性。

1.电源

Arduino UNO可以通过USB连接或外部电源供电,电源自动选择。

外部(非USB)电源可以来自AC到DC适配器(壁式)或电池。可以通过将2.1mm中心正极插头插入电路板的电源插孔来连接适配器。电源线可以插入电源接头的GND和Vin引脚。

该板可以在6~20V的外部电源工作。然而,如果提供的电压小于7V,则5V引脚的供给电压可能会小于5V,而且电路板可能不稳定。如果使用12V以上的电压,电压调节器可能会过热并损坏电路板,推荐的范围是7~12V。

电源引脚如下:

Vin:使用外部电源时Arduino板的输入电压(与通过USB连接或其他稳压电源提供的5V电压相对)。通过电源插座提供电压,则可通过该引脚使用。

5V:该引脚通过电路板上的稳压器输出5V电压。电路板可由DC电源插座(7~12V)、USB连接器(5V)或电路板的Vin引脚(7~12V)供电。通过5V或3.3V引脚供电会旁路稳压器,从而损坏电路板,不建议如此。

3V3:由板上稳压器产生的3.3V电源,最大电流消耗为50mA。

GND:接地引脚。

IOREF:Arduino板上的该引脚提供微控制器的工作电压参考。配置得当的扩展板可以读取IOREF引脚电压,选择合适的电源或者启动输出上的电压转换器以便在5V或3.3V电压下运行。

2.存储器

ATmega328具有32KB闪存(其中0.5KB被启动加载器占用)。它还具有2KB的SRAM和1KB的EEPROM(可以利用EEPROM库读取和写入)。

3.输入和输出

利用pinMode()、digitalWrite()和digitalRead()功能,UNO上的14个数字引脚都可用作输入或输出。它们的工作电压为5V。每个引脚都可以提供或接受最高40mA的电流,都有1个20~50kΩ的内部上拉电阻器(默认情况下断开)。此外,某些引脚还具有特殊功能:

串行:0(RX)和1(TX)。用于接收(RX)和发送(TX)TTL串行数据。这些引脚连接到ATmega8U2 USB至TTL串行芯片的相应引脚。

外部中断:2和3。这些引脚可配置为在低电平值、上升沿、下降沿触发中断或值的更改。有关详细信息,请参阅attachInterrupt()函数。

PWM:3、5、6、9、10和11引脚,使用analogWrite()功能提供8位PWM输出。

SPI:10(SS)、11(MOSI)、12(MISO)、13(SCK)。这些引脚支持使用SPI库的SPI通信。

LED:有1个内置式LED连至数字引脚13。在引脚为高值时,LED打开;引脚为低值时,LED关闭。UNO有6个模拟输入,编号为A0至A5,每个模拟输入都提供10位的分辨率(即1024个不同的数值)。默认情况下,它们的电压为0~5V,但是可以利用AREF引脚和analogReference()功能改变其范围的上限值。此外,某些引脚还具有特殊功能。

TWI:A4或SDA引脚,A5或SCL引脚。使用Wire库支持TWI通信。板上还有一些其他引脚。

AREF:模拟输入的参考电压与analogReference()一起使用。

Reset:使该线为低电平以复位微控制器,通常用于为扩展板添加复位按钮。

4.通信

Arduino UNO有很多工具可供与计算机、另一个Arduino或其他微控制器通信之用。ATmega328提供了可在数字引脚0(RX)和1(TX)上进行的UART TTL(5V)串口通信。电路板上的ATmega16U2会通过USB进行该串行通信,在计算机上充当软件的虚拟通信端口。16U2固件采用标准USB COM驱动器,无需外部驱动器。然而,在Windows上,需要1个.inf文件。Arduino软件包含1个串行监控器,使得简单的文本数据能够发送到其他设备或从Arduino板上发出。当通过USB转串口芯片和计算机的USB连接传输数据时,电路板上的RX和TX LED会闪烁(但不适于引脚0和引脚1上的串行通信)。

一个SoftwareSerial库允许在任何Arduino UNO的数字引脚上进行串行通信。

ATmega328还支持I2C(TWI)和SPI通信。Arduino软件包括一个Wire库,用于简化I2C总线的使用,对于SPI通信,请使用SPI库。

5.编程

Arduino UNO可以使用Arduino软件进行编程,从Tools→Board菜单中选择Arduino UNO(根据板上的微控制器)。

Arduino UNO上的ATmega328预先烧录了启动加载器,从而无须使用外部硬件编程器即可将新代码上传给它,利用原始的STK500协议进行通信。

可以旁路启动加载器,利用Arduino ISP等通过ICSP(在线串行编程)接口为微控制器编程。提供ATmega16U2(或Rev1和Rev2电路板内的8U2)固件源代码。ATmega16U2/ 8U2配有DFU启动加载器,它可以通过下列方式激活:

在Rev1板上:连接板背面的焊接跳线(意大利地图附近),然后重置8U2;

在Rev2或更高版本的电路板上:有一个电阻将8U2/16U2 HWB线拉到地,更容易进入DFU模式。

然后,可以使用Atmel的FLIP软件(Windows)或DFU编程器(Mac OSX和Linux)加载新的固件,或者使用ISP与外部编程器(覆盖DFU引导加载程序)。

6.自动(软件)复位

Arduino UNO的设计让它能够被运行于连接的计算机之上的软件复位,而不需要在上传前按下复位按钮。ATmega8U2/16U2的一条硬件流程控制线路(DTR)通过1个100nF的电容器与ATmega328的复位线路连接。该线路被复位(降低)时,复位线路电压下降足够大以至于复位芯片。Arduino软件利用该能力,只需在Arduino环境中按下上传按钮即可上传代码。这就意味着,启动加载器的暂停时间更短,因为降低DTR能够和开始上传协调一致。

该设置还有其他含义。Arduino UNO连至运行Mac OSX或Linux的计算机时,每次通过软件(通过USB)连接时它都会复位。在接下来的0.5s左右的时间内,启动加载器在UNO上运行。虽然它被设定为忽略不良数据(即除了上传新代码以外的任何数据),但它会在连接打开之后拦截发送给电路板数据的前几个字节。如果在它首次起动时,在电路板上运行的Arduino程序,收到了一次性配置或其他数据,请确保与之通信的软件在打开连接之后,稍等片刻再发送该数据。

Arduino UNO有一条迹线,切断它可禁用自动复位。可将迹线两边的焊盘焊到一起来重新启用它。它标有RESET-EN的字样。还能够通过在5V电源和复位线路之间连接1个110Ω的电阻器来禁用自动复位。

7.USB过流保护

Arduino UNO有1根自恢复保险丝,能够保护计算机USB端口免遭短路和过电流的损害。尽管大部分计算机都有它们自己的内部保护,但保险丝提供了更多一层保护。如果施加到USB端口上的电流超过500mA,那么保险丝会自动切断连接,直到短路或过电流情况消失为止。

8.物理特性

Arduino UNO PCB的最大长度和宽度分别为2.7inch和2.1inch(inch为英寸,1inch=2. 54cm),USB连接器和电源插座超出了以前的尺寸。4个螺丝孔让电路板能够附着在表面或外壳上。请注意,数字引脚7和8之间的距离是160mil(0.16″)(1mil=0.0254mm),不是其他引脚间距(100mil)的偶数倍。 BPSU4YELx1HCKL5C+Q+QzsARWGsc4xpDW56gqITpeWEDkniheWVRCBes+G+xfCjG

点击中间区域
呼出菜单
上一章
目录
下一章
×