硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3042|回复: 6
收起左侧

[USB] USB升级外部的SPI FLASH

[复制链接]

8

主题

44

回帖

68

积分

初级会员

积分
68
发表于 2019-8-14 16:17:31 | 显示全部楼层 |阅读模式
由于使用的是H750,所以应用程序放到外面的SPI FLASH中XIP,BOOT程序放到内部的flash中,根据条件去外面执行代码或者升级外部spi flash。升级外部的SPI flash是通过DFU(IAP)的形式, cube里面提供的是升级内部的flash,我想改成升级外部的flash, 请问这种方法是否可行?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
发表于 2019-8-14 16:42:07 | 显示全部楼层
可以自己写个USB bootloader,怎么升级都可以。
回复

使用道具 举报

7

主题

125

回帖

146

积分

初级会员

积分
146
发表于 2019-8-15 00:02:50 | 显示全部楼层
可以的,把qspi flash的驱动添加进去,在usbd_dfu_flash.c里添加接口,通过地址分段操作就行
回复

使用道具 举报

8

主题

44

回帖

68

积分

初级会员

积分
68
 楼主| 发表于 2019-8-16 14:05:53 | 显示全部楼层
狂野的庄稼汉 发表于 2019-8-15 00:02
可以的,把qspi flash的驱动添加进去,在usbd_dfu_flash.c里添加接口,通过地址分段操作就行

你已经实现了吗?我现在USB已经进入DFU模式,SPI FLASH读写正常,准备改写usbd_flah.c/h文件,能否借鉴下代码,嘿嘿
回复

使用道具 举报

7

主题

125

回帖

146

积分

初级会员

积分
146
发表于 2019-8-16 16:51:02 | 显示全部楼层
真真切切zzz 发表于 2019-8-16 14:05
你已经实现了吗?我现在USB已经进入DFU模式,SPI FLASH读写正常,准备改写usbd_flah.c/h文件,能否借鉴下 ...

不能提供源码,不好意思。
1. 调通QSPI的驱动
2. 修改FLASH_DESC_STR宏
3. 在Flash的操作函数中加上地址判断和相应的QSPI处理函数
  1. USBD_DFU_MediaTypeDef USBD_DFU_Flash_fops = {
  2. <div align="left">    (uint8_t*)FLASH_DESC_STR,
  3.     Flash_If_Init,
  4.     Flash_If_DeInit,
  5.     Flash_If_Erase,
  6.     Flash_If_Write,
  7.     Flash_If_Read,
  8.     Flash_If_GetStatus,
  9. </div>};
复制代码

主要就是上面几点,你自己摸索下

回复

使用道具 举报

8

主题

44

回帖

68

积分

初级会员

积分
68
 楼主| 发表于 2019-8-19 16:40:14 | 显示全部楼层
狂野的庄稼汉 发表于 2019-8-16 16:51
不能提供源码,不好意思。
1. 调通QSPI的驱动
2. 修改FLASH_DESC_STR宏

我也是在改这里,不过我看到群里有U盘升级的程序,我已经根据我的硬件改好了,实现了U盘升级,拜托了上位机,更方便啊。DFU这部分后面再看看吧。
回复

使用道具 举报

8

主题

44

回帖

68

积分

初级会员

积分
68
 楼主| 发表于 2019-8-19 16:40:17 | 显示全部楼层
本帖最后由 真真切切zzz 于 2019-8-19 16:42 编辑
狂野的庄稼汉 发表于 2019-8-16 16:51
不能提供源码,不好意思。
1. 调通QSPI的驱动
2. 修改FLASH_DESC_STR宏

我也是在改这里,不过我看到论坛里有U盘升级的程序,我已经根据我的硬件改好了,实现了U盘升级,拜托了上位机,更方便啊。DFU这部分后面再看看吧。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-18 04:10 , Processed in 0.167948 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表