STM32的IAP下载与设置

来源:互联网 发布:移动数据管理软件 编辑:程序博客网 时间:2024/05/22 15:08
首先修改IAP程序:

 由于官方的例子中是基于官方的开发板的,其中使用的触发条件为上电检测一个按键。所以需要更改启动设置。去官方下载IAP程序http://www.stmicroelectronics.com.cn/stonline/mcu/STM32_AN.htm

第一步:打开官方的STM32的IAP程序,根据软件选择工程STM3210B-EVAL,我用得是MDK。

第二步:我们需要把这个触发条件修改为自己开发板上的按键 SW3,需要做如下修改。

              打开 platform_config.h 文件,做如下修改:  

              //#if !defined (USE_STM3210B_EVAL) &&  !defined (USE_STM3210E_EVAL)
                     #define USE_STM3210B_EVAL
                     // #define USE_STM3210E_EVAL
                      //#endif              

               #define GPIO_KEY_BUTTON                   GPIOC
                      #define RCC_APB2Periph_GPIO_KEY_BUTTON    RCC_APB2Periph_GPIOC
                      #define GPIO_PIN_KEY_BUTTON               GPIO_Pin_13

               注:将要修改的文件先解锁。

第三步:修改自己的公司版权信息

         在main.c文件中根据需要添加版权等信息。

第四步:如果你使用仿真器下载程序,那么需要把 stm32f10x_config.h 中的 DEBUG 打开。

    /* #define DEBUG    1*/

    #ifndef DEBUG

    #define DEBUG    1

    #endif

第五步:配置生成  hex 文件

第七步:应用官方提供的下载软件将HEX文件下载到STM32中,完成IAP设置。

其次,应用层下载

用MDK打开应用程序,Project—Option for target—target,将启动地址修改为0x08002000,点user,修改生成BIN文件,修改方法参考:http://blog.ednchina.com/mikehendry/141811/message.aspx

打开stm32f10x_nvic.h文件,修改#define NVIC_VectTab_FLASH           ((u32)0x08002000) 。将以上修改好后编译。然后通过超级终端下载到stm32开发板中。下载方法如下

按住SW3键不放,同时按下复位键,松开复位键,串口有数据输出后松开SW3键。之后按下 PC 机器键盘上面的 1 ,进行 Download 应用程序。“Waiting for the file to be sent ... (press 'a' to abort)”并且另起一行定时输出"C" ,这说明下位机已经响应,等待传输文件。在超级终端中鼠标右键选择发送文件,在文件名中选择前面编译好的 LED.bin,协议选择 Ymodem,点击“发送”。完成发送后,按下复位键,此时程序从应用层正常运行。

原创粉丝点击