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

STM32H750自带的SPI BootLoader烧录疑问

[复制链接]
大家伙好 提问时间:2023-1-4 10:40 / 未解决
翻阅应用笔记AN4286与AN2606,得知STM32H750自带的Bootloader支持spi烧录。可在实际尝试中,通过spi向stm32发送同步帧,无法收到从机应答。
H750的内部flash只有一个扇区,对扇区擦写时,内部flash用于IAP的自定义Bootloader也会被擦写掉。
产品中没有外接的QSPI或其他存储介质,因此自己写BootLoader不太现实。



想知道系统自带的bootloader SPI方式烧录有没有成功用过的,
若能得到答疑,万分感谢!


确认了SPI本身的时序没有问题,
符合手册上的Polarity: CPOL Low, CPHA Low, (时钟空闲时为低电平,上升沿采样)
NSS hardware(确认spi与stm32H750的连线没有错,STM32上的SPI3的NSS硬件下拉接地)。
用了一个外接的spi flash发送指令读取ID,逻辑分析仪能读到MISO有数据返回。



162407m7pv3ii9it99ilm6.png

同样的接线方式,接到stm32H750的SPI3引脚上,发送同步指令帧,MISO上没有数据返回。
依次发送0x5A,0x00,0x00,0x79

163853ksaz155ci8zitsck.png

时序按照AN2606-P410-74.5  SPI connection timing 设置
162406ap9k42ued5ppevvs.png
162407gnnrgnggvfzrg22a.png









收藏 评论14 发布时间:2023-1-4 10:40

举报

14个回答
xmshao 回答时间:2023-1-4 11:39:38
建议你使用ST提供的编程工具STM32CubeProgrammer和STLINK V3试试,注意是V3版的stlink.


结合AN2606确认下管脚及硬件连接线路,比方CLK线上加个下拉。参考UM2237手册再确认STM32CubeProgrammer


工具下的SPI配置。
大家伙好 回答时间:2023-1-4 16:45:48
xmshao 发表于 2023-1-4 11:39
建议你使用ST提供的编程工具STM32CubeProgrammer和STLINK V3试试,注意是V3版的stlink.

用stlink-V3配合cube program进行验证是个好思路,感谢!
大家伙好 回答时间:2023-2-14 16:06:55
xmshao 发表于 2023-1-4 11:39
建议你使用ST提供的编程工具STM32CubeProgrammer和STLINK V3试试,注意是V3版的stlink.



购买了stlink-V3,
项目所使用的单片机型号为STM32H750VBT6
AN2606 50 STM32H74xxx/75xxx devices bootloader中
注明SPI1、SPI2、SPI3与SPI4均支持ISP烧录
使用STM32CubeProgrammer只能连接识别SPI1
想请教下是我对手册的理解哪里出了问题呢,
万分感谢!!!


大家伙好 回答时间:2023-2-16 09:25:22
大家伙好 发表于 2023-2-14 16:06
购买了stlink-V3,
项目所使用的单片机型号为STM32H750VBT6
AN2606 50 STM32H74xxx/75xxx devices bootl ...


问题已解决,SPI1 MOSI与MISO有上拉,SPI3无
增加上拉电阻后均可识别
大家伙好 回答时间:2023-2-16 14:00:58

大家伙好 发表于 2023-2-16 09:25
问题已解决,SPI1 MOSI与MISO有上拉,SPI3无
增加上拉电阻后均可识别

确定是由于接触不良导致的,MOSI与MISO无需上下拉电阻

AAAA00 回答时间:2023-4-18 09:06:29

大家伙好 发表于 2023-2-16 14:00
确定是由于接触不良导致的,MOSI与MISO无需上下拉电阻

你好,我遇到相似问题了,,

1,我发送了0x5A 00 00 然后等待应答0x79 ,有应答了,必须发送0x79吗?

2,我在完成同步后,我发送0x5A 00 FF 00 等待应答,却再也没有收到应答了。

你能帮我看看不,手册的时序不是太详细,我想先实现GAT指令

butterflyspring 回答时间:2023-4-18 14:38:31
AAAA00 发表于 2023-4-18 09:06
[md]你好,我遇到相似问题了,,

1,我发送了0x5A 00 00 然后等待应答0x79 ,有应答了,必须发送0x79吗 ...

从手册上,命令似乎多发了一个字节。
另外按照其他小伙伴的建议,用ST-LINKV3去连接,这样可以测试出具体命令波形来对照了。
SPI in bootloder1.png SPI in bootloder2.png
AAAA00 回答时间:2023-4-18 16:46:22

butterflyspring 发表于 2023-4-18 14:38
从手册上,命令似乎多发了一个字节。
另外按照其他小伙伴的建议,用ST-LINKV3去连接,这样可以测试出具体 ...

最后的00是提供时钟,目的是接收应答的。tek00000.bmp

AAAA00 回答时间:2023-4-18 16:55:36

butterflyspring 发表于 2023-4-18 14:38
从手册上,命令似乎多发了一个字节。
另外按照其他小伙伴的建议,用ST-LINKV3去连接,这样可以测试出具体 ...

image.png

这个是同步数据的波形。能收到应答,在主机端发送0x79后,返回的数据是0X72。然后我发送 0x5a 0x00 0xff 0x00 0x00 0x00 0x00 0x00 。收到的数据都不正常了

butterflyspring 回答时间:2023-4-18 17:15:29
AAAA00 发表于 2023-4-18 16:46
[md]最后的00是提供时钟,目的是接收应答的。![tek00000.bmp](data/attachment/forum/202304/18/164615iy ...

是的,是应该发一个空数据提供时钟,是我看漏了.
butterflyspring 回答时间:2023-4-18 17:18:26
AAAA00 发表于 2023-4-18 16:55
[md]!(data/attachment/forum/202304/18/165315czrsiv2jqrriujso.png?imageMogr2/auto-orient/strip%7Cim ...

同步的数据看起来和协议对的上,关键是后面的GET command 的信号没看到。
而且GET command 发出后,按照协议描述最终会有十几个字节回复出来(列出所有命令)。
AAAA00 回答时间:2023-4-19 08:19:11

butterflyspring 发表于 2023-4-18 17:18
同步的数据看起来和协议对的上,关键是后面的GET command 的信号没看到。
而且GET command 发出后,按照 ...

C0FF4CA2-8CE9-4257-A5AE-62FF706559CE.png

这是我完整的指令,从get指令开始就不正常了

butterflyspring 回答时间:2023-4-19 17:31:17
手册上提到一句话,SPI字节之间最小的时间15us, 楼主可以检查一下这一点。

大家伙好 回答时间:2024-1-26 09:31:08
STM32H750 SPI烧录.zip (610.11 KB, 下载次数: 3)
Snipaste_2023-02-14_16-08-02.png
Snipaste_2023-02-14_16-08-02.png
Snipaste_2023-02-14_16-08-02.png
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版