硬汉嵌入式论坛

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

[SPI/QSPI] stm32 H743 SPI FIFO阈值设置

[复制链接]

1

主题

2

回帖

5

积分

新手上路

积分
5
发表于 2023-6-29 09:50:57 | 显示全部楼层 |阅读模式
使用spi1 有16×8bitfifo空间,数据帧长度32bit,fifo阈值设置成1传输没有问题,但是设置超过2之后,无法进行传输,在HAL_SPI_TransmitReceive里__HAL_SPI_ENABLE(hspi)之前加一句关闭外设之后能够成功发出,请问这是为什么
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106738
QQ
发表于 2023-6-30 09:42:04 | 显示全部楼层
超过2是可以的,注意使用最新版的HAL库。

1、STM32H7的SPI FIFO竟然可以用了,不过要注意FIFO大小和数据位宽的关系
https://www.armbbs.cn/forum.php?mod=viewthread&tid=97137

2、STM32H7的SPI DMA配置时,SPI硬件FIFO,DMA突发设置等几个重要注意事项
https://www.armbbs.cn/forum.php?mod=viewthread&tid=102944
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2023-7-3 08:51:20 | 显示全部楼层
eric2013 发表于 2023-6-30 09:42
超过2是可以的,注意使用最新版的HAL库。

1、STM32H7的SPI FIFO竟然可以用了,不过要注意FIFO大小和数据 ...

但是超过2之后,在库函数里面加一句__HAL_SPI_DISABLE(hspi)就能够正常传输了,这个怎么解释呢
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2023-7-3 08:52:05 | 显示全部楼层
eric2013 发表于 2023-6-30 09:42
超过2是可以的,注意使用最新版的HAL库。

1、STM32H7的SPI FIFO竟然可以用了,不过要注意FIFO大小和数据 ...

设置阈值是2,数据位宽32位
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106738
QQ
发表于 2023-7-4 03:37:02 | 显示全部楼层
Zemon 发表于 2023-7-3 08:51
但是超过2之后,在库函数里面加一句__HAL_SPI_DISABLE(hspi)就能够正常传输了,这个怎么解释呢

这个是我做的,一切正常

下载 (3).png
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2024-4-7 14:37:04 | 显示全部楼层
兄弟 你这个问题我也遇到类似的了 后来找到原因了没
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 04:56 , Processed in 0.259816 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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