www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

首頁(yè) > 評(píng)測(cè) > 創(chuàng)客入門(mén)首選板——Arduino UNO評(píng)測(cè)

創(chuàng)客入門(mén)首選板——Arduino UNO評(píng)測(cè)

  • 作者:seesea
  • 來(lái)源:21ic
  • [導(dǎo)讀]
  • Arduino (美國(guó)境外稱 Genuino)是目前非常流行的創(chuàng)客工具,它封閉了底層硬件,有豐富庫(kù)提供使用,讓使用者專注于功能的實(shí)現(xiàn),達(dá)到簡(jiǎn)單快速的開(kāi)發(fā),即使是非專業(yè)的人員也可以很快上手。

上面的 analogWrite() 只能固定頻率輸出可調(diào)整占空比的方波,另外一個(gè)用于播放簡(jiǎn)單音樂(lè)使用的 tone() 函數(shù)則反過(guò)來(lái)固定 50% 占空比地輸出可調(diào)整頻率的方波,如下輸出中音 C 的音調(diào),使用取整后的頻率 131:

14.jpg
15.jpg

ADC

UNO 提供了六個(gè) ADC 引腳,對(duì)于使用一些模擬輸出的傳感器如聲光溫濕磁等模擬輸出的傳感器非常方便,如下使用電位器來(lái)模擬模擬輸出的傳感器(是不是有點(diǎn)繞口 :D,一個(gè)模擬是動(dòng)詞,一個(gè)模擬是名詞):

16.jpg

17.jpg

中斷

UNO 有定時(shí)器/計(jì)數(shù)器中斷,串口中斷及外部中斷。這里著重于外部中斷。

UNO 有兩個(gè)外部中斷,分別在 2 和 3 號(hào)數(shù)字引腳上。如下示例,測(cè)試時(shí)通過(guò)引腳 2 在高低電平間切換來(lái)觸發(fā)中斷:

19.jpg

I2C

除了串口,模塊之間很常用的接口是 I2C 接口,UNO 已經(jīng)準(zhǔn)備好了:

這里使用傾角傳感器 ADXL345 模塊來(lái)做測(cè)試,通過(guò)傾斜 x 和 y 方向,可以看到數(shù)據(jù)的變化:

21.jpg
22.jpg

SPI

同樣的,模塊之間另一個(gè)常用接口是 SPI 接口,UNO 也已經(jīng)準(zhǔn)備好了:

這里拿一個(gè)現(xiàn)成的小作品來(lái)示例,如下 328P(下載好程序的 UNO 上取下的芯片) 通過(guò) I2C 讀取 ADXL345 的數(shù)據(jù),通過(guò) SPI 接口的 NRF24L01 發(fā)送數(shù)據(jù)。另外一個(gè) UNO 則通過(guò) SPI 連接另一個(gè) NRF 模塊來(lái)接收前者發(fā)送的數(shù)據(jù)。從而實(shí)現(xiàn)一個(gè)重力遙控裝置。

23.jpg

22.jpg

使用 ICSP 接口下載程序:

Arduino 中 328P 有預(yù)先寫(xiě)好的 bootloader,這樣使得我們可以直接使用串口下載程序,這給大家做實(shí)驗(yàn)帶來(lái)了便利,但這樣會(huì)導(dǎo)致在啟動(dòng)時(shí)要先運(yùn)行 bootloader,并且串口有一些時(shí)間在等待上位機(jī)的程序下載,另外就是 bootloader 也占用了 0.5k 的存儲(chǔ)空間。如果你的程序要放到產(chǎn)品中,或上電就要串口通信,或是程序太大就差一點(diǎn)點(diǎn)空間實(shí)在沒(méi)法優(yōu)化,這時(shí)候可以考慮通過(guò) ICSP 接口使用 ISP 方式下載程序,覆蓋掉bootloader 使用全部的存儲(chǔ)空間。這樣做的結(jié)果是之后再下載程序也必須使用 ISP下載。ISP 方式需要特殊的編程器,這里示范使用 USBasp 來(lái)下載,也可以通過(guò)一個(gè) Arduino 板子來(lái)做 ISP 下載器,可以參考官方的詳細(xì)教程:https://www.arduino.cc/en/Tutorial/ArduinoISP。

首先要選擇使用的下載器:

24.jpg

然后選擇菜單“使用編程器上傳”,靜待成功。完成后有輸出一些信息,如下黃框是提示 USBasp 需要升級(jí)固件的,反正還能用,不用理會(huì)它:

25.jpg

接線圖:

26.jpg

重?zé)齜ootloader:

上述覆蓋了 bootloader,如果要恢復(fù)原來(lái)的 Arduino 使用 USB 線自動(dòng)下載的功能則需要恢復(fù) bootloader,這時(shí)候同樣需要 ISP 編程器,連接方式同上,于 IDE 中選擇相應(yīng)的板子型號(hào)后,使用 Burn Bootloader 菜單進(jìn)行燒寫(xiě):

27.jpg

總結(jié)

1. Arduino UNO 板上資源豐富,可以滿足大部分創(chuàng)客制作需求

2. Arduino UNO 接口豐富,可以與大部分模塊、傳感器連接

3. Arduino UNO 推出較早,很多的擴(kuò)展板均以此為標(biāo)準(zhǔn)

4. Arduino UNO使用的最多,Arduino 示例基本上使用 UNO 進(jìn)行教學(xué)

5. Arduino UNO 價(jià)格較低

綜上,Arduino UNO 是創(chuàng)客入門(mén)的不二之選。

參考資料

1. Atmega328p 數(shù)據(jù)表

2. UNO 電路原理圖

3. Arduino IDE 下載

4. Arduino 語(yǔ)言參考

 

本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開(kāi)放投稿

熱門(mén)標(biāo)簽
項(xiàng)目外包 more+