Arduino(MEGA2560)最小系统电路设计以及固件(bootloader)烧录方法(free)
Arduino(MEGA2560)最小系統(tǒng)電路設計以及固件(bootloader)燒錄方法(free)
**
Arduino單片機由于其功能強大,程序編寫相對簡單,外設豐富,深受廣大電子愛好者喜歡。一般來說比較常用的就是Arduino UNO和Arduino MEGA2560(個人拙見),而UNO因為外設稍微少了一點,那么就用MEGA2560唄,可是官方的板子體積有點大,很多引腳也不一定用得到,因此就要自己設計最小系統(tǒng)板子了。
最近項目需要用到MEGA2560,打算自己設計最小系統(tǒng),找了很多資料參考,自己也總結了遇到的一些坑,大家可以參考參考。大佬輕噴,下面直接上干貨!!!(文末有官方板子源文件的鏈接)
這是官方的原理圖,對數(shù)字引腳和模擬引腳做了區(qū)分,系統(tǒng)引腳也引出了,我們就參考著自己設計吧!
這里的最小系統(tǒng),當然就是包括單片機,復位電路,晶振電路,下載接口電路,電源電路。這個就不多說了,大家應該都看得懂官方原理圖。
電壓選擇電路:
我想說的就是官方原理圖里面有個電壓比較(選擇)電路,有些伙伴可能比較迷惑,這電路到底是干什么用的,自己設計到底需不需要設計它。如下圖所示:
這里用了一個LMV358運放做比較器,電路大概意思是將官方的開發(fā)板電池輸入電壓(BAT)分壓1/2后與3.3V進行比較,若大于3.3V則PMOS不導通,USB輸入電壓無效,使用電池電壓穩(wěn)壓給整個系統(tǒng)供電。若小于3.3V,則啟用輸入的USB電壓(5V),保證系統(tǒng)正常工作。其實我認為這個電路就是為了保證單一的電源選擇,壁面不同的電源輸入之間形成干擾。那么自己設計電路的時候,這部分是可以不用設計的,自己輸入電源穩(wěn)壓給單片機供電即可。為什么不用呢,因為我下載電路用的是無線下載,根本不需要插USB,所以不存在電源選擇,哈哈哈哈!(好吧,其實我還是設計了這部分電路的,只是我實物焊接的時候沒有焊接而已,還是自己摸索出來的!害!)
LM358是雙運放集成器件,那么另外一個運放干嘛去了呢?在這呢:
這個LED指示燈很重要,至于它是干嘛用的,我也沒去仔細琢磨,它就是一個系統(tǒng)LED燈指示燈,程序運行,固件燒錄,程序燒錄的時候都有用,可想而知他的重要性,因此建議大家留著這個LED燈。
下載電路:
好了,接下來就是下載電路?大家看一看官方板子的下載電路,用的是ATMEGA16U2-MU芯片作為下載芯片,這個電路看起來就覺得有點復雜,而且還要燒錄這個芯片的固件,又是QFN封裝的芯片,焊接難度提升了哈!直接就把我給勸退了,當然大家還是可以參考這個電路設計的,其實也沒那么復雜,嘿嘿!那么我呢,我前面說了,我用的是無線下載器,只需要RST, TX, RX以及電源引腳,三個引腳引出來就可以進行下載了。如下圖所示:
這個下載器是在某寶上面買的,感興趣的伙伴可以去找找,名字叫 ,我就不打廣告了,(好像已經(jīng)打了哈哈哈!)使用方法這個下載器有詳細的說明,我就不多說了!真的很nice!如下圖,就可以輕松下載程序了!
下載程序就這么簡單,什么?你下載不進去?是不是提示這樣的錯誤?
燒錄固件:
那多半是因為你的MEGA2560掉固件了,或者你的新的芯片壓根就沒有固件,需要自己燒錄Bootloader,怎么燒錄呢,也很簡單,需要你在設計原理圖的時候留出ICSP下載接口,就是它:
然后呢,我使用的是USBtinyISP下載器,長這樣:
然后這樣連接,如下圖:
硬件連接完畢后,然后就是安裝USBtinyISP下載器的驅動,這個買了下載器,你們購買的店家會發(fā)給你的,安裝好設備管理器顯示如圖:
驅動安裝完這里可能會出現(xiàn)感嘆號,導致Arduino IDE識別不到下載器,應該是強制數(shù)字簽名的問題(有可能安裝的時候就遇到了),那么此時需要自行百度“如何解除數(shù)字強制數(shù)字簽名”,解除完后重新安裝驅動即可成功安裝啦!
安裝好驅動后,就可以使用下載器給單片機燒錄固件了,打開Arduino IDE,設置好單片機類型(MEGA2560),和下載器類型(USBtinyISP),端口默認吧!如下圖所示:
然后點擊“燒錄引導程序”,等待燒錄過程如圖所示:
燒錄完成系統(tǒng)LED指示燈(就是上面提到的很重要的那個燈,沒錯就是它)會閃爍,表示固件燒錄成功,雖然界面提示的是“燒錄引導程序出錯”,但是實際上是燒錄成功的了,具體原因我也不是很清楚,希望知道的大佬教教我(好像因為USBtinyISP不是正版的原因)!
如上圖,提示的,雖然但是,咱們成功了。我驗證過了,用新的芯片第一次燒錄自己的程序是燒錄不進去的,然后燒錄固件后(盡管提示錯誤,但是bootloader燒進去了),才可以燒錄自己的程序。
下面是我的原理圖和實物圖(JLC的紫色板子真好看,白嫖真香)。原理圖是更新后的,與綠色板子的實物圖相對應(里面把電源電路修改了):
下面附上官方的MEGA256的原理圖和PCB文件(AD版本哦!),**官方版本源文件請用于自己學習,不得用于商業(yè)用途,侵刪!!!**我自己的源文件就不獻丑了,哈哈哈!
差不多了,講的不對的地方,相互交流!
**官方源文件:**文件在NetDisk,自己下載哦!
鏈接:https://pan.baidu.com/s/1gHy_426rJ4zbouH5OAwJKA
提取碼:7ssd
總結
以上是生活随笔為你收集整理的Arduino(MEGA2560)最小系统电路设计以及固件(bootloader)烧录方法(free)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果,索尼,任天堂
- 下一篇: Netty集成WebSocket实现客户