小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

【新提醒】atmega328P 寫入 Boot Loader的那點事

 jzpjzl 2019-06-13
Arduino是開源的,這很好。想當年在學校時,每當考試時,同學們在考場上都不開源給我,所以學了BASIC、匯編、FOXBASIC、VB都跟沒有學似的,看到滿屏的字母只能笑。


這幾天忽然對atmega328P的了興趣,有位壇友也發(fā)了不少Arduino實驗的貼子,但新買來的atmega328P大部分是沒有引導程序BOOT LOADER的,必須進行燒寫。
下面說說如何燒寫。

一、初識atmega328P集成IC

新買來的328P不做特別說明的一般都是沒有引導程序BootLoader的,這就要先對328P進行Boot Loader的燒寫。下面就如何燒寫進行說明。

(一)328P兩種封裝的腳位對應(yīng)情況
atmega328P-AU封裝腳位

atmega328P—PU封裝腳位

ARDUINO 與兩種封裝腳位對應(yīng)關(guān)系

要注意Arduino PIN和集成塊的PIN是不同的。

(二)制作一個最小系統(tǒng)
以AU為例參考圖

atmega328P-PU的最小系統(tǒng)情況

atmega328P-AU封裝的使用轉(zhuǎn)接板接出引腳




這時開始的棚搭

后來用面包板了
328AU的最小系統(tǒng)情況參考:

010 AU最小系統(tǒng).jpg (99.45 KB, 下載次數(shù): 0)

下載附件

前天 19:21 上傳





二、使用USB編程器

關(guān)鍵是設(shè)置熔絲位(FUSE)和找對相應(yīng)的HEX文件。
這里使用的是51單片機的下載器

安裝好驅(qū)動

與ARDUINO的接線關(guān)系

熔絲位和HEX文件的設(shè)置在IDE的安裝目錄中的boards.txt文件中可以找到。
1.找到相應(yīng)的熔絲位

在IDE安裝目錄中..\arduino-nightly\hardware\arduino\avr找到boards.txt文件

這個文件用寫字板打開,在“##”后可以找要燒寫的“開發(fā)板”型號,下面就可以看到低位熔絲、高位熔絲、擴展位、加密位及bootloader.file(HEX文件)。

這是Nano Old Bootloader 的情況:
nano.menu.cpu.atmega328old=ATmega328P (Old Bootloader)
nano.menu.cpu.atmega328old.upload.maximum_size=30720
nano.menu.cpu.atmega328old.upload.maximum_data_size=2048
nano.menu.cpu.atmega328old.upload.speed=57600
nano.menu.cpu.atmega328old.bootloader.low_fuses=0xFF
nano.menu.cpu.atmega328old.bootloader.high_fuses=0xDA
nano.menu.cpu.atmega328old.bootloader.extended_fuses=0xFD
nano.menu.cpu.atmega328old.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
nano.menu.cpu.atmega328old.build.mcu=atmega328p


2.連接好ISP線,插好USB下載器,打開progisp,

每項操作,下面的白色窗口都有反饋的,最后的操作在最上現(xiàn)一行顯示。

選好片

3.Fuse設(shè)置好要點“寫入”,然后點“讀出”,確保與寫入的一樣才算寫入了

4.調(diào)入Flash文件。根據(jù)
nano.menu.cpu.atmega328old.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
對應(yīng)的bootloader文件在IDE的安裝目錄中可以找到:

..\arduino-nightly\hardware\arduino\avr\bootloaders\atmega


5.檢查無誤后,點“自動”,窗口最下面的“狀態(tài)”有提示的


當下載好后,如果在D13上接有LED,LED會閃的。(只有Nano ATmega328P (old bootloader)會閃,UNO和Nano ATmega328P是不會閃的)
三、使用arduino as ISP方式
如果手上沒有下載器,可以使用正常的Arduino UNO開發(fā)板作為燒寫器給單片機芯片燒寫B(tài)ootLoader。
在這里采用一塊Arduino UNO板作為燒寫器,講一下對328P進行Arduino BootLoader 的燒寫。
(一)將Arduino UNO板(上位機)變成個ISP設(shè)備。
1.將作為燒寫器的ArduinoUNO板通過USB線連接到電腦,打開ArduinoIDE 。
2.選擇并設(shè)置好開發(fā)板型號、處理器及COM口。(注意要選擇的型號為作為上位機的Arduino 型號)

3.在工具欄選擇 —〉文件->示例—〉11.Arduino ISP —〉ArduinoISP,打開ArduinoISP程序,編譯(驗證)、下載到UNO開發(fā)板中。

4.在工具欄選擇—〉工具—〉編程器—〉Arduino as ISP。

到此,上位機就成了一個ISP下載器了。
(二)連接線路
連接好上位機與下位機的線,下位機的電源和地要與上位機連接。
在ArduinoISP 程序的73、85、86、87行給出了UNO板作為ISP的接線:
D10—〉RESET
D11—〉MOSI
D12—〉MISO
D13—〉SCK
對應(yīng)接線情況:

如果上位機是Nano則在reset與地接一個10UF的電容(我試過4.7100uF都可以)。網(wǎng)上說UNO接這個電容,其實UNO不用接的。
(三)進行燒寫
在工具欄選擇—〉工具—〉燒錄引導程序。

6.等待完成

如果是Nano ATmega328P (oldbootloader)D13上接有LED,LED會閃的。
四、驗證
(一)使用CH340等,通過TX、RX下載程序進行驗證
1.電路連接:
目標板上的RESET通過1K電阻上拉到VCC(5V)。RESET串10UF電容,接到CH340的DTR或RTS,可以自動下載。我接的是220UF的,穩(wěn)定下載
如果沒有串電容,等IDE提示“上傳”時,RESET對地短路一下也可。就是按一下復位鍵。隔壁的圖


2.選擇并設(shè)置好開發(fā)板型號、處理器及COM口。(注意要選擇的型號為剛燒寫的Arduino 型號)為了區(qū)別示例的Blink,下載了一個“SOS”

(二)使用Arduino作為ISP上傳
保持上面Arduino作為ISP設(shè)備的姿勢(接線不要動)。
打開驗證程序
在工具欄選擇—〉項目—〉使用編程器上傳。

也可以按著shift鍵,用鼠標點上傳圖標(右箭頭)


下載成功后觀察。

當然可能用下圖這個驗證

下面這個是雙燈。一個是SOS,一個是呼吸燈,同時閃

費心作了兩個板子進行實驗

下面這個上位機是NANO,所以在RESET與GND之間接了一個電容,

樓下對熔絲配置的說明,網(wǎng)上收集的
next

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多