STM32 USB升级

原创 2015年11月17日 17:09:50

首先移植USB官方库,移植方法详见另一篇文章USB OTG官方库移植

建议移植DFU模式,或者MSC模式。DFU模式作为PC端连接数据线下载到目标板,MSC模式可用U盘连接升级。

按键 屏幕显示驱动什么的不提了。主要提一下要修改的地方。

     /* Jump to user application */
     JumpAddress = *(__IO uint32_t*) (APP_DEFAULT_ADD + 4);
     Jump_To_Application = (pFunction) JumpAddress;
     /* Initialize user application's Stack Pointer */
     __set_MSP(*(__IO uint32_t*) APP_DEFAULT_ADD); 
     Jump_To_Application();

官方库中,程序跳转有如上代码,需要修改APP_DEFAULT_ADD的地址,将地址修改为你所需要下载的APP的地址。__set_MSP();可将栈的指针也指向APP的栈,因此此地址也需要设置。

DFU中,基本不需要修改什么。MSC模式中,要做升级先要做U盘读取,读取完成后升级就很简单了。相当于直接把bin文件读取出来,写入到片内FLASH中的APP起始地址部分。

APP中,需要在project->option->link->edit设置中断向量地址,程序起始地址。这两个地址可以设为一起,因为程序起始的开头就是中断向量。此外,还需要在system_stm32f2xx.c等文件中 ,将VECT_TAB_OFFSET 偏移改掉,如程序起始地址为0x800c000就改为0xc000。

然后就可以愉快的下载运行了。将app生成的bin文件放在u盘指定目录下 开机检测到U盘 读取文件 写入FLASH,最后写入完成,跳入指定目标地址,运行APP程序。

版权声明:本文为博主原创文章,未经博主允许不得转载。

简单实现stm32f103芯片usb模拟U盘进行IAP更新用户程序

更新单片机内的用户程序,方式一般都是仿真器,串口,网络口,usb DFU,另类一点CAN也行,但是这些方式都有一个共同点,必须要有相应的上位机配合操作,还要教会别人使用,那么能不能有更简单傻瓜化的升级...
  • lrmlrm
  • lrmlrm
  • 2016年05月26日 14:58
  • 11959

官方DFU固件更新软件实现对STM32的USB方式代码升级简易说明

软件下载: stsw-stm32080.zip (12400 K) 下载次数:7843  (特别说明,此软件含有官方的VS平台的源码文件) 开发平台:STM32-V5开发板 前几天在论坛发布了使用串...
  • zhjmyx
  • zhjmyx
  • 2016年11月06日 20:08
  • 3087

从今天开始,像使用U盘一样,升级STM32

有没有想过,像使用U盘一样升级STM32固件,非常简单,非常方便 1:        插入电脑USB接口 2:        把升级固件拖到设备盘符 3:        升级...
  • dldw8816
  • dldw8816
  • 2016年05月05日 11:54
  • 2458

STM32F103USB升级应用程序DFU功能

  • 2014年11月19日 11:57
  • 25.21MB
  • 下载

STM32 IAP 在线升级详解

 一、在进入主题之前我们先了解一些必要的基础知识----stm32系列芯片的种类和型号: startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32...
  • u012252959
  • u012252959
  • 2016年10月18日 17:18
  • 390

STM32 IAP 在线升级详解

一、在进入主题之前我们先了解一些必要的基础知识----stm32系列芯片的种类和型号: startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F107xx ...
  • yx_l128125
  • yx_l128125
  • 2013年10月24日 15:49
  • 71321

STM32 USB DFU固件升级必读

升级代码工程须知 建立好工程后,需要做以下几步处理: 1、首先点击编译器的”Target Option”,然后选择Target选项,设置”Read/Only Memory Areas”域的...
  • u011318735
  • u011318735
  • 2013年12月19日 21:06
  • 6462

官方DFU固件更新软件实现对STM32的USB方式代码升级简易说明

软件下载: stsw-stm32080.zip (12400 K) 下载次数:7843  (特别说明,此软件含有官方的VS平台的源码文件) 开发平台:STM32-V5开发板 前几天在论坛发布了使用串...
  • zhjmyx
  • zhjmyx
  • 2016年11月06日 20:08
  • 3087

简单实现stm32f103芯片usb模拟U盘进行IAP更新用户程序

更新单片机内的用户程序,方式一般都是仿真器,串口,网络口,usb DFU,另类一点CAN也行,但是这些方式都有一个共同点,必须要有相应的上位机配合操作,还要教会别人使用,那么能不能有更简单傻瓜化的升级...
  • lrmlrm
  • lrmlrm
  • 2016年05月26日 14:58
  • 11959

STM32 IAP 在线升级详解

一、在进入主题之前我们先了解一些必要的基础知识----stm32系列芯片的种类和型号: startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F107xx ...
  • yx_l128125
  • yx_l128125
  • 2013年10月24日 15:49
  • 71321
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:STM32 USB升级
举报原因:
原因补充:

(最多只允许输入30个字)