痞子衡嵌入式:MCUBootUtility v3.0發佈,開始支持LPC, Kinetis啦
- 2021 年 1 月 10 日
- 筆記
- D2.單片機i.MXRT-CM7
—
痞子衡維護的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項目地址為 //github.com/JayHeng/NXP-MCUBootUtility , 雖然當前版本(v3.0.0)功能已經非常完備,你還是可以在此基礎上再添加自己想要的功能。如此神器,還不快快去下載試用?
歡迎訂閱
文章會同時發佈到我的 博客園主頁、CSDN主頁、知乎主頁、微信公眾號 平台上。
微信搜索”痞子衡嵌入式“或者掃描下面二維碼,就可以在手機上第一時間看了哦。