打印
[STM32F1]

有STM32F103RC DMA+DAC+TIM6的demo吗?

[复制链接]
2498|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 | 只看该作者
这个应该都有的

使用特权

评论回复
5
hudi008| | 2014-8-29 23:48 | 只看该作者
定时器可以仿写  其他的也可以的

使用特权

评论回复
6
香水城| | 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有没有正确产生?

这是大概调试的思路。

使用特权

评论回复
7
vslyu| | 2016-4-17 12:13 | 只看该作者
The design in your web is from your unique vision.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

157

主题

1534

帖子

3

粉丝