使用Atmega 16/16A制作Arduino復(fù)制板早期的Arduino主控芯片使用的是Atmega 8,在UNO R3時(shí)改成了Atmega 328,存儲(chǔ)空間由8k增至32k,其它都是相同的。 如果使用Atmega8/328“裸片”復(fù)制Arduino,就比較簡(jiǎn)單,因?yàn)锳rduino IDE原生就支持它們。 我初時(shí)學(xué)習(xí)Arduino時(shí),原想著一道學(xué)習(xí)AVR,因?yàn)椴皇煜さ讓?,就?huì)被Arduino的封裝阻隔提升的空間。 今天碰到一篇文章,用Atmega 16復(fù)制Arduino,一時(shí)興起,但那文章錯(cuò)誤太多,或者什么原因,總之是無(wú)法繼續(xù)。 正確且易于實(shí)踐的步驟,記錄一下。因?yàn)檫@件事情比先前研究的Attiny13A/85/LilyPad更有意義——如果不怕麻煩,以后可以不用再買(mǎi)Arduino板了,體積也小了。 1、在板卡管理器里安裝MightyCore。 在首選項(xiàng)里填寫(xiě) https://mcudude./MightyCore/package_MCUdude_MightyCore_index.json 2、把Arduino UNO作為編程器 把Examples/ArduinoISP燒寫(xiě)到Arduino中; 3、接線(xiàn)
4、燒錄Blink 把兩只LED串聯(lián),正極引腳接Atmega16引腳20,修改Blink.ino: int pin=14;//注意這句 5、燒錄Atmega16 Tools菜單里設(shè)置板卡:Atmega16,內(nèi)部時(shí)間8MHz,BootLoader為Yes,編程器為Arduino as ISP。 在Sketch菜單里使用upload Using Programmer上傳,Atmega16引腳20上的兩個(gè)LED間隔8秒閃爍一次(為什么?因?yàn)闀r(shí)鐘慢了。) 6、總結(jié)記錄 ⑴很多資料寫(xiě)的使用AVR燒錄器等做法,不用那么麻煩,而且還不保證。 ⑵很多資料太過(guò)古老,不許IDE版本高于1.6,手動(dòng)設(shè)置熔絲位等等,MightyCore庫(kù)全部解決掉了,不必理會(huì)。 ⑶Atmega16有不少資料里的引腳圖與Arduino引腳不對(duì)應(yīng),不能正確執(zhí)行ino代碼。Atmega16有40個(gè)引腳,而Atmega328只有28個(gè)引腳,相當(dāng)于功能增加了。 |
|
來(lái)自: 新用戶(hù)5228KeDY > 《待分類(lèi)》