金牌会员
- 积分
- 1201
- 威望
- 600
- 贡献
- 313
- 兑换币
- 283
- 注册时间
- 2012-5-27
- 在线时间
- 145 小时
- 毕业学校
- 广东海洋大学
|
校内赛中以0.2秒的差距输给第一名,因为两队都是用k60,所以悲剧的。。 我们只好换芯片了。我们选择了用coldfire的芯片。只因为看中了它的dma功能。coldfire的资料真的是少之又少,其中dma的资料更是凤毛麟角。英语很差的我,只好开着有道词典,把数据手册中的dma模块看了一遍又一遍。。(真庆幸我还活着)。后来看手册看着看着就有感觉了,其实冷火的使用并没有传说中那么难。主要只是中文资料极少,很多人不愿意接触。
经过许多天的奋斗。。终于在mcf52255上使用dma成功采集回来图像。
既然如此,我就把dma初始化部分的贴出来吧。事实证明,冷火的dma是可以用来采集摄像头图像的。
使用的是dtim触发dma请求。
下面是dma初始化代码
/*********************************% 质子一号 %*************************************
* 实现功能 : 初始化摄像头的dma与中断模块。
* 备注 : dtin0触发dma请求
**********************************************************************************/
void Ov7725_exti_Init()
{
MCF_GPIO_PTIPAR = 0x00; // 配置PTI为普通IO
MCF_GPIO_DDRTI = 0x00; // 设置PTI为输入
//行、场中断
init_irq(3);//行中断
init_irq(5);//场中断
//DMA 配置
MCF_GPIO_PTCPAR |= MCF_GPIO_PTCPAR_DTIN0_DTIN0; //DTin0
MCF_DMA0_DSR |= MCF_DMA_DSR_DONE;
/* Enable DMA master access in both supervisor and user mode */
MCF_SCM_MPR = MCF_SCM_MPR_MPR(0x05);
//dtim0 trigger DMA0
MCF_SCM_DMAREQC = MCF_SCM_DMAREQC_DMAC0(0x4);
MCF_DMA_SAR(0) = (uint32)CAMERA_ADDRESS;
MCF_DMA_DAR(0) = (uint32)IMG_BUFF;
MCF_DMA_BCR(0) = CAMERA_DMA_NUM;
MCF_DMA_DCR(0) = //MCF_DMA_DCR_INT //不触发DMA中断
MCF_DMA_DCR_SSIZE(1) //ssize : byte
| MCF_DMA_DCR_DSIZE(1) //dsize : byte
| MCF_DMA_DCR_DINC //目的地址自增
//| MCF_DMA_DCR_SINC //源地址保持不变
| MCF_DMA_DCR_D_REQ //传输完毕后,关闭dma请求
| MCF_DMA_DCR_EEXT //外部触发dma
| MCF_DMA_DCR_CS; //一个请求触发一次
//DTMR 配置
MCF_DTIM0_DTMR = 0; //清空dtmr寄存器
MCF_DTIM0_DTMR = MCF_DTIM_DTMR_CE_RISE //上升沿捕捉
| MCF_DTIM_DTMR_CLK_DIV1; //使用系统时钟sysclk;
MCF_DTIM_DTXMR(0) |= MCF_DTIM_DTXMR_DMAEN; //dma请求使能
//MCF_DTIM_DTXMR(0) |= MCF_DTIM_DTXMR_HALTED; //挂起状态停止计数
//MCF_DTIM_DTXMR(0) &= ~MCF_DTIM_DTXMR_MODE16;
//MCF_DTIM_DTMR(0) &= ~MCF_DTIM_DTMR_FRR; //Restart
//MCF_DTIM_DTMR(0) |= MCF_DTIM_DTMR_OM; //OutputMode
MCF_DTIM_DTMR(0) |= MCF_DTIM_DTMR_PS(0x5);
//启动DTMR
MCF_DTIM_DTMR(0) |= MCF_DTIM_DTMR_RST;
}
补充内容 (2013-6-5 12:02):
MCF_DTIM_DTMR(0) |= MCF_DTIM_DTMR_PS(0x5); 这句代码是可以注释掉的,用于对时钟进行分频。有没有都一样。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|