亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2513|回復: 0
打印 上一主題 下一主題
收起左側

FMD單片機基于串口更新程序的BootLoader程序

[復制鏈接]
跳轉到指定樓層
#
       之前想用STC單片機的EEPROM儲存FMD單片機的Bin文件,然后通過串口去更新程序,現在終于把BootLoader程序調通了。有了BootLoader程序再也不怕板子帶電燒錄了。因為FMD單片機需要用下載器的電源燒錄,如果板子本身是內置電池,燒錄前需要斷開電池才能燒錄,十分麻煩,更頭疼的是如果你的單片機電源端并聯了大電容,你用燒錄器還不一定可以燒錄成功。我的目標是把BootLoader程序控制在1K的大小,多留點空間給APP程序。本來想自己做上位機,為了能快點先實現功能,我先用現有的串口助手先做實驗,這里我選的是XMode協議。XMode協議效驗的是每一幀數據,跳轉APP程序前沒對整個APP程序進行效驗,如果每一幀數據都是對的,似乎也不用對整個APP程序效驗。下次換YMode協議試試,YMode協議第一幀發送的是文件信息,這樣就可以通過文件名字把一些關鍵信息發送出去,例如我的Bin文件名字可以命名為:FT64F0A5-B1A1.Bin,前面是單片機型號,后面是整個APP效驗和。
       硬件說明:串口使用的是UART1_TX = PB6 , UART1_RX = PA2 ,波特率是115200 ,這2個腳也是單片機的下載腳,也可以通過程序映射到其它腳,如下圖:


使用步驟:
第一步是通過FMD的脫機燒錄工具把BootLoader程序燒錄進去,如下圖:


第二步是打開通信調試助手,選擇115200的波特率,勾選從文件發送數據,傳輸協議選擇XMode,點擊瀏覽選擇APP程序,這里使用的是Bin文件,這個Bin文件在APP程序編譯時候回自動生成,選擇好后點擊發送,這時上位機會一直等待單片機發送傳輸開始命令,你需要做的就是把單片機復位,或者重新上電,如下圖:

    由于FMD單片機是14Bit長度的,10k 程序存儲器由 160 頁組成,每頁 64 個 word(1word= 14bits),這樣10K的FLASH,發送的數據量就是20K起步了,程序更新會有點慢,還有一個原因就是,這個上位機是現成的,沒有設置地址偏移量的選擇,這就導致加載APP程序時,會把BOOT程序的地址也算進去,這樣前面發送的1K的數據會被BootLoader程序丟棄,白白浪費了時間。后期自己制作上位機的時候可以避免這個問題。            特別注意APP程序要勾選IAP設置,設置其實地址和結束地址,BootLoader程序設置為1K,那么起始地址就是0x400,這個型號的單片機FLASH大小是10K,結束地址就是0x2800,如下圖:

         BootLoader程序暫時只分享Hex文件,整個程序只用了777字節,288個變量,還有優化空間,讓程序更健壯。


APP.zip (432.45 KB, 下載次數: 7)

BootLaoder.zip (2.3 KB, 下載次數: 6)







評分

參與人數 2黑幣 +56 收起 理由
hack2800 + 6
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表