如何直接写显卡内存达到显示图片的目的?

11000000 2009-03-25 10:17:12
请问各位高人:如何直接对显卡显存来进行读写操作?由于我接收的是256*256的灰度数据,现在的处理方式是建立一个bmp文件,将数据填入进去,然后displaybmp,这样显得画面有些显示不及时,有覆盖或者错位的情况。后听人说起可以直接写显存,可是资料实在太少,特请教各位高手。请提供链接、实现流程、实现原理以致源程序,哪怕只是顶贴,本人在此先行谢过了!谢谢!
...全文
743 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
11000000 2009-04-02
  • 打赏
  • 举报
回复
结贴。
11000000 2009-04-01
  • 打赏
  • 举报
回复
不太懂啊
[Quote=引用 19 楼 jinlking 的回复:]
引用 18 楼 zhanzongru 的回复:
用GDI繪圖 在內存中繪個bmp來顯示不行嗎?


GDI绘图,没有ddraw里面flip的概念,在内存中绘好了就拷贝到显存,这个显存的操作是很慢的,相对于flip
在draw中两个页面都在显存中,一个准备好了,直接flip就行了。
[/Quote]
11000000 2009-03-31
  • 打赏
  • 举报
回复
谢谢!我再看看,2440肯定不是。
[Quote=引用 15 楼 xajhuang 的回复:]
我觉得 不管在什么系统下都可以直接操作显存。显存无非就是一段内存地址,总能访问到的。
[/Quote]
cocoalary 2009-03-31
  • 打赏
  • 举报
回复
学习
xajhuang 2009-03-31
  • 打赏
  • 举报
回复
我觉得 不管在什么系统下都可以直接操作显存。显存无非就是一段内存地址,总能访问到的。
xajhuang 2009-03-31
  • 打赏
  • 举报
回复
看看注册表里面的配置,要是你是s3c2440芯片的话,FrameBuffer的物理地址是0x30100000.
11000000 2009-03-31
  • 打赏
  • 举报
回复
去你的blog看看去。我只想显示图片,谢谢!
[Quote=引用 12 楼 jinlking 的回复:]
在wince6下面,应用程序是不能直接操作显存的,不能操作物理内存,操作显存最好用directdraw,
去我的blog找找 相关的ddraw的操作,或者看看wince下面微软的例子程序代码,上面就有显示图片到显存
以及简单的ddraw动画。
[/Quote]
jinlking 2009-03-31
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 zhanzongru 的回复:]
用GDI繪圖 在內存中繪個bmp來顯示不行嗎?
[/Quote]

GDI绘图,没有ddraw里面flip的概念,在内存中绘好了就拷贝到显存,这个显存的操作是很慢的,相对于flip
在draw中两个页面都在显存中,一个准备好了,直接flip就行了。
小赌移情 2009-03-31
  • 打赏
  • 举报
回复
用GDI繪圖 在內存中繪個bmp來顯示不行嗎?
jinlking 2009-03-30
  • 打赏
  • 举报
回复
在wince6下面,应用程序是不能直接操作显存的,不能操作物理内存,操作显存最好用directdraw,
去我的blog找找 相关的ddraw的操作,或者看看wince下面微软的例子程序代码,上面就有显示图片到显存
以及简单的ddraw动画。
11000000 2009-03-30
  • 打赏
  • 举报
回复
能再具体一些吗?
[Quote=引用 10 楼 liangxd09 的回复:]
用directdraw直接写显存
[/Quote]
liangxd09 2009-03-29
  • 打赏
  • 举报
回复
用directdraw直接写显存
11000000 2009-03-28
  • 打赏
  • 举报
回复
ding
zjh824 2009-03-27
  • 打赏
  • 举报
回复
ddraw里lock后可以得到framebuff
11000000 2009-03-27
  • 打赏
  • 举报
回复
自己顶一下。
11000000 2009-03-27
  • 打赏
  • 举报
回复
能说的具体一些吗?我完全不懂这方面的知识,谢谢!
[Quote=引用 7 楼 zjh824 的回复:]
ddraw里lock后可以得到framebuff
[/Quote]
11000000 2009-03-26
  • 打赏
  • 举报
回复
我的图像数据就是像素形式的,不过,不知道写到哪里?这个FrameBuffer地址如何获得?
[Quote=引用 3 楼 xajhuang 的回复:]
把图像数据按像素格式直接写到FrameBuffer地址就行了
[/Quote]
11000000 2009-03-26
  • 打赏
  • 举报
回复
多谢回复!我们肯定要买现成的,看来只有买的时候留意一下您说的问题了。
[Quote=引用 2 楼 shuiyan 的回复:]
wince标准是不建议直接操作显存的。
你得确认驱动层是否提供了接口以获得显存的地址。曾经用过GetBuffer之类的,不过都是lcd驱动里面的IOControl支持的。
当然,如果设备你们自己做,那你们当然知道显存的物理及虚拟地址,那你可以直接映射到应用层使用。
[/Quote]
xajhuang 2009-03-25
  • 打赏
  • 举报
回复
把图像数据按像素格式直接写到FrameBuffer地址就行了
shuiyan 2009-03-25
  • 打赏
  • 举报
回复
wince标准是不建议直接操作显存的。
你得确认驱动层是否提供了接口以获得显存的地址。曾经用过GetBuffer之类的,不过都是lcd驱动里面的IOControl支持的。
当然,如果设备你们自己做,那你们当然知道显存的物理及虚拟地址,那你可以直接映射到应用层使用。
加载更多回复(1)

19,519

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧