你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

ST-LINK Utility编写外部flash驱动问题

[复制链接]
颩色四葉愺 提问时间:2017-11-9 16:04 /
      因项目需要,需要在stm32外挂一片SPI flash(华邦32Mbits的),参考官方给的例程,ST-LINK Utility能添加自定义的flash,但是不能正确运行。

TIM截图20171109155456.png

官方示例工程在软件安装路径下

TIM截图20171109155522.png

一共提供三个示例


TIM截图20171109155705.png

我自己编译的stldr文件已经能正确识别了

TIM截图20171109155744.png

各种操作都是失败的

编写自定义的驱动,网上没有资料,官方资料也少之又少,希望能得到官方的帮助!

测试源码: exloader.rar (15.2 MB, 下载次数: 530)
收藏 1 评论12 发布时间:2017-11-9 16:04

举报

12个回答
ychf0000 回答时间:2018-2-8 22:42:04
您好,您的问题解决了吗?
我的能擦除、读,但是写的时候报错
22:36:48 : Device ID:0x414
22:36:48 : Device flash Size : 512KBytes
22:36:48 : Device family :STM32F10xx High-density
22:38:02 : Erasing external memory success.
22:39:47 : External memory sector 0 erased.
22:40:05 : [UNIGBK.BIN] opened successfully.
22:40:12 : Programming error @ 0x00006A00!
Nikola 回答时间:2018-2-28 09:47:53
帮顶!
Angel_YY_ST 回答时间:2018-2-28 09:58:12
提示: 作者被禁止或删除 内容自动屏蔽
wofei1314 回答时间:2018-2-28 10:09:05
本帖最后由 wofei1314 于 2018-2-28 10:13 编辑

我用过支持QSPI的STM32,直接在这个工具里选择,但是编译的时候已经产生好了hex文件...编译之前已经修改过分散加载文件...对于不支持QSPI的STM32来说,没用过.... ST-LINK Utility UM.pdf (1021.92 KB, 下载次数: 42)

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

wenyangzeng 回答时间:2018-2-28 10:30:52
报错的提示好像是指外部存储器读出错,是否应该检查一下硬件连接问题。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

anobodykey 回答时间:2018-2-28 10:35:49
首先你得确定你的flash驱动代码可以正常读写外部flash,然后再去编辑stldr的代码,另外我在你的代码里没有看到使能SPI时钟。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

feixiang20 回答时间:2018-2-28 11:09:43
先根据官方例程实验下看下区别,测试是否可以正确读写FLASH,看看是否配置有误,硬件连接是否有错,可能和SPIflash配置信息有关,如配置方式,另外查验“写”功能是否存在逻辑或时序问题。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

jcx0324 回答时间:2018-2-28 11:28:29
有指定SPI口的吧?
无薪税绵 回答时间:2018-2-28 13:41:39
  1. //StorageInfo 在 Dev_Inf.c 中的定义

  2. struct StorageInfo const StorageInfo  =  {
  3.    "M25P64_STM3210E-EVAL", //设备名称
  4.    SPI_FLASH,              //驱动类型                                                
  5.    0x00000000,             //设备起始位置  如果不行,避开内部Flash和RAM的地址,试试改为 0xC0000000
  6.    0x00800000,             //设置的总容量 4M字节 或者 32M位
  7.    0x00000100,             //写页大小 256字节
  8.    0xFF,                   //初始化的值
  9.    0x00000040, 0x00010000, //共有64个扇区 ,每个扇区有256页,每页256字节,即256*256=65536=0x10000
  10.    0x00000000, 0x00000000, //表示结束
  11. };
复制代码

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

七哥 回答时间:2018-2-28 23:17:44
本帖最后由 toofree 于 2018-2-28 23:19 编辑

这个问题,参考沙发楼层坛友的帖子,我在他的帖子中有回复。
https://www.stmcu.org.cn/module/foru ... 1630&fromuid=307297
可以在keil下,打开几个工程看看算法。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

wofei1314 回答时间:2018-3-2 11:16:46
本帖最后由 wofei1314 于 2018-3-2 11:26 编辑

你是如何编写stldr文件的?楼主能分享下吗
认知 回答时间:2019-10-23 12:29:24
我用工程编写了一个外部 nor flash的stldr文件放在ExternalLoader文件夹下面,但STM32-STLINK Utility无法识别到这个stldr,请问时什么原因呢?

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版