前言:
各個(gè)Arduino產(chǎn)品其實(shí)都是對Arduino最小系統(tǒng)的各種功能擴(kuò)展與集成,萬變不離其宗,如果自己會做Arduino最小系統(tǒng)了,就可以很方便地定制出特殊功能的專用Arduino。另外,相信通過這篇文章,大家也會改變“Arduino就是買來的一塊控制板”的印象。
我們就用市面上最常見的ATmega8芯片來介紹怎樣自己搭建一個(gè)最小系統(tǒng)。先來看一下芯片實(shí)物圖(見圖1),這是一個(gè)標(biāo)準(zhǔn)DIP封裝的ATmega8。
圖1 DIP封裝的ATmega8
然后我們再看一下DIP封裝的ATmega8芯片的引腳圖(見圖2),每個(gè)引腳對應(yīng)的是Arduino的哪個(gè)端口,圖上也已經(jīng)標(biāo)出。
圖2 ATmega8芯片引腳及與Arduino端口的對應(yīng)關(guān)系
硬件連接
一個(gè)最小系統(tǒng),我們只需要一個(gè)16MHz晶體振蕩器與兩個(gè)22pF電容,按照如圖3所示的樣子連接9、10引腳即可,大家可以參照在面包板上的實(shí)物連接來看。
最小系統(tǒng)的硬件部分其實(shí)就這么簡單,但是Arduino之所以叫做Arduino,并不單單是硬件,一定要有配套的軟件,我們現(xiàn)在就用Arduino 1.0.1 IDE把Bootloader下載進(jìn)這個(gè)最小的硬件系統(tǒng)。
圖3 Arduino最小系統(tǒng)連接方法
通過下載器下載程序
下載器使用USBTINYISP,ICSP接口的1號口接D12,3號口接D13,5號口接RESET,2號口接VCC,3號口接D11,6號口接GND,如圖4所示。
圖4 Arduino最小系統(tǒng)與USBTINYISP下載器連接
先把USB線接上,給USBTINYISP安裝驅(qū)動后,我們點(diǎn)擊進(jìn)入Arduino 1.0.1 IDE,“板卡”選擇“Arduino NG or olderw/ATmega8”,
“編程器”選擇USBTINYSIP,點(diǎn)擊“燒寫B(tài)ootloader”,就可以看到下載器的BUSY燈開始亮,過不到1分鐘后,Bootloader就下載好了,如圖5所示。
然后我們打開官方例子里的BLINK代碼,如圖6所示,也就是讓D13引腳輸出1s高電平,然后輸出1s低電平,循環(huán)往復(fù),如果D13引腳接上一個(gè)LED,就會有閃爍的效果。
圖6 打開官方例子里的BLINK代碼
這里很關(guān)鍵,編譯程序后,選擇“文件”里的“使用編程器下載”,如圖7所示。下載好以后,給D13引腳接上一個(gè)LED,就可以看到LED在閃爍了。
圖7 編譯程序后,選擇“使用編程器下載”
通過串口下載程序
除了使用編程器下載,我們也可以對下載好Bootloader的最小系統(tǒng)通過串口下載,但是因?yàn)槊姘咫娐返碾娖鳝h(huán)境比較差,無法使用高速通信的Bootloader,所以如果要進(jìn)行下面的最小系統(tǒng)實(shí)驗(yàn),我們需要更換0022版本的IDE。
首先,按照上面的步驟重新給ATmega8芯片刷0022 IDE的ArduinoNG控制板的Bootloader(此Bootloader速度慢一些,但是容易實(shí)現(xiàn)手工復(fù)位下載程序)。
我們給D13引腳串聯(lián)一個(gè)220Ω的電阻和一顆LED(用作指示燈);給RST引腳串聯(lián)一個(gè)10kΩ電阻,接VCC;同時(shí)再給RST引腳接一個(gè)按鈕,按鈕另一端接GND,用來做手工復(fù)位。實(shí)物連接如圖8所示。
圖8 在面包板上連接電阻、LED和按鈕
然后,我們把USB TO TTL的VCC接最小系統(tǒng)面包板上的VCC,GND接GND,TX接D0,RX接D1,如圖9所示。
圖9 Arduino最小系統(tǒng)與USB TO TTL連接
運(yùn)行Arduino 0022 IDE,“板卡”選擇“Arduino NG or olderw/ATmega8”,選好識別出來的端口號,同樣選擇BLINK程序例子,編譯,下載。
請注意,下載時(shí)有一個(gè)最關(guān)鍵的步驟,那就是在點(diǎn)擊下載按鈕后(見圖10),要立刻手工按一下面包板上的復(fù)位按鈕,程序才可以正常下載。下載好以后,我們就可以看到LED在閃爍了。
圖10 點(diǎn)擊下載按鈕后,要立刻按一下面包板上的復(fù)位按鈕,程序才可以正常下載。
Arduino最小系統(tǒng)只是一個(gè)系統(tǒng)運(yùn)行的最低要求,其他可以根據(jù)自己的實(shí)際需要進(jìn)行擴(kuò)展,做出來自己個(gè)性化的Arduino。
-
控制板
+關(guān)注
關(guān)注
5文章
272瀏覽量
32064 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192187
發(fā)布評論請先 登錄
romeo控制板能改用用arduino控制板嗎?
請問自制的arduino控制板不能直接用Arduino IDE燒錄程序怎么辦?
基于Arduino UNO控制板的語音播放器設(shè)計(jì)
Arduino UNO控制板發(fā)送串口協(xié)議是如何控制語音播放器播放歌曲的
舵機(jī)控制板的電壓是多少_舵機(jī)控制板使用說明
控制板的分類
控制板是什么
控制板是什么_控制板的作用是什么
空調(diào)控制板如何檢修呢?
dfrobotSIM808 控制板簡介

dfrobot Arduino Nano控制板介紹

Arduino轉(zhuǎn)接控制板的電路原理圖免費(fèi)下載

基于Arduino控制板的多功能數(shù)字萬年歷設(shè)計(jì)

評論