本應(yīng)用筆記介紹了在ST7 USB微控制器中實(shí)現(xiàn)設(shè)備固件升級(jí)(DFU)功能。它遵循由USB Implementers Forum定義的DFU類(lèi)規(guī)范,用于通過(guò)USB重新編程應(yīng)用程序。DFU原則特別適用于需要在現(xiàn)場(chǎng)重新編程的USB應(yīng)用程序:同一個(gè)USB連接器既可以用于標(biāo)準(zhǔn)操作模式,也可以用于重新編程過(guò)程。
這一操作得以實(shí)現(xiàn)是因?yàn)榇蠖鄶?shù)ST7微控制器具有的IAP能力,允許通過(guò)任何通信通道對(duì)FLASH MCU進(jìn)行重新編程(更多細(xì)節(jié)請(qǐng)參考AN1575)。
DFU過(guò)程,像其他任何IAP過(guò)程一樣,基于位于ST7 Flash存儲(chǔ)器扇區(qū)0中的固件的執(zhí)行,該固件管理扇區(qū)1和2的Flash操作(擦除和編程)。
本應(yīng)用筆記涵蓋了兩個(gè)主要方面:
- 位于扇區(qū)0的固件
- 扇區(qū)1和2中固件與扇區(qū)0中固件之間的接口
提出的實(shí)現(xiàn)示例使用了兩個(gè)不同的項(xiàng)目:USB低速設(shè)備評(píng)估套件和ST7265全速5合1演示板。在本文檔中,將這些項(xiàng)目稱(chēng)為“LS項(xiàng)目”和“FS項(xiàng)目”。
這些項(xiàng)目中還使用了基本的DFU協(xié)議。實(shí)現(xiàn)中使用的模塊化方法基于DFU庫(kù),使您可以輕松適應(yīng)其他更高級(jí)別的協(xié)議或新類(lèi)型的硬件。