freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

在pic18單片機中使用bootloader(doc)-經(jīng)營管理-資料下載頁

2025-08-06 12:39本頁面

【導讀】置方法;針對程序中存在的問題進行探討和修改,使修改后的程序?qū)嵱?、可靠。根?jù)此方法,讀者可以編寫出適合自己使用的BootLoader程序。目前,比較常見的BootLoader程序有Microchip. 它們的相似之處在于都占用了系統(tǒng)的0x00~0x1FF的程序空間。Microchip的版本是用純匯編寫的,而HI-TECH的版本是用C語言編寫的。下面只介紹PIC18的BootLoader,PIC16F87X. BootLoader是一段引導程序,在單片機上電/復位后在用戶程序之前先運行。行后判斷當前是否需要進入升級狀態(tài)。接收數(shù)據(jù)時,需要進行校驗,保證接收到的數(shù)據(jù)是正確的,避免將錯誤的程序?qū)?。擦寫另一塊Flash,而不能擦寫自身。BootLoader程序可以多種方式獲取數(shù)據(jù),包括串口、并口、I2C、SPI、USB等;但是從實際使用來看,使用串口無疑是最方便的。在這里,Microchip和HI-TECH都將BootLoader程序設計為小于200H個字。在HI-TECH的PICC18編譯器的examples文件夾下,有一個Bootldr子文件夾,使用MPLABIDE時,首先按照正常方式建立一個新的工。C編譯器為HI-TECH的PICC18編譯器。雖然在BootLoader中是可以修改配置字的,但是這樣并不安全,也不方便。生最終的用戶HEX代碼。

  

【正文】 第 6 頁 共 7 頁 此資料來自 USE_EXTEND_HEX——是否接收擴展的 HEX 代碼,不使用可以節(jié)省代碼,建議不用; USEWDT——是否在 BootLoader 中使用看門狗,建議使用; CONFIRM_TIME——聯(lián)機同步字節(jié)數(shù),在超時方式中使用多字節(jié)進 行同步; CONFIRM_DATA——用戶可定義的聯(lián)機數(shù)據(jù); USE_ECHOBACK——編程時是否回應,使用可以增加下載時的安全性,建議使用。 使用了 BOOT_SIGNAL 方式后,與超時方式相關的部分都不再起作用。這時可以定義使用任意引腳來判定是否需要進入 BootLoader。在使用BOOT_TIME_DELAY(超時方式 )時,增加了一些與之相關的內(nèi)容,如CONFIRM_DATA,可以使用任何特定的字符串來確認是否需要進入 BootLoader 狀態(tài),增加了 BootLoader 程序的安全性,避 免受到干擾而誤進入程序升級狀態(tài)。 ( 3) 其他改進的建議和方法 ① HITECH 的 BootLoader 程序接收的是標準的 HEX 文件。這在很多時候是不夠安全的,不利于程序的加密,容易被反匯編和破解。可以對 HEX 進行加密處理,變成不能直接查看的數(shù)據(jù)。 ② 使用超級終端進行程序下載速度比較慢 ,同時,如果下載中出現(xiàn)錯誤,超級終端程序不能及時發(fā)現(xiàn)停止下來,而是一直把文件發(fā)送完才能停下來。這時BootLoader 程序會反復進入 BootLoader 狀態(tài),對單片機有一定的損傷。最好是自行編寫一個計算機 端的專用下載程序,不但可以提高下載的速度,也可以提高下載的成功率。 ③ 使用 RS422/485 方式。有些時候,使用的并不是 RS232 串口,而是RS422/RS485 串口。它們實際是類似的,只是在接口方式上有些區(qū)別。 RS422/RS485需要控制發(fā)送,所以在 BootLoader 程序中增加一個發(fā)送控制就可以了。 ④ 在 BootLoader 中,將波特率設置得很高并沒有太大的用處,它并不能夠提高下載整體的速度,而只能加快數(shù)據(jù)傳輸?shù)乃俣取R驗檎麄€下載分為數(shù)據(jù)通信(數(shù)據(jù)傳輸)和 Flash 寫入 /擦除(數(shù)據(jù) 等待)兩個部分。程序代碼 Flash 空間的擦除和寫入速度是比較慢的(典型值是 3~ ),太快了反而容易丟失數(shù)據(jù),造成下載失敗。使用 9600 bps 的波特率時,傳輸 1 字節(jié)的數(shù)據(jù)大約是 1 ms,接收一個緩沖區(qū) 8字節(jié)大約需要 8 ms,大于寫入延時,所以不需要延時;當通信速率超過 9600 bps時,接收 8 字節(jié)緩沖區(qū)的時間可能會小于寫入時間,需要在通信中延時。實際使用的測試結(jié)果是:使用 9600 bps 比使用 14 400 bps 時慢 50%,使用 57 600 bps 比 9600 bps 快一倍,而使用 115 200 bps 時與 57 600 bps 幾乎沒有任何區(qū)別。如果使用超級終端下載,就更沒有必要設置高波特率了。因為在使用最常用的三線方式通信時(沒有控制信號),超級終端采用了比較保守的方式發(fā)送數(shù)據(jù),本身就比較慢。 結(jié)語 第 7 頁 共 7 頁 此資料來自 一個良好的 BootLoader 程序應該具有良好的可維護性并可以正確處理異常情況,不會因為意外情況引起系統(tǒng)的損壞和崩潰。
點擊復制文檔內(nèi)容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1