[STM32F1] 通过SPI连续保存数据,使用DMA方式需要注意什么?

[复制链接]
 楼主| lnhaing 发表于 2015-2-3 16:44 | 显示全部楼层 |阅读模式
本帖最后由 lnhaing 于 2015-2-4 09:00 编辑

SPI通信, 数据发送到存储芯片。目前设置的波特率设置为18M,采用检测发送缓冲空标志位来执行下一个数据的发送。
在连续保存50个16位的数据下,如果采取DMA方式,CPU能节省多少效率?有没有必要采取DMA方式?

DMA方式下,只要把数据放在连续的地址空间里,开启DMA就好了?
-------------------------------------------------------------------------------------
我是检测数据改变才保存的,那这种情况有时候是非连续保存,
如果是非连续保存效率上也会提高吗?
popeye021 发表于 2015-2-3 17:50 | 显示全部楼层
参考官方关于DMA的demo程序即可啊
airwill 发表于 2015-2-3 22:19 | 显示全部楼层
连续保存50个16位的数据, 如果频繁出现这样的操作,DMA 对 CPU 时间的节省是有效果的。至于能节省多少,还得看你的数据来源,保存的过程。
DMA方式下,只要把数据放在连续的地址空间里,开启DMA就好了?还有先要设定 DMA 传输的量
 楼主| lnhaing 发表于 2015-2-4 08:09 | 显示全部楼层
airwill 发表于 2015-2-3 22:19
连续保存50个16位的数据, 如果频繁出现这样的操作,DMA 对 CPU 时间的节省是有效果的。至于能节省多少,还 ...

谢谢!现在写的程序是数据改变了就保存,有时候可能会遇到多个数据同时改变,然后同时保存!
foxglove 发表于 2015-2-5 15:54 | 显示全部楼层
学习学习   
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

82

帖子

0

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