IAP在線燒錄實現記錄(藍牙->CAN->LPC1114)

最近接手一個項目是對現有設備實現在線燒錄的功能,各種坑完來來回回一個月了,才通過內部測試,趁着熱乎,總結一下。

需求原因:由於外圍設備較多,現場燒錄不便,所以迫切需要解決外圍設備的在線燒錄問題。

整體方案:手機APP+藍牙模塊+系統控制器+外圍設備。通過手機或平板中的APP加載燒錄文件,通過藍牙將燒錄文件傳輸到控制器,控制器通過原有的CAN發送至外圍設備。

編程環境:

APP: 安卓、eclipse

主控:STM32105 KEIL

外圍:LPC111系列 KEIL

具體實現:

1、內部bootloader轉換部分的具體實現方法主要參考LPC的參考手冊,21,7IAP命令章節。

2、關於編譯器配置問題主要參考網上一個資料,https://blog.csdn.net/jdsnpgxj/article/details/71479995,需要注意的是同一個扇區不可分到兩個程序中去。

3、加密策略採用AES,主要參考:http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf這個是原理級別的說明,只看了個大概,具體的參考的百度文庫裏的一個文件,找不到了,我看周立功官網也有,有需要的可以去找下。

4、具體的流轉圖如下:

 

踩過的坑無數,最大的是一個小的注意事項:當調用IAP的接口函數時注意需要將所有中斷暫時關閉,否則可能偶爾出現燒錄失敗的問題。

項目是給公司做的,肯定不能外發。但有個參考的DEMO大家有需求的可以看下,應該會有幫助。

demo程序、芯片手冊及注意事項:https://download.csdn.net/download/gkxg001/10564368

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章