硬汉嵌入式论坛

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

[SPI/QSPI] SPI4+DMA读取AD7606数据有误

[复制链接]

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2026-3-5 16:31:20 | 显示全部楼层 |阅读模式
本帖最后由 dipsy 于 2026-3-5 17:33 编辑

如题,使用SPI4+DMA读取AD7606;SPI4与DMA均配置为16bit,但是得到的数据:

通道1~通道4的数据与通道5~通道8的数据成对相等;
CH1=CH5
CH2=CH6
CH3=CH7
CH4=CH8
AD7606的并口(除SPI外的其他引脚)也接到了MCU,但是没有配置,会是DOUTB默认传输了5~8通道吗?但是将DOUTB配置为开漏的高阻态,问题还是没有解决。
通过逻辑分析仪抓取spi4的CS、SCLK、MISO的波形,发现AD7606输出的数据就是不对的,前四个通道覆盖了后四个通道的值
下图是抓取的SCLK与MISO的时序图。
调试了一天,找不到原因,哪位大佬知道
波形图.png






回复

使用道具 举报

1万

主题

7万

回帖

12万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
121537
QQ
发表于 2026-3-6 00:31:07 | 显示全部楼层
测试下不使用DMA方式是否。
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2026-3-6 09:11:59 | 显示全部楼层
eric2013 发表于 2026-3-6 00:31
测试下不使用DMA方式是否。

不使用DMA,纯SPI发送,还是有这个问题
SPI波形图.png
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2026-3-6 10:22:38 | 显示全部楼层
还有个奇怪的现象:
给AD7606的不同输入通道,分别施加一路电压,得到的结果如下:


CH1输入,CH1采集正常,CH1=CH5
CH2输入,CH2采集正常,CH2=CH6
CH3、CH4输入,无法读取,都是0
CH5输入,CH5无法读取,输入值在CH3=CH7这两个通道上
CH6输入,CH6无法读取,输入值在CH4=CH8这两个通道上
CH7、CH8输入,无法读取,都是0


回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2026-3-6 10:52:33 | 显示全部楼层
感谢大佬,芯片用成4通道的了
回复

使用道具 举报

1万

主题

7万

回帖

12万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
121537
QQ
发表于 7 天前 | 显示全部楼层
dipsy 发表于 2026-3-6 10:52
感谢大佬,芯片用成4通道的了

谢谢告知最终原因
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-14 08:47 , Processed in 0.433519 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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