UF2是一种新的二进制文件格式,由Microsoft为PXT (也称为Microsoft MakeCode)开发,可以通过MSC(Mass Storage Class,也称为可移动闪存驱动器)方式更新程序。与DAPlink类似,UF2也提供了CDC串行接口,可以方便的和主机通信与调试程序。
文件格式
UF2文件由512字节块组成。每个块以32字节头开始,后跟数据和最终幻数。除数据外,所有字段都是32位无符号小端整数。
位置 | 尺寸 | 值 | 0 | 4 | 第一个标志,0x0A324655("UF2\n") | 4 | 4 | 第二个标志, 0x9E5D5157 | 8 | 4 | 标志 | 12 | 4 | 闪存中应写入数据的地址 | 16 | 4 | 数据中使用的字节数(通常为256) | 20 | 4 | 顺序块号; 从0开始 | 24 | 4 | 文件中的块总数 | 28 | 4 | 文件大小或电路板系列ID或零 | 32 | 476 | 数据,用零填充 | 508 | 4 | 结束, 0x0AB16F30 |
硬件平台
目前UF2可以支持下面硬件:
- Microchip ATSAMD21 and ATSAMD51
- Arduino UNO
- STM32F103
- STM32F4
- Nordic NRF52840
- Linux (RPi Zero)
- Cypress FX2
关于UF2的一些参考:
|