我們知道ST推出的Cortex-M3平臺STM32內部有兩個Flash區域,一是System Flash,ST官方保留的一個區域,用于存放IAP代碼。該區域不對用戶開放,僅提供UART的通訊接口用于IAP升級;另一個區域是User Flash,這一部分是供用戶自由使用的。STM32自帶USB 2.0 Device接口,如果需要通過USB接口來實現IAP功能需要如何做呢?這里介紹如何利用ST STM32xx USB Development Kit提供的DFU代碼來實現上述功能。我用STM3210EVB來演示這個功能。