--
痞子衡維護的NXP-MCUBootUtility工具距離上一個版本(v2.4.0)釋出過去2個半月了,這一次痞子衡為大家帶來了全新版本v3.0.0,從這個版本開始,NXP-MCUBootUtility將不再侷限於i.MXRT系列,也要開始支援經典的LPC,Kinetis系列。
一、v3.0更新記錄
二、關於新系列MCU的支援
NXP-MCUBootUtility v3.0之前的版本主要支援i.MXRT系列,該系列都是不含內部Flash的,因此晶片本身比較複雜,對於嵌入式初學者來說,玩起來的難度較大。從v3.0開始,MCUBootUtility加入了LPC、Kinetis的支援,這兩個系列MCU大多含有內部Flash,玩起來的難度較小。
2.1 第二代Kinetis系列
NXP-MCUBootUtility v3.0目前並不是支援全部的Kinetis型號,其主要支援第二代Kinetis,即2014年初及以後問世的Kinetis晶片(比如MKL03、MKL27、MKL43、MKL80、MKE18F等),第二代Kinetis晶片有一個明顯的特質是內部包含BootROM。
NXP-MCUBootUtility 主要需要跟Kinetis BootROM做通訊以完成其內部FTFx NOR Flash的更新下載,這個BootROM有一個專門的官方主頁,主頁裡標明瞭全部含BootROM的Kinetis型號:
對於不含BootROM的Kinetis系列(比如MK22、MK65、MKVxx、MKWxx等),MCUBootUtility將來的版本也會考慮進一步支援,因為MCUBOOT專案裡有原始碼版本Bootloader支援,需要你將MCUBOOT原始碼通過偵錯程式下載進Flash跑起來,然後MCUBootUtility工具就也可以去支援了。
- Note 1: Kinetis BootROM支援的通訊介面非常豐富,UAR/SPI/I2C/CAN/USB-HID,但MCUBootUtility僅支援UART/USB-HID,這兩個介面滿足大部分場景了。
- Note 2: 部分Kinetis型號(比如MK80F也支援從外部QSPI NOR啟動),v3.0版本MCUBootUtility目前還不支援下載程式進其外部QSPI Flash。
2.2 LPC5500系列
NXP-MCUBootUtility v3.0當前也並不是支援全部的LPC型號,其主要支援全新的LPC5500系列,這是LPC主打Cortex-M33核心的型號系列,除了ARM自帶的TrustZone特性外,恩智浦也為其賦予了一系列黑科技安全模組(尋常AES-256/SHA-2/RNG/UID不在話下,SRAM PUF、PRINCE、PFR才是特色)。
NXP-MCUBootUtility 是跟LPC5500 BootROM做通訊以完成其內部C040HD NOR Flash的更新下載(不包含PFR區域),該系列Flash有個重要特色,就是最後的10幾個Page是受特殊保護的,這個區域叫PFR,存放了一些重要的原廠配置和安全相關資料,訪問這個區域需要特殊的方式(工具後續會支援)。
- Note 1: LPC5500 BootROM支援的通訊介面非常豐富,UAR/SPI/I2C/USB-HID,但MCUBootUtility僅支援UART/USB-HID。
- Note 2: LPC5500系列支援非常豐富的安全啟動模式(簽名與各種加密方式),v3.0版本MCUBootUtility目前還不支援其安全模式。
至此,這次更新的主要特性便介紹完了。MCUBootUtility專案地址為 https://github.com/JayHeng/NXP-MCUBootUtility , 雖然當前版本(v3.0.0)功能已經非常完備,你還是可以在此基礎上再新增自己想要的功能。如此神器,還不快快去下載試用?
歡迎訂閱
文章會同時釋出到我的 部落格園主頁、CSDN主頁、知乎主頁、微信公眾號 平臺上。
微信搜尋"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。