文件名称:stm32-iap-small-data
- 所属分类:
- 单片机(51,AVR,MSP430等)
- 资源属性:
- [C/C++] [源码]
- 上传时间:
- 2015-05-14
- 文件大小:
- 1.84mb
- 下载次数:
- 0次
- 提 供 者:
- q*
- 相关连接:
- 无
- 下载说明:
- 别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容均来自于网络,请自行研究使用
1.此代码基于红牛开发板,请根据自己的板子进行修改。
2.通过修改网上的代码实现,修改前的功能开了一个很大的缓存接收app数据,然后一次性全部数据写入,
但是这个在实际应用中没多大用,所以修改为一次写入128个字节。
3.程序flash的偏移地址为0x8010000,所以app编译前应该在mdk中设置
Option窗口->Target页->IROM1,start 改为 0x8010000
4.设置中断向量重映射,我用的方法是在app端的main函数起始位置添加语句
SCB->VTOR = FLASH_BASE | 0x10000
5.启动时如果发现没有app,会进入bootloader模式(灯全亮),如果发现有程序就要看程序的功能了。
如果有app,但是又想重新升级的话就按住某个键(我这里是Tamper),然后按复位,松开复位之前不要松开
按键,这样就会进入bootloader模式。
6.进入bootloader后通过串口1接收升级app数据,bin文件数据,接收完成后按User1键进行升级操作,完成后
复位或者按User2键可以运行刚写入的app。-1. This code is based on the Red Bull development board, please modify it according to their own board.
2. Modify the online code, the function before the amendment opened a big reception app cache data, and then all at once data is written,
But this is not much use in practical applications, it is changed to a write 128 bytes.
3. The program flash offset address 0x8010000, so should be set before the app compiled in mdk
Option Window-> Target Page-> IROM1, start instead 0x8010000
4. Set the interrupt vector remapping, I use is to add statements in the main function of the starting end position app
SCB-> VTOR = FLASH_BASE | 0x10000
If no app, will enter bootloader mode 5. Start (lights lit), if found to have the program depends on the functions of the program.
If you have app, but want to re-upgrade, then press and hold a key (I have here is Tamper), then press the reset, do not let go until reset release
Button, which will enter bootloader mode.
App upgra
2.通过修改网上的代码实现,修改前的功能开了一个很大的缓存接收app数据,然后一次性全部数据写入,
但是这个在实际应用中没多大用,所以修改为一次写入128个字节。
3.程序flash的偏移地址为0x8010000,所以app编译前应该在mdk中设置
Option窗口->Target页->IROM1,start 改为 0x8010000
4.设置中断向量重映射,我用的方法是在app端的main函数起始位置添加语句
SCB->VTOR = FLASH_BASE | 0x10000
5.启动时如果发现没有app,会进入bootloader模式(灯全亮),如果发现有程序就要看程序的功能了。
如果有app,但是又想重新升级的话就按住某个键(我这里是Tamper),然后按复位,松开复位之前不要松开
按键,这样就会进入bootloader模式。
6.进入bootloader后通过串口1接收升级app数据,bin文件数据,接收完成后按User1键进行升级操作,完成后
复位或者按User2键可以运行刚写入的app。-1. This code is based on the Red Bull development board, please modify it according to their own board.
2. Modify the online code, the function before the amendment opened a big reception app cache data, and then all at once data is written,
But this is not much use in practical applications, it is changed to a write 128 bytes.
3. The program flash offset address 0x8010000, so should be set before the app compiled in mdk
Option Window-> Target Page-> IROM1, start instead 0x8010000
4. Set the interrupt vector remapping, I use is to add statements in the main function of the starting end position app
SCB-> VTOR = FLASH_BASE | 0x10000
If no app, will enter bootloader mode 5. Start (lights lit), if found to have the program depends on the functions of the program.
If you have app, but want to re-upgrade, then press and hold a key (I have here is Tamper), then press the reset, do not let go until reset release
Button, which will enter bootloader mode.
App upgra
(系统自动生成,下载前可以参看下载内容)
下载文件列表
STM32 IAP 无协议\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h
................\User\app\delay.h
................\....\BootLoader_Flash\flash.h
................\....\................\iap.h
................\....\Key\key.h
................\....\GPIO\LED.h
................\Libraries\STM32F10x_StdPeriph_Driver\inc\misc.h
................\.........\CMSIS\CM3\DeviceSupport\ST\STM32F10x\stm32f10x.h
................\.........\STM32F10x_StdPeriph_Driver\inc\stm32f10x_adc.h
................\.........\..........................\...\stm32f10x_bkp.h
................\.........\..........................\...\stm32f10x_can.h
................\.........\..........................\...\stm32f10x_cec.h
................\User\app\stm32f10x_conf.h
................\Libraries\STM32F10x_StdPeriph_Driver\inc\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
................\User\app\stm32f10x_it.h
................\Libraries\STM32F10x_StdPeriph_Driver\inc\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
................\.........\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.h
................\User\usart\usart.h
................\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
................\User\app\delay.c
................\....\BootLoader_Flash\flash.c
................\....\................\iap.c
................\....\Key\key.c
................\....\GPIO\LED.c
................\....\app\main.c
................\Libraries\STM32F10x_StdPeriph_Driver\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
................\User\app\stm32f10x_it.c
................\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c
................\.........\..........................\...\stm32f10x_pwr.c
................\.........\..........................\...\stm32f10x_rcc.c
................\.........\..........................\...\stm32f10x_rtc.c
................\.........\..........................\...\stm32f10x_sdio.c
................\.........\..........................\...\stm32f10x_spi.c
................\.........\.......................