久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 實現AVR單片機芯片程序自刷 USB_Flash_BootLoader HID制作過程 [打印本頁]

作者: linhaigood    時間: 2020-4-6 20:40
標題: 實現AVR單片機芯片程序自刷 USB_Flash_BootLoader HID制作過程
前期制作USBASP過程中,學習了AVR單片機芯片的BootLoader原理,查找了很多關于USB-HID和BootLoader的資料制作了可以自刷程序的atmega8(16)簡易板,現將所學的分享給大家。

一、關于BootLoader
        BootLoader是芯片上電后,程序不從flash地址的0x00執行,而是跳轉到boot區執行bootloader程序。
        atmega8的boot區的大小及起始位置是由其熔絲位來設置(BOOTSZ0、BOOTSZ1)的。
        其是否執行bootloader程序也是由熔絲位(BOOTRST)設置的。
        
二、關于USB-HID
        HID是人體學輸入設備的英文簡稱,由于Windows內置了此類驅動,如常用的鼠標、鍵盤等不用外部驅動就可以直接使用。
        
        AVR的Flash-BootLoader-HID固件就是利用了BootLoader和USB-HID的特點,將AVR芯片的Flash刷寫程序和USB-HID的程序結合,制作為BootLoader程序,實現了自刷芯片程序的功能。
        
三、制作過程:
        1、根據原理圖制作電路
        

              自己的電路中加入了復位按鍵,需要刷程序時只按下復位鍵就進入Boot了。
        2、編譯BootLoader的HEX固件
                后期可以根據自己的硬件情況對bootloaderconfig.h內的配置進行更改。
                makefile文件的簡單配置
以上是USB數據端口的配置,原版使用了PD2->D+,PD0->D-,這個可以根據個人需要更改。
需要注意的是不論更改到哪個端口,D+始終需要與PD2連接,因為其使用了INT0中斷。

在config文件最后定義了引導判斷端口的設置,這個是根據個人情況更改。
        3、atmega8的熔絲位更改
                使用其他燒寫器對熔絲位更改

             需要對以下幾個熔絲位更改:
                 1)熔絲低位的CKSEL 0~3設置為1,即使用外部晶振。
                 2)BOOTSZ1.0,BOOTRST置0,即設置BOOT區大小為1024字節,芯片復位后從BOOT區執行程序。

        4、刷BootLoader
                使用USBASP或者其他燒寫器刷HEX固件。
                若使用progisp軟件調入固件文件,在“編輯”選項能看到,固件數據是從0x1800開始的,這是
                因為atmega8的boot區設置為1024大小時的boot起始位置(0xC00*2具體原理查閱atmega8芯片說明)。



                因此制作bootloader時要注意芯片熔絲位的設置和makefile的flashboot地址,兩者要一致。
               
               
四、進入BootLoader,可以刷自己的程序了!
        1、將PC2接地,插入USB口,windows的設備管理器即可識別出一個HID-compliant device的設備,并安裝好驅動。
        若無法識別成功,查檢1~4步。


        2、將bootloaderHID.exe復制到自己的程序固件xxx.hex目錄下
        3、在cmd命令下輸入bootloadhid -r xxxx.hex
        如果成功,即會出現以下界面。
        
          以上可以通過簡單配置文件更改,就可心應用到其他AVR芯片。

         以atmega16芯片為例:
               只要將makefile文件       DEVICE = atmega16
                                                    BOOTLOADER_ADDRESS = 3800
             其它設置相同,即可實現自刷。

五、上一下自己制作的電路



六、相關軟件
        1、WinAVR(GCC-for-AVR)
        2、Flash-BootLoadHID固件及上位機源碼51黑提供下載: FLash_BootloadHID源碼.rar (151.09 KB, 下載次數: 113)



作者: jjj12345    時間: 2020-8-9 16:01
很強大的自刷固件程序,謝謝
作者: huang_hanfeng    時間: 2020-11-8 15:42
還是不知道怎么玩
作者: keywod    時間: 2021-8-10 10:00
boottloader的利用確實很少
作者: ttchu    時間: 2022-11-12 20:11
看起來很不錯,等下載了試試
作者: 如我所愿    時間: 2023-12-29 20:47
收藏了,謝謝分享。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 毛片入口 | 播放一级黄色片 | 精品国产一区二区久久 | 夜夜操操操 | 欧美黄色一区 | 91精品国产91久久综合桃花 | 国产免费av在线 | 免费一二区 | 免费在线观看av片 | 日本成人免费网站 | 毛片免费在线 | 成人av网站在线观看 | 一区二区三区在线看 | 亚洲精品中文字幕中文字幕 | 日韩久久久久久 | 午夜视频网站 | 国产精品一区二区三区久久 | 欧美日韩国产三级 | 高清视频一区二区三区 | 搞黄视频免费看 | 亚洲国产高清高潮精品美女 | 欧美一区二区在线视频 | 久草电影网 | 欧美日韩久久久久 | 免费成人国产 | 国产成人在线视频 | 一区二区三区av | 亚洲日本欧美日韩高观看 | 精品亚洲一区二区三区 | h在线观看 | 中文字幕成人免费视频 | 五月综合久久 | 亚洲人成在线播放 | 91精品国产麻豆 | 国产女人与拘做受免费视频 | 一区二区小视频 | 中文字幕亚洲视频 | 亚洲风情在线观看 | 91精品在线播放 | 国产精产国品一二三产区视频 | 久久久精品网站 |