
我一直使用的Arduino的中文資料.docx
5页轉自台灣 arduino 官網的概述Arduino Duemilanove ("2009") 是一個基於 ATmega168(datasheet)或者ATmega328(datasheet) 的微控制器板,有 14 路數字輸入/輸出,其中六路可作為PWM 輸出, 6 路模擬輸入,一個 16MHz 晶振,一個 USB 連接器,一個電源插座,一個 ICSP 座,和一個復位按鈕它已包括一個微控制器應有的一切,直接將它用USB 線連上計算機或者用一個電源適配器給它供電,就可以開始使用了"Duemilanove" 在意大利語中是 2009 的意思,名字取自發佈年份,Duemilanove 目前是 Arduino USB 系列中的最新型號電路設計參考EAGLE 文件 : arduino-duemilanove-reference-design.zip 電路圖: arduino-duemilanove-schematic.pdf 總體參數微控制器 ATmega168/ATmega328操作電壓 5V推薦輸入電壓 7-12V極限輸入電壓 6-20V數字 I/O 腳數 14 , 其中六路提供 PWM 輸出模擬輸入腳數 6I/O 腳直流電 40 mA流3.3 伏腳的電流 50 mA閃存 16 KB (ATmega168) or 32 KB (ATmega328) ,其中 2KB 用於bootloaderSRAM 1 KB (ATmega168) or 2 KB (ATmega328)EEPROM 512 bytes (ATmega168) or 1 KB (ATmega328)時鐘頻率 16 MHz電源Arduino Duemilanove 可以由 USB 口或者外接電源供電,電源會自動切換。
外部電源( 非 USB 模式)可以是電源適配器或者電池,適配器可以用 2.1 毫米中心正極的插頭接在 Arduino 板的電源插座上,由電池引出的電源線可以插在地(GND)腳和電源輸入(POWER)的 VIN 腳這塊板子可以在外部電源 6-20V 之間工作,然而如果外部供電小於 7V,那麼 5V 的輸出腳可能會達不到額定輸出電壓5V,如果輸入電壓超過 12V,穩壓器可能會過熱,推薦的輸入電壓範圍在 7-12V.電源針腳描述如下:VIN. Arduino 板由外部供電時的電源輸入腳(相對於 USB 供電),你可以經由此腳給 Arduino 供電,或者由外部電源適配器供電時,由此腳讀取輸入電壓5V. 經過穩壓的電源,可以給微控制器或其它板上的器件供電,此電源可以來自VIN,或者來自 USB 電源或其他 5V 供電 3V3. 由板上的 FTDI 芯片產生的 3.3v 電壓,最大提供 50ma 電流 GND. 接地. 存儲ATmega168 有 16K 閃存來保存代碼(其中 2K 用於 BOOTLOADER),ATmega328 有 32K 閃存,同樣 2K 用於 BOOTLOADER,ATmega168 有 1K SRAM 和 512 字節的 EEPROM,可以由 EEPROM 庫函數來讀寫,ATmega328有 2K SRAM 和 1K EEPROM。
輸入輸出14 個數字腳每一個都可以用作輸入輸出,用 pinMode(),digitalWrite 和digitalRead()函數來操作這些針腳的工作電壓是 5V,每一個都可以提供或者接受最大 40mA 的電流,並且有內置的上接電阻,默認處於斷開狀態,電阻值為 20-50 千歐,除此之外,一些腳有特別的用處:串口: 0 (RX) and 1 (TX). 用於接收(RX)和傳送( TX)TTL 串行數據,這兩腳接在相應的 FTDI 芯片 USB 轉到 TTL 串行芯片上 外部中斷: 2 and 3. 這兩腳可以配置成中斷觸發,由外部低電平,上升和下降或者電平的變化,參見 attachInterrupt 函數 PWM: 3, 5, 6, 9, 10 和 11. 提供 8 位 PWM 輸出,函數 analogWrite() SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). 這些腳用來支持 SPI 通信,雖然硬件支持這一特性,但目前在 Arduino 語言中無相應的函數提供這一操作 LED: 13. 內置的 LED,接在數字腳 13 上,此腳輸出高電平時,LED 點亮,否則熄滅。
Duemilanove 提供 6 路模擬輸入,每一路輸入解析值為 10 位(1024 個可能值),默認的度量值從接地到 5V,可以從 AREF 腳改變這一參考電壓,通過函數analogReference()控制,並且其中某些腳有特殊用途I2C: 4 (SDA) and 5 (SCL). 支持 I2C (TWI)通信,由庫函數 Wire library 提供支持其它板上的針腳定義:AREF. 模擬輸入的參考電壓,能過 analogReference()函數操作 Reset. 復位,將它設為低於電平來復位微控制器,典型應用是在模塊將內部的復位鍵擋住後,在外部添加一個復位按鈕連接到此腳 通信Arduino Duemilanove 有大量的輔助程序來實現與計算機和其它 Arduino 板,或其它微控制器的通信,ATmega168 和 ATmega328 提供 UART TTL(5V)經針腳0(RX )和腳 1(TX)的串行通信,板載的 FT232RL 將 USB 通信轉換為串行通信,FTDI 的驅動會在計算機上生成一個虛擬的串口 Arduino 開發環境包括一個串口監視器,可以使簡單的將數據發送到計算機,或者從計算機接受數據。
當通過FTDI 芯片進行串行通信時,Rx 和 Tx 燈會閃爍通過庫函數 SoftwareSerial 可以通過 Deumilanove 的任意數字 I/O 針腳進行串行通信ATmega168 和 ATmega328 同樣支持 I2C 和 SPI 協議, Arduino 環境包含一個 Wire 庫來簡化 I2C 總線的使用,參見 相關文檔 如果想使用 SPI 協議,請參考 ATmega168 或者 ATmega328 的 datasheet編程Arduino Duemilanove 可以使用 Arduino 開發環境來編程( 下載) 在"工具>板類型" 菜單中選擇相應的 Arduino 板ATmega168 或者 ATmega328 出廠時已燒錄了 bootloader,這樣方便你上傳新的代碼而不必借用外部的編程器, 它使用 STK500 通訊協議 (參考文檔, C 頭文件)你也可以繞過 bootload,直接使用 ICSP 來對微控制器編程,詳細步驟請參考使用指南自動(軟件)復位在以前的版本中,上傳程序前需要手工按一下復位按鈕,而Duenilanove(2009)版本設計成可以通過計算機上的軟件來進行復位。
FT232RL硬件上的一根控制線(DTR )已通過一個 100NF 的電容連接至ATmega168/ATmega328 的復位腳,當此線電平下降,復位線電平下降足夠的時間使得 ATmega168 或者 ATmega328 復位Arduino 環境使用這個特性簡化了上傳程序的過程,只需要點擊「上傳」按鈕就可以了這意味著由於 DTR 可以和上傳動作很好的協調,從而使 bootloader 可以有比較短的超時時間這種設計還有其它的含義當 Duemilanove 連接到運行 MAC OS X 或者 LINUX 機器上的時候,在每次用軟件連接到 Arduino 板時它都會自動復位.在此後的大約半秒內,bootloader 是處於運行狀態bootloader 雖然是設計成會自動忽略非法數據(除了上傳代碼之外的任意數據),在每次連接建立時,它還是會攔截送到板上的最初幾個字節數據因此如果一個在板上運行的小程序需要在第一次運行時接受配置數據,一定要保證和它通信的程序在連接建立後等待約一秒鐘才開始發送數據Duemilanove 有一條特定的線路,可以被切斷從而禁止自動復位兩面的焊點位置可以焊起來從而重新開啟自動復位功能,這個點被標識為「RESET-EN」,你也可以用一個 110 歐的電阻連到 5V 電源來禁止自動復位,詳情請見 Arduino 論壇討論區貼子 。
USB 過流保護 Arduino Duemilanove 有一個可復位的熔斷器來保護計算機的 USB 口,防止短路或者過流雖然大部分計算機都有它們內置的保護措施,熔斷器還是可以提供額外的保護,如果連到 USB 口的電源超過 500mA,它將自動斷開,直到短路或者過流消除物理參數PCB 最大長度和寬度分別為 2.7,2.1 英吋(註:6.0cm,5.33cm),包括 USB 座和電源插座可能會超過這個數值,三個螺絲孔用來將板子連接到機箱或者其它的表面,注意針腳 7 和 8 之間的距離是 160mil,並不是其它針腳之間距離 100mil 的整數倍如何念 Duemilanove?下面是這塊板子的名字的意大利語發音 WAV, OGG, MP3, FLAC, WMA 。












