Arduino UNO數據手冊

2020-08-16 11:08:13

 

 

概述

Arduino UNO是基於ATmega328P的Arduino開發板。它有14個數字輸入/輸出引腳(其中6個可用於PWM輸出)、6個模擬輸入引腳,一個16 MHz的晶體振盪器,一個USB介面,一個DC介面,一個ICSP介面,一個復位按鈕。它包含了微控制器所需的一切,你只用簡單地把它連線到計算機的USB介面,或者使用AC-DC適配器,再或者用電池,就可以驅動它。

\"Uno\" 在意大利語中意思是「一」。Arduino UNO是Arduino系列的一號開發板,Arduino IDE 1.0是Arduino IDE的第一個正式版本,Arduino UNO硬體和Arduino IDE軟體建立了一套Arduino開發標準,此後的Arduino開發板和衍生產品都是在這個標準上建立起來的。

技術參數

型號

Arduino UNO

微控制器

ATmega328P

工作電壓

5 V

輸入電壓(推薦)

7-12 V

輸入電壓(極限)

6-20 V

數位I/O引腳

14

PWM通道

6

模擬輸入通道(ADC)

6

每個I/O直流輸出能力

20 mA

3.3V埠輸出能力

50 mA

Flash

32 KB(其中載入程式使用0.5 KB)

SRAM

2 KB

EEPROM

1 KB

時鐘速度

16 MHz

板載LED引腳

13

長度

68.6 mm

寬度

53.4 mm

重量

25 g

程式設計

可通過Arduino IDE對Arduino UNO程式設計。

在Arduino UNO使用ATmega328 晶片上,儲存有bootloader程式,使得使用者可以上傳程式到開發板上,而不需要使用額外的程式設計器。這個上傳程式的過程使用STK500協定完成。

你也可以不使用bootloader,通過ICSP介面連線程式設計器給Arduino UNO上傳程式。

注意事項

Arduino Uno上有一個自恢復保險絲,當短路或過流時,電流超過500mA,其可以自動斷開供電,從而保護計算機的USB埠和Arduino。雖然大多數計算機USB埠都提供了內部保護,但是此保險絲可以提供了額外的保護。

電源

可以通過USB口或者直流電源座給Arduino Uno供電。Arduino UNO帶有自動切換電源功能。

電源引腳如下:

Vin

電源輸入引腳。當使用外部電源通過DC電源座供電時,這個引腳可以輸出電源電壓。

5V

5V電源引腳。使用USB供電時,直接輸出USB提供的5V電壓;使用外部電源供電時,輸出穩壓後的5V電壓。

3V3

3.3V 電源引腳。最大輸出能力爲50 mA。

GND

接地引腳

IOREF

I/O參考電壓。其他裝置可通過該引腳識別開發板I/O參考電壓。

儲存空間

ATmega328 有32KB Flash儲存空間(其中0.5KB被用於儲存bootloader),2KB 的SRAM和1KB 的EEPROM。

可以使用官方提供的EEPROM庫讀寫EEPROM空間。

輸入輸出

Arduino Uno有14個數字輸入輸出引腳,可使用 pinMode()、digitalWrite() 和 digitalRead() 控制。

其中一些帶有特殊功能,這些引腳如下:

Serial序列 連續的

0(RX)、1(TX),被用於接收和發送串列埠數據。這兩個引腳通過連線到ATmega16u2來與計算機進行串列埠通訊。

外部中斷:

2、3,可以輸入外部中斷信號。中斷有四種觸發模式:低電平觸發、電平改變觸發、上升沿觸發、下降沿觸發。

PWM輸出:

3、5、6、9、10、11,可用於輸出8-bit PWM波。對應函數 analogWrite() 。

SPI:

10(SS)、11(MOSI)、12(MISO)、13(SCK),可用於SPI通訊。可以使用官方提供的SPI庫操縱。

L-LED:

13。13號引腳連線了一個LED,當引腳輸出高電平時開啓LED,當引腳輸出低電平時關閉LED。

TWI:

A4(SDA)、A5(SCL)和TWI介面,可用於TWI通訊,相容I²C通訊。可以使用官方提供的Wire庫操縱。

Arduino Uno 6個模擬輸入引腳,可使用analogRead()讀取模擬值。每個模擬輸入都有10位解析度(即1024個不同的值)。預設情況下,模擬輸入電壓範圍爲0~5V,可使用 AREF引腳和analogReference()函數設定其他參考電壓。

相關引腳如下:

AREF:

模擬輸入參考電壓輸入引腳。

Reset:

復位埠。接低電平會使Arduino復位,復位按鍵按下時,會使該埠接到低電平,從而讓Arduino復位。

指示燈(LED)

Arduino UNO帶有4個LED指示燈,作用分別如下:

ON:

電源指示燈。當Arduino通電時,ON燈會點亮。

TX:

串列埠發送指示燈。當使用USB連線到計算機且Arduino向計算機傳輸數據時,TX燈會點亮。

RX:

串列埠接收指示燈。當使用USB連線到計算機且Arduino接收到計算機傳來的數據時,RX燈會點亮。

L:

可程式化控制指示燈。該LED通過特殊電路連線到Arduino的13號引腳,當13號引腳爲高電平或高阻態時,該LED 會點亮;低電平時,不會點亮。可以通過程式或者外部輸入信號,控制該LED亮滅。

通訊

Arduino UNO具備多種通訊介面,可以和計算機、其他Arduino或者其他控制器通訊。

ATmega328 提供了UART TTL (5V)串列埠通訊,其位於0 (RX) 和1 (TX)兩個引腳上。Uno上的ATmega16U2會在計算機上模擬出一個USB串列埠,使得ATmega328 能和計算機通訊。Arduino IDE提供了串列埠監視器,使用它可以收發簡單文字數據。Uno上的RX\TX兩個LED可以指示當前Uno的通訊狀態。

SoftwareSerial庫可以將Uno的任意數位引腳模擬成串列埠,從而進行串列埠通訊。

ATmega328也支援I2C (TWI)和SPI通訊。Arduino IDE自帶的Wire庫,可用於驅動I2C匯流排,自帶的SPI庫,可用於SPI通訊。

自動復位

一些開發板在上傳程式前需要手動復位,而Arduino Uno的設計不需要如此,在Arduino Uno連線電腦後可以由程式控制其復位。在ATmega16U2上的DTR信號端,經過一個100nf 的電容,連線到ATmega328 的復位引腳。

當計算機發出DTR信號時(低電平),復位端將得到一個足夠長的脈衝信號,從而復位ATmega328。在Arduino IDE中點選上傳程式,在上傳前即會觸發復位,從而執行載入程式,完成程式上傳。