首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

camera数据过来后,应用能否直接memcpy解决方法

2012-04-15 
camera数据过来后,应用能否直接memcpy需求:我用camera实现了数据通信,用DMA映射了一块内存,内存有一个虚拟

camera数据过来后,应用能否直接memcpy
需求:我用camera实现了数据通信,用DMA映射了一块内存,内存有一个虚拟地址,比如是:0xd57b0000
请问我想要获取里面的内容,应用层是否可以直接:
memcpy(testDisp,(BYTE *)0xd57b0000,1024*3*600);

另外还有一点:camera的内存数据是根据中断来的,中断来了立马刷新内存的数据,我在memcpy的过程,是否需要做些保护措施,类似屏蔽中断之类的?还是不需要去管,直接取就是了

[解决办法]
应用层不能直接copy吧,因为是不同空间,虚地地址对应的物理地址应该不一样。保护措施应该是需要的,要不然你才复制一半的时候中断来了,然后刷新内存,后半部分和前半部分就不是一个帧的了。估计是这样。。。不过屏蔽中断不是好办法吧,在应用里面屏蔽中断估计比较麻烦,而且每次复制帧都屏蔽,频率也太高了。最好是创建一个消息队列,给camera应用发过去,这样好点,应用从那里面取

热点排行