硬汉嵌入式论坛

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

[SPI/QSPI] 修改V7-SPI-DMA的模式为只收模式,但是sclk时钟显示不对

[复制链接]

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-4-17 10:24:08 | 显示全部楼层 |阅读模式
本帖最后由 小宝居然 于 2024-4-17 11:01 编辑

求助各位佬,可以帮小弟看看这段代码怎么改吗,ADS1278硬件SPI使用的是安富莱的驱动。
遇到的问题是:ads1278是中断触发adc采样,我将SPI接收函数放在中断里,如果只接受一个字符,那么slck因该只有8个pwm波,但实际是,修改V7-SPI-DMA的模式为只收模式,但是sclk时钟显示接收和发送的时钟都有,有16个pwm波,不知道是哪里没改对。

ads1278的SCLK/DRDY/DOUT时序图:



硬件spi初始化:

spi接受函数:

中断触发ads1278接收,并只接收一个字节





ads1278的SCLK/DRDY/DOUT时序图:

ads1278的SCLK/DRDY/DOUT时序图:

ads1278的SCLK/DRDY/DOUT时序图:

ads1278的SCLK/DRDY/DOUT时序图:

硬件spi初始化:

硬件spi初始化:

spi接受函数:

spi接受函数:

中断触发ads1278接收,并只接收一个字节

中断触发ads1278接收,并只接收一个字节
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106718
QQ
发表于 2024-4-17 11:46:32 | 显示全部楼层
分享完整代码到百度云,我看下。
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
 楼主| 发表于 2024-4-17 15:23:29 | 显示全部楼层
    链接:https://pan.baidu.com/s/1tc1qa5TobgJNXnam5S-pjQ  提取码:9bv2
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
 楼主| 发表于 2024-4-17 16:28:02 | 显示全部楼层
eric2013 发表于 2024-4-17 11:46
分享完整代码到百度云,我看下。

代码在网盘里,麻烦您看一下
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106718
QQ
发表于 2024-4-18 08:43:35 | 显示全部楼层
小宝居然 发表于 2024-4-17 16:28
代码在网盘里,麻烦您看一下

1、不要在中断里面读取等待,在中断外部等待。

        while (wReceiveState == RECEIVE_WAIT)
        {
                ;
        }

2、另外看你的EXTI中断是不是触发了两次。
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
 楼主| 发表于 2024-4-23 17:12:06 | 显示全部楼层
eric2013 发表于 2024-4-18 08:43
1、不要在中断里面读取等待,在中断外部等待。

        while (wReceiveState == RECEIVE_WAIT)

谢谢站长指点
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 00:36 , Processed in 0.538172 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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