用Arduino UNO燒錄Attiny13A芯片這一款超小型的芯片可能是用的人較少的緣故,無論是中文的或者英文的資料,大部分都已經(jīng)不能完全照搬照抄了。而只能自己嘗試把眾多信息放在一起去研究它——所以這個(gè)記錄稍顯細(xì)致一些。 一、為什么是Attiny13A后面會(huì)用到https://github.com/MCUdude/MicroCore這個(gè)網(wǎng)址,是Arduino IDE用來支持Attiny13A的庫(kù),里面給出了使用Attiny13A的理由:超級(jí)便宜、直插和貼片封裝都有、與Attiny85代碼相同、可以使用Arduino大部分的函數(shù)和少量的幾個(gè)庫(kù)。這在上面的網(wǎng)址上都有介紹。 二、安裝Arduino IDE支持庫(kù)2.1 用Arduino IDE開發(fā)板管理器自動(dòng)安裝(由于墻的原因,極可能不成功)首先保證Arduino IDE的版本為1.6.13及以上,之后,在Arduino IDE的File/Preferences里即“文件/首選項(xiàng)”里面輸入以下鏈接 https://mcudude./MicroCore/package_MCUdude_MicroCore_index.json 之后打開Tools/Board/Boards Manager...菜單,之后在搜索欄里填寫Attiny,然后在列表里找到MicroCore by MCUdude安裝它。我這里已經(jīng)安裝好了,因此按鈕顯示的是Remove。 若在Win10里,它很可能被自動(dòng)安裝到 C:\用戶\user\AppData\Local\Arduino15\packages\MicroCore 很多時(shí)候,這個(gè)目錄是不允許打開的(可以申請(qǐng)權(quán)限),所以一次就能安裝正確是最好的,如果不能一次性安裝正確,就比較麻煩。 2.2 手動(dòng)安裝(偶爾會(huì)出找不到庫(kù)的問題)在https://github.com/MCUdude/MicroCore/releases/tag/v1.0.7頁(yè)面上下載MicroCore-1.0.7.zip文件回來,然后到Arduino官方網(wǎng)站下載一個(gè)zip版的Arduino IDE,把MicroCore-1.0.7.zip解壓縮在Arduino目錄下的hardware目錄里面,打開Arduino IDE,在Boards菜單里,就應(yīng)該能夠看到Attiny13了。 三、開始燒錄Attiny13A3.1 把Arduino UNO板制作成燒錄器打開Arduino IDE,然后選擇File/Examples/11.ArduinoISP/ArduinoISP,插上Arduino UNO板,燒錄。此時(shí)Arduino就成為燒錄器了。 3.2 給Attiny13A燒錄BootLoader所謂“BootLoader”,就是未來在芯片里的我們制作的程序在工作之前要運(yùn)行的一小段程序,是用來初始化的。Arduino開發(fā)板就是提前燒錄了BootLoader,才使我們用起來非常方便。 3.2.1 為了給Attiny13A燒錄BootLoader,需要給Arduino和Attiny13A接線。Attiny13A的引腳排序,前面已經(jīng)有圖示,接線如下: ATtiny13A leg 1 -> Arduino 10 ATtiny13A leg 5 -> Arduino 11 ATtiny13A leg 6 -> Arduino 12 ATtiny13A leg 7 -> Arduino 13 ATtiny13A leg 8 -> Arduino 5v ATtiny13A leg 4 -> Ground (GND) 3.2.2 設(shè)置Arduino IDE 到Tools菜單下,選擇Board: ATtiny 13,然后菜單會(huì)跳出一堆可設(shè)置的項(xiàng)目,設(shè)為圖中所示: Arduino UNO插好后,Port設(shè)為Arduino UNO開發(fā)板的端口號(hào)。設(shè)Programmer: Arduino as ISP(MicroCore)。 3.2.3 以上項(xiàng)目設(shè)置好之后,確認(rèn)Arduino已經(jīng)在前面制作成燒錄器,并在Tools里面設(shè)置好端口,Arduino UNO與Attiny13A之間接線正確,點(diǎn)擊Burn BootLoader。Attiny13a立即被燒錄,同時(shí)在IDE中顯示燒錄進(jìn)度,并在最后的階段顯示一些錯(cuò)誤信息。不必理會(huì),如果一切操作正確,已經(jīng)燒錄完畢,現(xiàn)在的這個(gè)Attiny13A已經(jīng)具備了Arduino開發(fā)板的基本特征,完全可以看成是自制的Arduino了,它與Arduino管腳間的對(duì)應(yīng)關(guān)系,在最最前面的圖上畫著,ADC、SPI、I2C等好象都是支持的,但是它只有1024字節(jié)的空間,估計(jì)也沒什么大的用處。 四、Attiny13A版的Blink改Blink為下面的程序。 void setup() { 在Arduino IDE里用Upload Using Programmer燒錄,如果提示錯(cuò)誤,把USB線拔下再重新插入,再次燒錄就好了。這個(gè)道理和國(guó)外原產(chǎn)的Gemma V1是類似的。 把高亮LED直接接在Attiny13A的3和4引腳間,即D4和GND之間,LED開始閃爍。 |
|