91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何為ATmega328P刷bootloader?

科技觀察員 ? 來源:八色木 ? 作者:八色木 ? 2022-03-31 17:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在RX5808分集接收機制作的文章中,我參考開源的資料制作了RX5808分集接收機電路板,另外使用USP-ISP編程器通過ArduinoIDE給電路板了寫程序,詳見使用USB-ISP編程器向Mega328p寫程序,在實際使用中發現這種寫程序的方式存在一些不足,這種方式在擦除Atmega328P的FLASH和EEPROM時感覺不徹底,同時不能修改熔絲位,會導致代碼實際運行效率變低,在RX5808分集接收機上反應為菜單的響應時間過長,操作不靈敏。因此催生了今天這篇文章。

使用USBtinyISP編程器通過ArduinoIDE寫程序

poYBAGJFbmaAPHyhAALdgL0v6uY493.png

USBtinyISP編程器接口定義

在使用USP-ISP編程器向Mega328p寫程序文中,我用USBtinyISP編程器直接通過ArduinoIDE寫程序,這樣的好處是便捷,同時可以隨時通過IDE對程序進行調整操作比較直觀,但奇怪的是程序寫入328P后,RX5808分集接收機的菜單響應時間很長,操作起來非常不便,開始以為是源代碼延遲時間設置的問題,多次調整收效甚微,于是開始嘗試其它的寫程序的方式。

AVRUSB編程器向ATmega328P寫程序

使用AVRUSB編程器向ATmega328P寫程序步驟如下:

pYYBAGJFbmGAXrhYAAToVd5bzF4539.png

AVRUSB編程器向ATmega328P寫程序

progisp程序有一個特點,當AVRUSB編程器未連接或連接不成功時,它的“PRGISP”圖標是灰色的,連接成功后它是彩色的,如上圖黑色向右箭頭所指方向。AVRUSB編程器寫程序的步驟,首先在PROGISP程序打開后,在上圖1所示位置選擇目標芯片,然后點擊上圖2所示的“RD”按鈕測試芯片讀取是否成功,狀態欄會顯示芯片連接狀態;然后在上圖3所示位置點擊進入熔絲位編輯窗口:

poYBAGJFblyASL_VAAWvsajjiUI433.png

Atmega328P熔絲位

根據芯片型號編輯熔絲位;接著在上一張圖的4的位置導入HEX文件;最后點擊“自動”按鈕將程序寫入芯片。注意圖中的勾選項“芯片擦除”、“編程FLASH”、“編程熔絲”等選項要勾選,否則代碼運行效率和“使用USBtinyISP編程器直接通過ArduinoIDE寫程序”效率一樣。

使用USBtinyISP編程器通過AVRDUDESS寫程序

Avrdudess是一款類似于Avrdude-GUI的AVR系列單片機下載與燒錄工具

pYYBAGJFblaAJbUvAAS6V9WZKOM174.png

USBtinyISP編程器通過AVRDUDESS寫程序

本著不斷折騰的原則,本次在嘗試使用USBtinyISP編程器通過AVRDUDESS向ATmega328P寫程序。AVRDUDESS可通過網絡下載綠色版的即可。連接USBtinyISP編程器,打開AVRDUDESS軟件,如上圖選擇“USBtinysimpleUSBprogrammer,…。?!?,MCU選擇“ATmega328P”,然后點擊“自動偵測”,在上圖黑色狀態框會顯示“偵測到1e950f=ATmega328P”表示編程器與芯片連接成功。然后和AVRUSB編程器一樣我們也需要設置熔絲位和一些選項。熔絲位設置點擊右側“手動熔絲選擇器”彈出窗口如下,可手動設置熔絲位:

poYBAGJFblGAQ9bKAAO6Y8NE8Ns251.png

ATmega328P熔絲位設置

確定后回到主界面,按下圖再次確認設置項

pYYBAGJFbkyALO8nAAY106nseuU807.png

AVRDUDESS為ATmega328P寫bootloader

通過“Flash”地址欄后“…”按鈕選擇需要寫入的HEX文件,點擊“開始編程”,狀態欄會對應給出寫入狀態指示,待完成后寫入完成。測試過程中發現,如果不選擇“擦除flash和EEPROM”,代碼運行效率與直接通過ArduinoIDE通過編程器寫的方式一致,慢就一個字!

三種編程方式的比較

細心地朋友會發現后兩種方式寫入的文件是HEX文件,它可以通過ArduinoIDE的菜單“項目”–“導出已編譯的二進制文件”的方式得到。曾經懷疑代碼的運行效率是否與寫入文件格式有關,仔細分析后我認為不管哪種方式寫程序寫入芯片的都只會是二進制文件,只是通過ArduinoIDE編程器寫入的方式文件轉換的過程不可見而已。

因此,正如前面反復提到的,在三種給328P寫程序的方式中,直接通過ArduinoIDE寫程序,無法判斷寫程序過程中是否對芯片的Flash和EEPROM進行了完全的擦除。后面通過PROGISP和AVRDUDESS寫程序的兩種方式差異不大,僅是程序設置界面的差異,兩種方式如不選擇“擦除flash和EEPROM”,代碼的運行效率與第一種通過ArduinoIDE寫程序的效率一致。據此判斷它是導致代碼寫入后運行效率不高的主要原因。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電路板
    +關注

    關注

    140

    文章

    5138

    瀏覽量

    102747
  • bootloader
    +關注

    關注

    2

    文章

    239

    瀏覽量

    46722
  • Atmega328P
    +關注

    關注

    4

    文章

    56

    瀏覽量

    17516
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Atmega328P單片機的引導程序

    誰有最新的 Atmega328P TQFP-32的引導程序
    發表于 10-22 16:48

    基于ATMEGA328P的PLC

    描述采用ATMEGA328P的PLC與西門子的PLC類似你有沒有想過建立自己的PLC(可編程邏輯控制器)原型?我敢肯定,作為電子產品,我們一直想創造一個,因為不要再等待時機的到來,我們將使用我們在
    發表于 09-06 06:16

    atmega328P的芯片詳細介紹手冊

    atmega328P的芯片詳細介紹手冊,需要看寄存器的可以借鑒
    發表于 01-15 15:28 ?2193次下載

    Atmega328P不帶Arduino PCB設計

    電子發燒友網站提供《Atmega328P不帶Arduino PCB設計.zip》資料免費下載
    發表于 07-06 14:34 ?12次下載
    <b class='flag-5'>Atmega328P</b>不帶Arduino PCB設計

    最低系統ATmega328p開源

    電子發燒友網站提供《最低系統ATmega328p開源.zip》資料免費下載
    發表于 08-02 10:36 ?19次下載
    最低系統<b class='flag-5'>ATmega328p</b>開源

    具有集成LoRa和CAN總線的ATMEGA328P模塊

    電子發燒友網站提供《具有集成LoRa和CAN總線的ATMEGA328P模塊.zip》資料免費下載
    發表于 08-04 14:30 ?1次下載
    具有集成LoRa和CAN總線的<b class='flag-5'>ATMEGA328P</b>模塊

    基于Atmega328P的PWM控制器卡

    電子發燒友網站提供《基于Atmega328P的PWM控制器卡.zip》資料免費下載
    發表于 08-15 09:21 ?3次下載
    基于<b class='flag-5'>Atmega328P</b>的PWM控制器卡

    使用ATmega328p的迷你示波器

    電子發燒友網站提供《使用ATmega328p的迷你示波器.zip》資料免費下載
    發表于 11-01 11:02 ?12次下載
    使用<b class='flag-5'>ATmega328p</b>的迷你示波器

    帶有ATMEGA328P設備的Arduino Uno門鈴項目

    電子發燒友網站提供《帶有ATMEGA328P設備的Arduino Uno門鈴項目.zip》資料免費下載
    發表于 11-30 09:28 ?3次下載
    帶有<b class='flag-5'>ATMEGA328P</b>設備的Arduino Uno門鈴項目

    Atmega328P脈寬調制控制器

    電子發燒友網站提供《Atmega328P脈寬調制控制器.zip》資料免費下載
    發表于 02-03 09:52 ?1次下載
    <b class='flag-5'>Atmega328P</b>脈寬調制控制器

    ATMEGA328P的定制LoRa基礎模塊

    電子發燒友網站提供《帶ATMEGA328P的定制LoRa基礎模塊.zip》資料免費下載
    發表于 02-08 10:04 ?1次下載
    帶<b class='flag-5'>ATMEGA328P</b>的定制LoRa基礎模塊

    如何通過ATMEGA328P AU(SMD)制作廣告面板

    電子發燒友網站提供《如何通過ATMEGA328P AU(SMD)制作廣告面板.zip》資料免費下載
    發表于 02-09 09:48 ?0次下載
    如何通過<b class='flag-5'>ATMEGA328P</b> AU(SMD)制作廣告面板

    簡單的獨立ATMega328p微控制器

    電子發燒友網站提供《簡單的獨立ATMega328p微控制器.zip》資料免費下載
    發表于 06-12 10:57 ?1次下載
    簡單的獨立<b class='flag-5'>ATMega328p</b>微控制器

    基于ATmega328P的DIY macropad

    電子發燒友網站提供《基于ATmega328P的DIY macropad.zip》資料免費下載
    發表于 06-12 14:47 ?3次下載
    基于<b class='flag-5'>ATmega328P</b>的DIY macropad

    基于ATmega328P微控制器的Ardu鍵盤

    電子發燒友網站提供《基于ATmega328P微控制器的Ardu鍵盤.zip》資料免費下載
    發表于 06-19 14:47 ?5次下載
    基于<b class='flag-5'>ATmega328P</b>微控制器的Ardu鍵盤
    主站蜘蛛池模板: 四虎影在永久地址在线观看 | 久久国产成人午夜aⅴ影院 久久国产福利 | v片视频| 在线免费国产视频 | 美女被免网站在线视频 | 国产91色综合久久免费分享 | 黄色生活毛片 | 久久网色 | 一区二区三区亚洲视频 | 淫欧美 | 天天摸天天干天天操 | 美女扒开尿囗给男生桶爽 | 欧美人与动性xxxxbbbb | 四虎4hu永久在线观看 | 黄 色 成 年人网站 黄 色 成 年人在线 | 天天干夜夜草 | 2021久久精品国产99国产精品 | 免费的国语一级淫片 | 亚洲狠狠97婷婷综合久久久久 | 日本国产高清色www视频在线 | 国内免费视频成人精品 | 特级淫片aaaa毛片aa视频 | 国产亚洲精品仙踪林在线播放 | 亚洲黄色录像 | 一级片免费观看视频 | 亚洲成a人片8888kkkk | 明星三级国产免费播放 | sss欧美华人整片在线观看 | 中文字幕一区二区三区精品 | 国产亚洲精品久久久久久午夜 | 免费在线视频播放 | 亚洲码在线 | 国产大片黄在线观看 | 怡红院日本一道日本久久 | 99久久国产免费 - 99久久国产免费 | 色www亚洲国产张柏芝 | 午夜在线观看视频 | 色妞基地 | 老师受年下高h男 | 天天夜天天干 | 欧美一级精品高清在线观看 |