Eehk
Would you like to react to this message? Create an account in a few clicks or log in to continue.
Eehk

Electronic Engineer of Hong Kong
 
首頁首頁  Latest imagesLatest images  搜尋搜尋  會員註冊會員註冊  登入  

 

 自製 Arduino 控制板

向下 
發表人內容
alexli2k




帖子数 : 61
注册日期 : 2013-01-31

自製 Arduino 控制板 Empty
發表主題: 自製 Arduino 控制板   自製 Arduino 控制板 Empty周三 2月 13, 2013 8:22 pm

各個Arduino產品其實都是對Arduino最小系統的各種功能擴展與集成,萬變不離其宗,如果自己會做Arduino最小系統了,就可以很方便地定制出特殊功能的專用Arduino。另外,相信通過這篇文章,大家也會改變“Arduino就是買來的一塊控制板”的印象。

我們就用市面上最常見的ATmega8晶片來介紹怎樣自己搭建一個最小系統。先來看一下晶片實物圖(見圖1),這是一個標準DIP封裝的ATmega8

1 DIP封裝的ATmega8自製 Arduino 控制板 5042_20121023141030_aW1hZ2UwMDE=

然後我們再看一下DIP封裝的ATmega8晶片的引腳圖(見圖2),每個引腳對應的是Arduino的哪個埠,圖上也已經標出。自製 Arduino 控制板 5042_20121023151005_aW1hZ2UwMDQ=

2 ATmega8晶片引腳及與Arduino埠的對應關係

硬體連接

一個最小系統,我們只需要一個16MHz晶體振盪器與兩個22pF電容,按照如圖3所示的樣子連接910引腳即可,大家可以參照在麵包板上的實物連接來看。

最小系統的硬體部分其實就這麼簡單,但是Arduino之所以叫做Arduino,並不單單是硬體,一定要有配套的軟體,我們現在就用Arduino 1.0.1
IDE
Bootloader下載進這個最小的硬體系統。自製 Arduino 控制板 5042_20121023151042_aW1hZ2UwMDc=

自製 Arduino 控制板 5042_20121023151032_aW1hZ2UwMDU=3 Arduino最小系統連接方法

通過下載器下載程式

下載器使用USBTINYISPICSP介面的1號口接D123號口接D135號口接RESET2號口接VCC3號口接D116號口接GND,如圖4所示。
自製 Arduino 控制板 5042_20121023151037_aW1hZ2UwMTE=自製 Arduino 控制板 5042_20121023151008_aW1hZ2UwMDk=
4 Arduino最小系統與USBTINYISP下載器連接

先把USB線接上,給USBTINYISP安裝驅動後,我們點擊進入Arduino 1.0.1
IDE
,“板卡”選擇“Arduino NG or older w/ATmega8,“編程器”選擇USBTINYSIP,點擊“燒寫Bootloader”,就可以看到下載器的BUSY燈開始亮,過不到1分鐘後,Bootloader就下載好了,如圖5所示。
自製 Arduino 控制板 5042_20121023151050_aW1hZ2UwMTM=自製 Arduino 控制板 5042_20121023151055_aW1hZ2UwMTU=
5 下載Bootloader

然後我們打開官方例子裏的BLINK代碼,如圖6所示,也就是讓D13引腳輸出1s高電平,然後輸出1s低電平,循環往復,如果D13引腳接上一個LED,就會有閃爍的效果。
自製 Arduino 控制板 5042_20121023151006_aW1hZ2UwMTg=
6 打開官方例子裏的BLINK代碼

這裏很關鍵,編譯程式後,選擇“檔”裏的“使用編程器下載”,如圖7所示。下載好以後,給D13引腳接上一個LED,就可以看到LED在閃爍了。
自製 Arduino 控制板 5042_20121023151049_aW1hZ2UwMTk=
7 編譯程式後,選擇“使用編程器下載”

通過串口下載程式

除了使用編程器下載,我們也可以對下載好Bootloader的最小系統通過串口下載,但是因為麵包板電路的電器環境比較差,無法使用高速通信的Bootloader,所以如果要進行下面的最小系統實驗,我們需要更換0022版本的IDE

首先,按照上面的步驟重新給ATmega8晶片刷0022 IDEArduino NG控制板的Bootloader(此Bootloader速度慢一些,但是容易實現手工重定下載程式)。

我們給D13引腳串聯一個220Ω的電阻和一顆LED(用作指示燈);給RST引腳串聯一個10kΩ電阻,接VCC;同時再給RST引腳接一個按鈕,按鈕另一端接GND,用來做手工復位。實物連接如圖8所示。
自製 Arduino 控制板 5042_20121023151022_aW1hZ2UwMjA=
8 在麵包板上連接電阻、LED和按

然後,我們把USB TO TTLVCC接最小系統麵包板上的VCCGNDGNDTXD0RXD1,如圖9所示。
自製 Arduino 控制板 5042_20121023151001_aW1hZ2UwMjI=
9 Arduino最小系統與USB TO TTL連接

運行Arduino 0022 IDE,“板卡”選擇“Arduino NG or older w/ATmega8,選好識別出來的埠號,同樣選擇BLINK程式例子,編譯,下載。

請注意,下載時有一個最關鍵的步驟,那就是在點擊下載按鈕後(見圖10),要立刻手工按一下麵包板上的重定按鈕,程式才可以正常下載。下載好以後,我們就可以看到LED在閃爍了。
自製 Arduino 控制板 5042_20121023161056_aW1hZ2UwMjQ=
10 點擊下載按鈕後,要立刻按一下麵包板上的重定按鈕,程式才可以正常下載。

Arduino最小系統只是一個系統運行的最低要求,其他可以根據自己的實際需要進行擴展,做出來自己個性化的Arduino

~ 轉自博趣網 ~
回頂端 向下
 
自製 Arduino 控制板
回頂端 
1頁(共1頁)

這個論壇的權限:無法 在這個版面回復文章
Eehk :: Eehk :: Arduino 制作-
前往: