硬汉嵌入式论坛

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

定时器触发DMA写SPI问题

[复制链接]

76

主题

237

回帖

465

积分

高级会员

积分
465
发表于 2021-12-8 19:15:46 | 显示全部楼层 |阅读模式
想用定时器的溢出更新事件触发DMA,将6字节的数据传输到SPI的DR(移位寄存器配置为8位)。正常情况下一次溢出事件触发一次DMA传输,但我想实现定时器溢出一次就能传输6个字节甚至更多字节该如何实现?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2021-12-9 09:19:13 | 显示全部楼层
可以使用DMA突发模式,例子参考这个。

我的这个是1次触发,8次16bit数据读取。
QQ截图20211209091759.png


回复

使用道具 举报

76

主题

237

回帖

465

积分

高级会员

积分
465
 楼主| 发表于 2021-12-9 10:41:36 | 显示全部楼层
本帖最后由 kokoromi 于 2021-12-9 10:56 编辑
eric2013 发表于 2021-12-9 09:19
可以使用DMA突发模式,例子参考这个。

我的这个是1次触发,8次16bit数据读取。

我看了下,貌似没有6个字节这种组合,会多出来字节...
另外,如果我用的是带DMAMUX的L4+型号,貌似不支持突发传输...还有,我用的AD是SPI接口的,怎么避免因DMA传输每个字节的间隔时间小于SPI单个字节的收发时间而导致数据丢失的问题,头大了
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2021-12-9 10:59:58 | 显示全部楼层
kokoromi 发表于 2021-12-9 10:41
我看了下,貌似没有6个字节这种组合,会多出来字节...
另外,如果我用的是带DMAMUX的L4+型号,貌似不支 ...

支持突发,突发是配置的DMA。

DMAMUX是多路选择器。
回复

使用道具 举报

76

主题

237

回帖

465

积分

高级会员

积分
465
 楼主| 发表于 2021-12-9 11:28:00 | 显示全部楼层
eric2013 发表于 2021-12-9 10:59
支持突发,突发是配置的DMA。

DMAMUX是多路选择器。

刚才又仔细看了下L4+的手册RM0432,确实没看到关于突发传输的内容,好像真的不支持...
回复

使用道具 举报

76

主题

237

回帖

465

积分

高级会员

积分
465
 楼主| 发表于 2021-12-10 08:30:50 | 显示全部楼层
eric2013 发表于 2021-12-9 10:59
支持突发,突发是配置的DMA。

DMAMUX是多路选择器。

除了突发传输还有别的办法吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2021-12-10 09:57:00 | 显示全部楼层
kokoromi 发表于 2021-12-9 11:28
刚才又仔细看了下L4+的手册RM0432,确实没看到关于突发传输的内容,好像真的不支持...

那个型号,我也查下。
回复

使用道具 举报

76

主题

237

回帖

465

积分

高级会员

积分
465
 楼主| 发表于 2021-12-10 10:02:17 | 显示全部楼层
本帖最后由 kokoromi 于 2021-12-10 10:06 编辑
eric2013 发表于 2021-12-10 09:57
那个型号,我也查下。

STM32L4R5,我刚才又看了一眼,确实没有突发传输,而且双缓冲也不支持了,坑死了...
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2021-12-10 10:49:07 | 显示全部楼层
kokoromi 发表于 2021-12-10 10:02
STM32L4R5,我刚才又看了一眼,确实没有突发传输,而且双缓冲也不支持了,坑死了...

看了下DMA章节,确实没有任何介绍。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-14 06:05 , Processed in 0.043937 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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