[技术问答] NUC442 SPI发送波形疑惑

[复制链接]
392|13
 楼主 | 2019-11-14 10:26 | 显示全部楼层 |阅读模式
NUC442使用SPI做Master连续发送8位数据,示波器观察到每发送完成8位数据中间会有几个微秒的延时时间,另外,启动SPI发送后也会有几个微秒的延时才能够启动发送,如果是这样的话,选择高速模式的时候,会浪费太多的时间,这个是正常的吗?
716475dccbb2729cea.png 678875dccbb5082d16.png 90725dccbb64c0d41.png

使用特权

评论回复
| 2019-11-14 13:15 | 显示全部楼层
我用的NUC126  SPI_CTL寄存器中有个传输间隔控制SUSPITV,默认值为3,把它清0.

使用特权

评论回复
 楼主 | 2019-11-14 17:13 | 显示全部楼层
本帖最后由 hanhan1127 于 2019-11-14 17:30 编辑
yjgna 发表于 2019-11-14 13:15
我用的NUC126  SPI_CTL寄存器中有个传输间隔控制SUSPITV,默认值为3,把它清0.

从波形测量的结果算出来,确实是3。(3.5CLK的延时),但问题是软件上修改不成功,不清楚为什么,修改时SPI都是关闭状态,读SPI-CTL寄存器的值的确是0,但波形仍默认初始3。5CLK的延时、

911005dcd1e81b8dcd.png
设置SPI-CTL的SUSPITV的值=1,波形仍没变化。

使用特权

评论回复
 楼主 | 2019-11-14 17:39 | 显示全部楼层
找到问题了,TX发送数据的时候有要求时间开始发送数据: 204195dcd20dc43071.png

使用特权

评论回复
| 2019-11-14 23:29 | 显示全部楼层
楼主的应用要求必须高速吗

使用特权

评论回复
| 2019-11-14 23:29 | 显示全部楼层
我的观点就是满足需求就行了。跑太快反而容易出错。

使用特权

评论回复
| 2019-11-15 07:46 | 显示全部楼层
用spi 的fifo mode, 條件卡spi state 寄存器,fifo full, spi fifo 沒有滿就連續把資料寫到spi fifo去,這樣spi 波形就能連續。

使用特权

评论回复
| 2019-11-15 09:26 | 显示全部楼层
原来如此,没注意过。

使用特权

评论回复
| 2019-11-15 09:26 | 显示全部楼层
装备给力就是好。

使用特权

评论回复
| 2019-11-17 18:08 | 显示全部楼层
后面找到方法优化了么?

使用特权

评论回复
| 2019-11-18 10:16 | 显示全部楼层
原来如此,机制是这样的

使用特权

评论回复
 楼主 | 2019-11-18 13:18 | 显示全部楼层
jasontu 发表于 2019-11-15 07:46
用spi 的fifo mode, 條件卡spi state 寄存器,fifo full, spi fifo 沒有滿就連續把資料寫到spi fifo去,這 ...

这个方法我知道,但我发送的数据格式是变化的,片选变化的时候可能发送不同长度的数据,有时候是2个BYTE有时候是3个BYTE,所以这个FIFO的缓存长度就不好控制,如果都是32位的数据话,这个问题就这样操作即可。

使用特权

评论回复
| 2019-12-9 12:51 | 显示全部楼层
我觉得是正常的

使用特权

评论回复
| 2019-12-9 12:55 | 显示全部楼层
可以通过设置参数去掉这个时间间隔

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表