首先開發板實物圖以下:html
在本篇文章中,咱們將詳細介紹Arduino開發板的硬件電路部分,具體來講,就是介紹Arduino Uno開發板的引腳分配圖及定義。Arduino Uno微控制器採用的是Atmel的ATmega328。 Arduino Uno開發板的引腳分配圖包含14個數字引腳、6個模擬輸入、電源插孔、USB鏈接和ICSP插頭。引腳的複用功能提供了更多的不一樣選項,例如驅動電機、LED、讀取傳感器等。在這篇文章中,咱們將介紹Arduino Uno引腳的功能。編程
Arduino Uno引腳分配圖網絡
Arduino Uno引腳分配 - 電源ui
Arduino Uno開發板可使用三種方式供電:編碼
● 直流電源插孔 -可使用電源插孔爲Arduino開發板供電。電源插孔一般鏈接到一個適配器。開發板的供電範圍能夠是5-20V,但製造商建議將其保持在7-12V之間。高於12V時,穩壓芯片可能會過熱,低於7V可能會供電不足。spa
● VIN引腳 - 該引腳用於使用外部電源爲Arduino Uno開發板供電。電壓應控制在上述提到的範圍內。設計
● USB電纜 - 鏈接到計算機時,提供500mA/5V電壓。htm
在電源插孔的正極與VIN引腳之間連接有一個極性保護的二極管,額定電流爲1安培。blog
您使用的電源決定了可用於電路的功率。例如,使用USB爲電路供電時,電流最大限制在500mA。考慮到該電源也用於爲MCU、外圍設備、板載穩壓器和與其鏈接的組件供電。當經過電源插座或VIN爲電路供電時,可用的最大電流取決於Arduino開發板上的5V和3.3V穩壓器。接口
● 5v和3v3
根據製造商的數據手冊,它們提供穩壓的5V和3.3v,向外部組件供電。
● GND
在Arduino Uno引腳分配圖中,能夠看到有5個GND引腳,它們都是互連的。
GND引腳用於閉合電路迴路,並在整個電路中提供一個公共邏輯參考電平。務必確保全部的GND(Arduino、外設和組件)相互鏈接而且有共同點。
● RESET - 復位Arduino開發板。
● IOREF - 該引腳是輸入/輸出參考。它提供了微控制器工做的參考電壓。
Arduino Uno引腳分配 - 模擬輸入
Arduino Uno有6個模擬引腳,它們做爲ADC(模數轉換器)使用。
這些引腳用做模擬輸入,但也可用做數字輸入或數字輸出。
模數轉換
ADC表示模擬到數字轉換器。 ADC是用於將模擬信號轉換爲數字信號的電子電路。模擬信號的這種數字表示容許處理器(其是數字設備)測量模擬信號並在其操做中使用它。
Arduino引腳A0-A5可以讀取模擬電壓。在Arduino上,ADC具備10位分辨率,這意味着它能夠經過1,024個數字電平表示模擬電壓。 ADC將電壓轉換成微處理器能夠理解的位。
一個常見的ADC例子是IP語音(VoIP)。每部智能手機都有一個麥克風,可將聲波(語音)轉換爲模擬電壓。這經過設備的ADC,轉換成數字數據,經過互聯網傳輸到接收端。
Arduino Uno引腳分配 - 數字引腳
Arduino Uno的引腳0-13用做數字輸入/輸出引腳。其中,引腳13鏈接到板載的LED指示燈;引腳三、五、六、九、十、11具備PWM功能。
須要注意的是:
● 每一個引腳可提供/接收最高40 mA的電流。但推薦的電流是20毫安。
● 全部引腳提供的絕對最大電流爲200mA。
數字電平意味着什麼?
數字是一種表示1位電壓的方式:0或1。Arduino上的數字引腳是根據用戶需求設計爲輸入或輸出的引腳。數字引腳能夠打開或關閉。開啓時,它們處於5V的高電平狀態,當關閉時,它們處於0V的低電平狀態。
在Arduino上,當數字引腳配置爲輸出時,它們設置爲0或5V。
當數字引腳配置爲輸入時,電壓由外部設備提供。該電壓能夠在0-5V之間變化,並轉換成數字表示(0或1)。爲了肯定這一點,有2個閾值:
● 低於0.8v - 視爲0。
● 高於2.0v - 視爲1。
將組件鏈接到數字引腳時,確保邏輯電平匹配。若是電壓在閾值之間,則返回值將不肯定。
什麼是PWM?
一般,脈寬調製(PWM)是一種調製技術,用於將消息編碼爲脈衝信號。 PWM由兩個關鍵部分組成:頻率和佔空比。 PWM頻率決定了完成單個週期(週期)所需的時間以及信號從高到低的波動速度。佔空比決定信號在總時間段內保持高電平的時間。佔空比以百分比表示。
在Arduino中,支持PWM的引腳產生約500Hz的恆定頻率,而佔空比根據用戶設置的參數而變化。見下圖:
WM信號用於直流電機的速度控制,調光LED等。
通訊協議
串行(TTL) - 數字引腳0和1是Arduino Uno的串行引腳。
它們由板載USB模塊使用。
什麼是串行通訊?
串行通訊用於在Arduino板和其餘串行設備(如計算機,顯示器,傳感器等)之間交換數據。每塊Arduino板至少有一個串口。串行通訊發生在數字引腳0(RX)和1(TX)以及USB上。 Arduino也支持經過數字引腳與SoftwareSerial Library進行串行通訊。這容許用戶鏈接多個支持串行的設備,並保留主串行端口可用於USB。
軟件串行和硬件串行 - 大多數微控制器都具備用於與其餘串行設備進行通訊的硬件。軟件串行端口使用引腳更改中斷系統進行通訊。有一個用於軟件串行通訊的內置庫。處理器使用軟件串行來模擬額外的串行端口。軟件串行惟一的缺點是它須要更多的處理,而且不能支持與硬件串行相同的高速。
SPI - SS / SCK / MISO / MOSI引腳是SPI通訊的專用引腳。它們能夠在Arduino Uno的數字引腳10-13和ICSP插頭上找到。
串行外設接口(Serial Peripheral Interface,SPI)是一種串行數據協議,由微控制器用來與總線中的一個或多個外部設備進行通訊,如鏈接。 SPI也能夠用來鏈接2個微控制器。在SPI總線上,老是有一個設備表示爲主設備,其他全部設備都表示爲從設備。在大多數狀況下,微控制器是主設備。 SS(從選擇)引腳肯定主器件當前正在與哪一個器件通訊。
啓用SPI的器件始終具備如下引腳:
● MISO(主從輸出) - 用於向主設備發送數據的線路
● MOSI(主機輸出從機輸入) - 發送數據到外圍設備的主機線
● SCK(串行時鐘) - 由主設備生成的用於同步數據傳輸的時鐘信號。
I2C - SCL / SDA引腳是I2C通訊的專用引腳。在Arduino Uno上,它們能夠在模擬引腳A4和A5上找到。
I2C通訊協議一般稱爲「I2C總線」。 I2C協議旨在實現單個電路板上組件之間的通訊。使用I2C時,有2條通訊線,稱爲SCL和SDA。
● SCL是用於同步數據傳輸的時鐘線。
● SDA是用於傳輸數據的通信線。
I2C總線上的每一個器件都有一個惟一的地址,最多能夠在同一條總線上鏈接255個器件。
Aref - 模擬輸入的參考電壓。
中斷 - INT0和INT1。 Arduino Uno有兩個外部中斷引腳。
外部中斷 - 外部中斷是外部干擾出現時發生的系統中斷。干擾可能來自用戶或網絡中的其餘硬件設備。 Arduino中這些中斷的常見用途是讀取編碼器產生的方波或外部事件喚醒處理器的頻率。
Arduino有兩種形式的中斷:
● 外部輸入
● 引腳狀態變化
ATmega168 / 328上有兩個外部中斷引腳,稱爲INT0和INT1。 INT0和INT1分別映射到引腳2和3。相反,引腳變化中斷能夠在任何引腳上激活。
Arduino Uno引腳定義 - ICSP插頭
ICSP表示在線串行編程。該名稱源自在系統編程(ISP)。 Arduino相關的製造商,如Atmel,開發了本身的在線串行編程插頭。這些引腳使用戶可以編程Arduino開發板上的固件。 Arduino開發板上有6個ICSP引腳,可經過編程電纜鏈接到編程器設備。
瞭解引腳定義
Arduino Uno開發板是當今市場上最流行的開發板之一,這就是爲何咱們在本文中主要介紹這款開發板。本篇文章主要介紹了其大部分功能,但也有不少高級的選項,咱們在這篇文章中沒有涉及。
要爲項目選擇開發板時,須要瞭解的重要一點是其功能和侷限性。理解開發板使用的不一樣通訊協議也很重要。固然,你不須要記住全部這些信息,你能夠回到這篇文章並閱讀相關信息。
若是您有任何意見或疑問,歡迎您在下面進行回覆,固然,請隨時與您喜好Arduino的朋友分享這篇文章。
轉載自yiboard論壇 :https://www.yiboard.com/thread-831-1-1.html