2021-08-17 19:37:23 索煒達(dá)電子 879
項目編號:E258
文件大?。?2M
源碼說明:帶中文注釋
開發(fā)環(huán)境:C編譯器
簡要概述:
本程序是基于STM32F4x7的USB_HOST_IAP程序
在開發(fā)板上調(diào)試通過
其中應(yīng)用程序起始地址為
#define USER_FLASH_IAP_ADDRESS 0x08040000
用戶應(yīng)用程序起始地址為 0x08040000 請在KEIL中進(jìn)行設(shè)置
如果想進(jìn)行升級操作必須將所要更新的程序轉(zhuǎn)換為BIN文件,
并以ROM.bin的文件名存入U盤中。在KEIL中自動生成BIN文件的命令為
C:\Keil\ARM\ARMCC\bin\fromelf.exe --bin -o OTGROM.bin outut/OTG.axf
程序流程:
系統(tǒng)上電之后先從BOOT程序開始執(zhí)行,BOOT程序判斷U盤是否插入,如果沒有插入則認(rèn)為
沒有進(jìn)行IAP操作,PC跳到應(yīng)用程序區(qū)執(zhí)行用戶程序
如果插入U盤,則判斷U盤中是否存在ROM.bin文件,如果有則進(jìn)行升級,升級成功后
PC自動跳到應(yīng)用程序區(qū)開始執(zhí)行。
文件列表:
目錄│文件列表:
└ U-IAP-V0.2
│ readme.txt
│ 程序說明.txt
├ IAP
│ │ flashapp.c
│ └ flashapp.h
├ inc
│ │ lcd_log_conf.h
│ │ stm32f10x_conf.h
│ │ stm32f2xx_conf.h
│ │ stm32f4xx_conf.h
│ │ stm32fxxx_it.h
│ │ usbh_conf.h
│ │ usbh_usr.h
│ └ usb_conf.h
├ Libraries
│ ├ CMSIS
│ │ │ CMSIS END USER LICENCE AGREEMENT.pdf
│ │ │ index.htm
│ │ │ README.txt
│ │ ├ Device
│ │ │ └ ST
│ │ │ ├ STM32F10x
│ │ │ │ │ Release_Notes.html
│ │ │ │ ├ Include
│ │ │ │ │ │ stm32f10x.h
│ │ │ │ │ └ system_stm32f10x.h
│ │ │ │ └ Source
│ │ │ │ └ Templates
│ │ │ │ │ system_stm32f10x.c
│ │ │ │ ├ arm
│ │ │ │ │ │ startup_stm32f10x_cl.s
│ │ │ │ │ │ startup_stm32f10x_hd.s
│ │ │ │ │ │ startup_stm32f10x_hd_vl.s
│ │ │ │ │ │ startup_stm32f10x_ld.s
│ │ │ │ │ │ startup_stm32f10x_ld_vl.s
│ │ │ │ │ │ startup_stm32f10x_md.s
│ │ │ │ │ │ startup_stm32f10x_md_vl.s
│ │ │ │ │ └ startup_stm32f10x_xl.s
│ │ │ │ ├ gcc_ride7
│ │ │ │ │ │ startup_stm32f10x_cl.s
│ │ │ │ │ │ startup_stm32f10x_hd.s
│ │ │ │ │ │ startup_stm32f10x_hd_vl.s
│ │ │ │ │ │ startup_stm32f10x_ld.s
│ │ │ │ │ │ startup_stm32f10x_ld_vl.s
│ │ │ │ │ │ startup_stm32f10x_md.s
│ │ │ │ │ │ startup_stm32f10x_md_vl.s
│ │ │ │ │ └ startup_stm32f10x_xl.s
│ │ │ │ ├ iar
│ │ │ │ │ │ startup_stm32f10x_cl.s
│ │ │ │ │ │ startup_stm32f10x_hd.s
│ │ │ │ │ │ startup_stm32f10x_hd_vl.s
│ │ │ │ │ │ startup_stm32f10x_ld.s
│ │ │ │ │ │ startup_stm32f10x_ld_vl.s
│ │ │ │ │ │ startup_stm32f10x_md.s
│ │ │ │ │ │ startup_stm32f10x_md_vl.s
│ │ │ │ │ └ startup_stm32f10x_xl.s
│ │ │ │ ├ TASKING
│ │ │ │ │ └ cstart_thumb2.asm
│ │ │ │ └ TrueSTUDIO
│ │ │ │ │ startup_stm32f10x_cl.s
│ │ │ │ │ startup_stm32f10x_hd.s
│ │ │ │ │ startup_stm32f10x_hd_vl.s
│ │ │ │ │ startup_stm32f10x_ld.s
│ │ │ │ │ startup_stm32f10x_ld_vl.s
│ │ │ │ │ startup_stm32f10x_md.s
│ │ │ │ │ startup_stm32f10x_md_vl.s
│ │ │ │ └ startup_stm32f10x_xl.s
│ │ │ ├ STM32F2xx
│ │ │ │ │ Release_Notes.html
│ │ │ │ ├ Include
│ │ │ │ │ │ stm32f2xx.h
│ │ │ │ │ └ system_stm32f2xx.h
│ │ │ │ └ Source
│ │ │ │ └ Templates
│ │ │ │ │ system_stm32f2xx.c
│ │ │ │ ├ arm
│ │ │ │ │ └ startup_stm32f2xx.s
│ │ │ │ ├ gcc_ride7
│ │ │ │ │ └ startup_stm32f2xx.s
│ │ │ │ ├ iar
│ │ │ │ │ └ startup_stm32f2xx.s
│ │ │ │ ├ TASKING
│ │ │ │ │ └ cstart_thumb2.asm
│ │ │ │ └ TrueSTUDIO
│ │ │ │ └ startup_stm32f2xx.s
│ │ │ └ STM32F4xx
│ │ │ │ Release_Notes.html
│ │ │ ├ Include
│ │ │ │ │ stm32f4xx.h
│ │ │ │ └ system_stm32f4xx.h
│ │ │ └ Source
│ │ │ └ Templates
│ │ │ │ system_stm32f4xx.c
│ │ │ ├ arm
│ │ │ │ └ startup_stm32f4xx.s
│ │ │ ├ gcc_ride7
│ │ │ │ └ startup_stm32f4xx.s
│ │ │ ├ iar
│ │ │ │ └ startup_stm32f4xx.s
│ │ │ ├ TASKING
│ │ │ │ └ cstart_thumb2.asm
│ │ │ └ TrueSTUDIO
│ │ │ └ startup_stm32f4xx.s
│ │ ├ Documentation
│ │ │ │ CMSIS-SVD_Schema_1_0.xsd
│ │ │ │ CMSIS_CM4_SIMD.htm
│ │ │ │ CMSIS_Core.htm
│ │ │ │ CMSIS_DebugSupport.htm
│ │ │ │ CMSIS_History.htm
│ │ │ │ CMSIS_Logo_Final.jpg
│ │ │ └ CMSIS_System_View_Description.htm
│ │ └ Include
│ │ │ arm_common_tables.h
│ │ │ arm_math.h
│ │ │ core_cm0.h
│ │ │ core_cm3.h
│ │ │ core_cm4.h
│ │ │ core_cm4_simd.h
│ │ │ core_cmFunc.h
│ │ └ core_cmInstr.h
│ ├ STM32F10x_StdPeriph_Driver
│ │ │ Release_Notes.html
│ │ ├ inc
│ │ │ │ misc.h
│ │ │ │ stm32f10x_adc.h
│ │ │ │ stm32f10x_bkp.h
│ │ │ │ stm32f10x_can.h
│ │ │ │ stm32f10x_cec.h
│ │ │ │ stm32f10x_crc.h
│ │ │ │ stm32f10x_dac.h
│ │ │ │ stm32f10x_dbgmcu.h
│ │ │ │ stm32f10x_dma.h
│ │ │ │ stm32f10x_exti.h
│ │ │ │ stm32f10x_flash.h
│ │ │ │ stm32f10x_fsmc.h
│ │ │ │ stm32f10x_gpio.h
│ │ │ │ stm32f10x_i2c.h
│ │ │ │ stm32f10x_iwdg.h
│ │ │ │ stm32f10x_pwr.h
│ │ │ │ stm32f10x_rcc.h
│ │ │ │ stm32f10x_rtc.h
│ │ │ │ stm32f10x_sdio.h
│ │ │ │ stm32f10x_spi.h
│ │ │ │ stm32f10x_tim.h
│ │ │ │ stm32f10x_usart.h
│ │ │ └ stm32f10x_wwdg.h
│ │ └ src
│ │ │ misc.c
│ │ │ stm32f10x_adc.c
│ │ │ stm32f10x_bkp.c
│ │ │ stm32f10x_can.c
│ │ │ stm32f10x_cec.c
│ │ │ stm32f10x_crc.c
│ │ │ stm32f10x_dac.c
│ │ │ stm32f10x_dbgmcu.c
│ │ │ stm32f10x_dma.c
│ │ │ stm32f10x_exti.c
│ │ │ stm32f10x_flash.c
│ │ │ stm32f10x_fsmc.c
│ │ │ stm32f10x_gpio.c
│ │ │ stm32f10x_i2c.c
│ │ │ stm32f10x_iwdg.c
│ │ │ stm32f10x_pwr.c
│ │ │ stm32f10x_rcc.c
│ │ │ stm32f10x_rtc.c
│ │ │ stm32f10x_sdio.c
│ │ │ stm32f10x_spi.c
│ │ │ stm32f10x_tim.c
│ │ │ stm32f10x_usart.c
│ │ └ stm32f10x_wwdg.c
│ ├ STM32F2xx_StdPeriph_Driver
│ │ │ Release_Notes.html
│ │ ├ inc
│ │ │ │ misc.h
│ │ │ │ stm32f2xx_adc.h
│ │ │ │ stm32f2xx_can.h
│ │ │ │ stm32f2xx_crc.h
│ │ │ │ stm32f2xx_cryp.h
│ │ │ │ stm32f2xx_dac.h
│ │ │ │ stm32f2xx_dbgmcu.h
│ │ │ │ stm32f2xx_dcmi.h
│ │ │ │ stm32f2xx_dma.h
│ │ │ │ stm32f2xx_exti.h
│ │ │ │ stm32f2xx_flash.h
│ │ │ │ stm32f2xx_fsmc.h
│ │ │ │ stm32f2xx_gpio.h
│ │ │ │ stm32f2xx_hash.h
│ │ │ │ stm32f2xx_i2c.h
│ │ │ │ stm32f2xx_iwdg.h
│ │ │ │ stm32f2xx_pwr.h
│ │ │ │ stm32f2xx_rcc.h
│ │ │ │ stm32f2xx_rng.h
│ │ │ │ stm32f2xx_rtc.h
│ │ │ │ stm32f2xx_sdio.h
│ │ │ │ stm32f2xx_spi.h
│ │ │ │ stm32f2xx_syscfg.h
│ │ │ │ stm32f2xx_tim.h
│ │ │ │ stm32f2xx_usart.h
│ │ │ └ stm32f2xx_wwdg.h
│ │ └ src
│ │ │ misc.c
│ │ │ stm32f2xx_adc.c
│ │ │ stm32f2xx_can.c
│ │ │ stm32f2xx_crc.c
│ │ │ stm32f2xx_cryp.c
│ │ │ stm32f2xx_cryp_aes.c
│ │ │ stm32f2xx_cryp_des.c
│ │ │ stm32f2xx_cryp_tdes.c
│ │ │ stm32f2xx_dac.c
│ │ │ stm32f2xx_dbgmcu.c
│ │ │ stm32f2xx_dcmi.c
│ │ │ stm32f2xx_dma.c
│ │ │ stm32f2xx_exti.c
│ │ │ stm32f2xx_flash.c
│ │ │ stm32f2xx_fsmc.c
│ │ │ stm32f2xx_gpio.c
│ │ │ stm32f2xx_hash.c
│ │ │ stm32f2xx_hash_md5.c
│ │ │ stm32f2xx_hash_sha1.c
│ │ │ stm32f2xx_i2c.c
│ │ │ stm32f2xx_iwdg.c
│ │ │ stm32f2xx_pwr.c
│ │ │ stm32f2xx_rcc.c
│ │ │ stm32f2xx_rng.c
│ │ │ stm32f2xx_rtc.c
│ │ │ stm32f2xx_sdio.c
│ │ │ stm32f2xx_spi.c
│ │ │ stm32f2xx_syscfg.c
│ │ │ stm32f2xx_tim.c
│ │ │ stm32f2xx_usart.c
│ │ └ stm32f2xx_wwdg.c
│ ├ STM32F4xx_StdPeriph_Driver
│ │ │ Release_Notes.html
│ │ ├ inc
│ │ │ │ misc.h
│ │ │ │ stm32f4xx_adc.h
│ │ │ │ stm32f4xx_can.h
│ │ │ │ stm32f4xx_crc.h
│ │ │ │ stm32f4xx_cryp.h
│ │ │ │ stm32f4xx_dac.h
│ │ │ │ stm32f4xx_dbgmcu.h
│ │ │ │ stm32f4xx_dcmi.h
│ │ │ │ stm32f4xx_dma.h
│ │ │ │ stm32f4xx_exti.h
│ │ │ │ stm32f4xx_flash.h
│ │ │ │ stm32f4xx_fsmc.h
│ │ │ │ stm32f4xx_gpio.h
│ │ │ │ stm32f4xx_hash.h
│ │ │ │ stm32f4xx_i2c.h
│ │ │ │ stm32f4xx_iwdg.h
│ │ │ │ stm32f4xx_pwr.h
│ │ │ │ stm32f4xx_rcc.h
│ │ │ │ stm32f4xx_rng.h
│ │ │ │ stm32f4xx_rtc.h
│ │ │ │ stm32f4xx_sdio.h
│ │ │ │ stm32f4xx_spi.h
│ │ │ │ stm32f4xx_syscfg.h
│ │ │ │ stm32f4xx_tim.h
│ │ │ │ stm32f4xx_usart.h