这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » TC39X在QSPI中使用连续传输模式,CS无法返回的原因?

共2条 1/1 1 跳转至

TC39X在QSPI中使用连续传输模式,CS无法返回的原因?

工程师
2024-02-26 20:01:17     打赏

我正在尝试在 QSPI 中使用连续传输模式。 在连续模式下写入 bacon.last = 0 之后,我正在通过 DMA 将数据复制到 spi tx。 我将一次性发送全部数据,一旦 DMA 完成,我就会得到一个 ISR。 在 ISR 内部,我通过设置 qspi -CLC 直接禁用模块。> B 。 DISR = 1 ;( 而不是让 LAST=1 然后发送我不想要的最后一个字节)。但是这样做我没法让 cs 回去完成画面。 这是意料之中的吗。 一段时间后我也会重置这样做。 在禁用之前,spi 状态处于 “预期” 状态。 关于为什么这不起作用有任何评论吗?




关键词: TC39X     QSPI     CS    

助工
2024-02-26 20:01:55     打赏
2楼

您的问题涉及到QSPI连续传输模式下,CS无法返回的原因。

CS(片选信号)在QSPI通信中用于选择要通信的设备,当CS为高电平时表示不选择任何设备,当CS为低电平时表示选择了某个设备。在连续传输模式下,CS信号应该在每个传输周期中保持低电平,直到传输完成。

在您的描述中,您通过禁用QSPI模块来实现结束传输,而不是发送一个不需要的最后一个字节。但是这样做可能导致CS信号无法返回。可能的原因如下:

1. 硬件问题:请确保CS信号的接线正确,在连续传输模式下,CS信号应该在传输期间保持低电平,并在传输结束后返回高电平。

2. 软件问题:在禁用QSPI模块之前,可能需要等待一段时间,以确保传输完全结束并且CS信号已经返回。您可以在禁用QSPI模块之前增加适当的延迟来验证这一点。

3. 其他配置问题:请确保QSPI模块和DMA配置正确,并且传输的数据长度和模式与设备的要求相匹配。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]