注册 登录
查看: 871|回复: 5

DMA 脉冲计数

[复制链接]
发表于 2013-5-16 17:20:37 | 显示全部楼层 |阅读模式
在DMA初始化程序DMA_count_Init(DMA_CHn CHn,PTXN ptxn,u32 conut,DMA_count,DMA_conut_cfg cfg)里,第三个参数到底是肿么用的呀?第四个是说的触发电平吗?DMA是一定要进入中断吗?不进中断该怎么设置?
回复

使用道具 举报

发表于 2013-5-16 17:33:19 | 显示全部楼层
请看注释:
  1. /*************************************************************************
  2. *                             山外嵌入式开发工作室
  3. *
  4. *  函数名称:DMA_count_Init
  5. *  功能说明:DMA累加计数初始化
  6. *  参数说明:DMA_CHn              通道号(DMA_CH0 ~ DMA_CH15)
  7. *            PTxn                 触发端口
  8. *            count                累加计数中断值
  9. *            DMA_Count_cfg        DMA传输配置
  10. *  函数返回:无
  11. *  修改时间:2012-1-20
  12. *  备    注:
  13. *************************************************************************/
  14. void DMA_count_Init(DMA_CHn CHn, PTxn ptxn, u32 count, DMA_Count_cfg cfg)
不需要中断的,可以修改函数。上面的那个函数,底部删掉这两个语句。
  1.     /* 开启中断 */
  2.     DMA_EN(CHn);                                    //使能通道CHn 硬件请求
  3.     DMA_IRQ_EN(CHn);                                //允许DMA通道传输
回复 支持 反对

使用道具 举报

发表于 2013-5-16 17:34:15 | 显示全部楼层
不一定要进中断,只不过进中断就可以保证溢出后计数的值还是正确的。
如果保证不会溢出,那完全没必要用 中断
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-5-16 17:36:03 | 显示全部楼层
那累加计数中端值是怎么个意思?这个值的设定对用DMA_count_get读回的值有影响吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-5-16 17:43:50 | 显示全部楼层
山外メ雲ジ 发表于 2013-5-16 17:33
请看注释:不需要中断的,可以修改函数。上面的那个函数,底部删掉这两个语句。

累加计数中断是不是不用中断的话就不用管它
回复 支持 反对

使用道具 举报

发表于 2013-5-16 19:20:28 | 显示全部楼层
冬日暖阳style° 发表于 2013-5-16 17:36
那累加计数中端值是怎么个意思?这个值的设定对用DMA_count_get读回的值有影响吗?

中断值,就是计数到了这个中断值,就会产生中断。
这个值最大可设为 0x7FFF.
这个值设置太小,就会触发中断
回复 支持 反对

使用道具 举报

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

本版积分规则

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