[STM32F1] 有STM32F103RC DMA+DAC+TIM6的demo吗?

[复制链接]
2919|6
 楼主| 电子write_cai 发表于 2014-8-29 11:17 | 显示全部楼层 |阅读模式
@香水城
   Hi, 你们好,最近在调试这个,现在发现我的程序怎么运行都不能把数据传给DMA,
代码基本上都是库函数.
  首先,进行DMA2的初始化, 包含源地址 目的地址,数据宽度,数据数量,然后init.
  其次使能DAC通道,DAC_Channel1
  再使能DMA_DAC通道.
  最后就是使能TIM6_Cmd;
现在我debug,发现DMA中断标志不变化.

大家应该用到这类的应用很多,我网上看了也没有比较好的demo.
求分享.
haolaishi 发表于 2014-8-29 13:36 | 显示全部楼层
DMA中断标志不变化,说明你没触发中断,你看看你DMA中断源是什么呢
hudi008 发表于 2014-8-29 23:47 | 显示全部楼层
找起来拼凑的
hudi008 发表于 2014-8-29 23:48 | 显示全部楼层
这个应该都有的
hudi008 发表于 2014-8-29 23:48 | 显示全部楼层
定时器可以仿写  其他的也可以的
香水城 发表于 2014-9-9 17:25 | 显示全部楼层
LZ需要的应用涉及到DMA、DAC和TIM6模块协同工作。

TIM6的TRGO事件触发DMA从DAC_DHR1寄存器搬移数据到DAC_DORx寄存器,然后在对应引脚输出模拟电压信号。

如果DMA的中断标志没有变化,可以看看DMA的CNTR寄存器有没有自减过,来确定是否DMA有过传输。

如果DMA的CNTR一直是初始设置的值,需要看第一:DMA模块有正确配置否?第二:DMA的触发源有没有来到?就是说TIM6的TRGO有没有正确产生?

这是大概调试的思路。
vslyu 发表于 2016-4-17 12:13 | 显示全部楼层
The design in your web is from your unique vision.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:只要你是拼多多新用户就可以加我微信,微信号772880135验证您是新用户后立刻微信转你20元。欢迎朋友加我微信,多年21ic用户,诚信为本!

157

主题

1534

帖子

3

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