注册 登录
查看: 534|回复: 20

[K60] pit与dma的关系是什么

[复制链接]
发表于 2014-2-15 20:10:42 来自手机 | 显示全部楼层 |阅读模式
请问dma与pit的关系
回复

使用道具 举报

发表于 2014-2-15 20:11:50 | 显示全部楼层
没关系啊,都是不同的模块
回复 支持 反对

使用道具 举报

发表于 2014-2-15 20:12:13 | 显示全部楼层
没关系,一个是定时器,一个是自动传输数据模块
回复 支持 反对

使用道具 举报

发表于 2014-2-15 20:13:12 | 显示全部楼层
K60官方的手册上说。可以PIT触发DMA请求,不过我们试过触发一次后就不会停下来,网上也没见过有人实现这功能
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 09:29:36 来自手机 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-15 20:13
K60官方的手册上说。可以PIT触发DMA请求,不过我们试过触发一次后就不会停下来,网上也没见过有人实现这功能 ...

那我的pit0 中断是用来处理ad采集及直立相关计算的,如果我的pit0 定时为1ms,如果pit0 里面的函数执行时间为200us,再如果pit0 里面的函数加复杂,执行时间变为500us。这样对摄像头采集时间会加长吗,我的理解是pit0如果是最高级中断,摄像头的中断就得等待pit0 里面的函数执行完才能中断,如果pit0 里面函数执行时间长了,留给摄像头的中断时间就短了,所以摄像头采集时间加长,是这样理解吗
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:02:56 | 显示全部楼层
470895476 发表于 2014-2-16 09:29
那我的pit0 中断是用来处理ad采集及直立相关计算的,如果我的pit0 定时为1ms,如果pit0 里面的函数执行时 ...

摄像头的场中断配置最高优先级就好了,因为场中断的执行时间非常短。
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:03:16 | 显示全部楼层
470895476 发表于 2014-2-16 09:29
那我的pit0 中断是用来处理ad采集及直立相关计算的,如果我的pit0 定时为1ms,如果pit0 里面的函数执行时 ...

DMA采集不影响 PIT中断的
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:31:43 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-16 10:02
摄像头的场中断配置最高优先级就好了,因为场中断的执行时间非常短。

首先我不太清楚优先权到底用哪个方法,其次,把仅仅把场中断优先级提高吗?那pit和dma不会冲突吗?我一直解决不了这个问题。
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:33:44 | 显示全部楼层
lqiixx 发表于 2014-2-16 10:31
首先我不太清楚优先权到底用哪个方法,其次,把仅仅把场中断优先级提高吗?那pit和dma不会冲突吗?我一直 ...

DMA 中断的话,也很短的,可以比PIT中断优先级高或者低。
DMA的采集是 不需要CPU干预,换句话说不影响PIT中断,可以同时执行
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:36:48 | 显示全部楼层
lqiixx 发表于 2014-2-16 10:31
首先我不太清楚优先权到底用哪个方法,其次,把仅仅把场中断优先级提高吗?那pit和dma不会冲突吗?我一直 ...

优先级的配置,可以看这说明。

Coertx-M4系列 中断嵌套的 说明
http://www.vcan123.com/forum.php?mod=viewthread&tid=959
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:56:47 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-16 10:33
DMA 中断的话,也很短的,可以比PIT中断优先级高或者低。
DMA的采集是 不需要CPU干预,换句话说不影响PI ...

但是dma采集的时候cpu可以工作吗?就是pit可以工作吗?
回复 支持 反对

使用道具 举报

发表于 2014-2-16 10:59:24 | 显示全部楼层
lqiixx 发表于 2014-2-16 10:56
但是dma采集的时候cpu可以工作吗?就是pit可以工作吗?

可以啊,DMA本意就是无需CPU干预,释放CPU的,PIT是可以正常工作的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 11:14:44 来自手机 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-16 10:03
DMA采集不影响 PIT中断的

但是,摄像头还要曝光啊,pit0 的函数执行时间不影响曝光吗,
回复 支持 反对

使用道具 举报

发表于 2014-2-16 11:16:46 | 显示全部楼层
470895476 发表于 2014-2-16 11:14
但是,摄像头还要曝光啊,pit0 的函数执行时间不影响曝光吗,

你把线性CCD和摄像头搞混了吧?
摄像头的曝光时间是寄存器配置一下就好了,后续不需要我们自己控制曝光,而是摄像头模块自行配置曝光,单片机仅负责采集就好了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 11:26:32 来自手机 | 显示全部楼层
房宜楠 发表于 2014-2-16 11:16
你把线性CCD和摄像头搞混了吧?
摄像头的曝光时间是寄存器配置一下就好了,后续不需要我们自己控制曝光, ...

原来是这样,确实没研究过这些问题,谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 11:33:40 来自手机 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-16 10:33
DMA 中断的话,也很短的,可以比PIT中断优先级高或者低。
DMA的采集是 不需要CPU干预,换句话说不影响PI ...

但是我们老师说过直立优先,pit0 是执行直立程序的,在直立程序执行过程中不允许任何中断打断,不然有可能导致直立受到干扰,所以我的pit0 是一进来就关总中断,执行完里面的函数再开总中断,防止直立失败,所以我不敢把dma设置为最高中断
回复 支持 反对

使用道具 举报

发表于 2014-2-16 11:37:33 | 显示全部楼层
470895476 发表于 2014-2-16 11:33
但是我们老师说过直立优先,pit0 是执行直立程序的,在直立程序执行过程中不允许任何中断打断,不然有可能 ...

直立的控制周期为5ms,而场中断的执行时间仅仅是几ns,打断了几乎不影响直立控制周期。
而直立控制过程中,貌似是ADC采集、直立参数计算、电机控制,这些操作应该也可以被打断的。
回复 支持 反对

使用道具 举报

发表于 2014-2-16 11:38:08 | 显示全部楼层
470895476 发表于 2014-2-16 11:33
但是我们老师说过直立优先,pit0 是执行直立程序的,在直立程序执行过程中不允许任何中断打断,不然有可能 ...

可以多做尝试,不尝试过,是不知道的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 11:45:18 来自手机 | 显示全部楼层
隗英秀 发表于 2014-2-16 11:37
直立的控制周期为5ms,而场中断的执行时间仅仅是几ns,打断了几乎不影响直立控制周期。
而直立控制过程中 ...

好的,又长见识了,谢谢
回复 支持 反对

使用道具 举报

发表于 2014-2-18 10:41:59 | 显示全部楼层
房宜楠 发表于 2014-2-16 10:59
可以啊,DMA本意就是无需CPU干预,释放CPU的,PIT是可以正常工作的

那为什么我只把pit初始化 以后,单片机就死机了,但是我把pit里面进行的程序注释了以后就没有这种情况,是我pit里面运行的某些代码影响了dma采集吗?
回复 支持 反对

使用道具 举报

发表于 2014-2-18 10:42:26 | 显示全部楼层
山外メ雲ジ 发表于 2014-2-16 10:36
优先级的配置,可以看这说明。

Coertx-M4系列 中断嵌套的 说明

那为什么我只把pit初始化 以后,单片机就死机了,但是我把pit里面进行的程序注释了以后就没有这种情况,是我pit里面运行的某些代码影响了dma采集吗,比如adc或者ftm配置什么的?
回复 支持 反对

使用道具 举报

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

本版积分规则

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