hell-prototypes 发表于 2013-1-13 17:52:09

开源一个USB外置显卡,基本功能已调通

本帖最后由 hell-prototypes 于 2013-1-13 17:50 编辑

一、显示的功本功能已实现:
        分辨率:800x600
        刷新率:60Hz
        色 彩:R(5Bit),G(5Bit),B(4Bit)
        每秒帧数:约15fps(Max)

二、未实现:
        图像数据压缩传输,提高每秒帧数到20fps以上
        图像数据刷新处理改成线程处理
        在高分辨率显示器中显示800x600图像
        显卡驱动增加软加速支持,支持视频播放
        支持需要硬件加速的图像处理,如:游戏等

三、整个USB显卡包括4个软件模块、2个硬件模块
1. 软件:
        (1). 显卡驱动(PC)
        (2). 图像传输桥(PC)
        (3). USB接口芯片固件(CY7C68013A)
        (4). FPGA固件 (XC3S50AN)

2. 硬件:
        (1). CY7C68013A + FPGA(XC3S50AN)板
        (2). R-2R DAC转换板

四、源码:
        源码放在代码分享平台GitCD上,我的主页:http://gitcd.com/user.htm?name=hell-prototypes
        (1). 显卡驱动: HLS_UVC_Win_Driver_OS,需要WDK 7.x
        (2). USB固件: CY7C68013A_FW 的HLS_UVC分支(Branch),需要C51编译
        (3). FPGA固件: HLS_UVC_FPGA_FW_OS,需要Xilinx ISE
        (4). 图像传输桥程序: HLS_UVC_Bridge_OS,需要Qt 4.7以上版本

五、硬件:
        (1). CY7C68013A + FPGA(XC3S50AN)板由论坛的开源逻辑分析仪修改而来,原理图在这里
        (2). R-2R DAC转换板原理图在这里

六:系统框图:
       

七、R-2RDAC转换板 - 调试板
       

八、运行效果图:
       

Eworm001 发表于 2013-1-13 18:08:34

好东西哦

elecfun 发表于 2013-1-13 18:12:54

好东西啊。可以用来扩展。

jlhgold 发表于 2013-1-13 18:13:43

霸气~~~收藏了!{:lol:}{:lol:}

LCRPN 发表于 2013-1-13 20:14:57

VGA是模拟信号,楼主那样飞线的抗干扰能力不强,怕对色彩效果有影响啊。

Elec_Ramble 发表于 2013-1-13 20:30:02

好东东,支持!!
来自:amoBBS 阿莫电子论坛 Windows Phone 7 客户端

fishplj2000 发表于 2013-1-13 21:25:49

NB,要是能做出模块并出售,那坛子里的兄弟们就有福了,可以一起玩玩了

mysunmax 发表于 2013-1-13 21:36:59

收藏!!!!

Flyback 发表于 2013-1-13 21:40:24

好东西,用来扩充显示屏方便了

roy2002 发表于 2013-1-13 21:42:12

好东西啊,mark

ffbiao 发表于 2013-1-13 21:52:33

好东西,支持lz

电源模块 发表于 2013-1-13 22:07:47

厉害。。。有个疑问?实时写硬盘?不是成了给硬盘做老化测试了?系统性能也大受影响

whatcanitbe 发表于 2013-1-13 22:29:08

收藏了再研究

LSZD 发表于 2013-1-13 23:17:16

{:smile:}{:smile:}

philoman 发表于 2013-1-14 00:02:52

楼主的动手能力赞

mmiker 发表于 2013-1-14 07:42:45

很强悍,支持。!!!

snowy 发表于 2013-1-14 08:09:40

可以支持linux吗?

KunShan_a_dai 发表于 2013-1-14 08:12:48

这个强悍!

zgxcom123 发表于 2013-1-14 08:26:48

霸气四射!果断收藏!!!

BaoMy 发表于 2013-1-14 08:28:45

牛人,我看不懂{:smile:}

lwy86 发表于 2013-1-14 08:44:30

顶一下





llysc 发表于 2013-1-14 08:44:57

MARK,相当的给力~~~

liangws201 发表于 2013-1-14 08:58:32

{:biggrin:},这都能搞?牛逼啊

DianziABC 发表于 2013-1-14 09:06:59

这个牛逼,可惜玩不了,顶一下

hell-prototypes 发表于 2013-1-14 09:09:21

电源模块 发表于 2013-1-13 22:07 static/image/common/back.gif
厉害。。。有个疑问?实时写硬盘?不是成了给硬盘做老化测试了?系统性能也大受影响 ...

显卡驱动里用 EngMapFile() 创建文件,图像传输桥程序里用Qt的 QFile::map() 来读共享文件, 所有操作都在内存中完成, 不会实时读写硬盘(只有在内存不够的情况下才可能发生)。
在硬盘上创建文件只是为了得到一个文件在内存中的文件句柄。

详见驱动原作者的解释:
   http://www.codeproject.com/Articles/12878/Driver-Development-Part-6-Introduction-to-Display?msg=1497246#xx1497246xx

hell-prototypes 发表于 2013-1-14 09:10:49

LCRPN 发表于 2013-1-13 20:14 static/image/common/back.gif
VGA是模拟信号,楼主那样飞线的抗干扰能力不强,怕对色彩效果有影响啊。

调试板,能出图像就行,不要求太高。

hell-prototypes 发表于 2013-1-14 09:11:56

snowy 发表于 2013-1-14 08:09 static/image/common/back.gif
可以支持linux吗?

可以的,不过需要研究一下Linux下的驱动。

bbs2009 发表于 2013-1-14 09:42:30

hell-prototypes 发表于 2013-1-14 09:51:47

bbs2009 发表于 2013-1-14 09:42 static/image/common/back.gif
请教LZ :
   我用过商品USB 显卡 安装后通常 多了一个显卡直接用就是了 貌似没有图像传输桥。
你的 ...

我没买过,但下载安装过 DisplayLink 的程序,安装后也是会有后台程序以服务形式运行的。
现在市面上的很多外置USB显卡用的都是DisplayLink的方案芯片。

原理差不多。

Displaylink 的 Technology Overview: http://www.displaylink.com/technology/technology_overview.php

winfisher 发表于 2013-1-14 09:57:00

成本到多少?

bbs2009 发表于 2013-1-14 10:10:11

wxws_wxws 发表于 2013-1-14 10:36:58

高级货,收藏,类似的,也能用在 同步LED显示。 或 LCD拼接屏系统。

hell-prototypes 发表于 2013-1-15 09:02:22

bbs2009 发表于 2013-1-14 10:10 static/image/common/back.gif
那你的 图像传输桥就是后台服务程序 对吗?

嗯,是的

root 发表于 2013-1-15 09:20:53

这需要多么大带宽丫,我还有块68013A的开发版,上面貌似还有块CPLD,不知道够用不{:loveliness:}

whyjld 发表于 2013-1-15 09:27:19

学习,支持楼主

winkle 发表于 2013-1-15 10:59:08

霸气   2013正能量

bbs2009 发表于 2013-1-15 11:34:12

javabean 发表于 2013-1-15 12:28:14

不错啊,楼主很给力哦,提升一下速度就无敌了

rayman_ppx 发表于 2013-1-15 13:10:50

好东西啊,mark

maxims 发表于 2013-1-15 16:39:52

楼主威武,求硬件

hunningtu 发表于 2013-1-15 18:19:29

还能提高分辨率吗?如果要提高分辨率,哪里是瓶颈呢?fpga还是CY7C68013A?

sco518 发表于 2013-1-15 18:59:09

楼主可以参考一下数字电视原理 中的信源编码部分,MPEG-2信源编码, 可以减小带宽。   比如前后帧之间有很多的冗余信息,如果只传递前后帧之间的变化量,可以大大减小传输带宽。

hell-prototypes 发表于 2013-1-15 20:25:48

hunningtu 发表于 2013-1-15 18:19 static/image/common/back.gif
还能提高分辨率吗?如果要提高分辨率,哪里是瓶颈呢?fpga还是CY7C68013A?

分辨率可以提高,但图像大小只能到800*600(1MB RAM),图像大小受内存限制.

jacktau 发表于 2013-1-15 20:40:22

这个比较生猛~~~~~~~~~~~~~~~~

gongxd 发表于 2013-1-15 22:12:51

学习,支持楼主

hell-prototypes 发表于 2013-1-16 09:53:31

bbs2009 发表于 2013-1-15 11:34 static/image/common/back.gif
不错。
LZUSB 显卡 搞定了, 是否接下来搞 网络 显卡

再搞个USB声卡,应该可行 {:lol:}

hamipeter 发表于 2013-1-16 10:02:04

强悍,支持!!

jordonwu 发表于 2013-1-16 10:13:45

出个成品模块板子吧

zjysd 发表于 2013-1-16 10:32:13

不懂,如能挂上监控摄像头变成uvc免驱摄像头那应该挺好玩。

bbs2009 发表于 2013-1-16 11:23:13

mcusy 发表于 2013-1-16 12:18:05

强悍,我先顶一下

gwj221 发表于 2013-1-16 12:51:05

强大啊强大啊,强大啊

wye11083 发表于 2013-1-16 13:00:23

ca,顶LZ,我正愁着用VNC抓屏输出到FPGA上刷新速度不行呢。回头把驱动好好改改,使用内存虚拟一块缓冲区缓存图像,最大支持到1080P(到显示器估计就只有10fps了,不带压缩最高5fps)。PS:手中有一块1080P的屏,目前在用VNC的驱动。

wye11083 发表于 2013-1-16 13:00:52

sco518 发表于 2013-1-15 18:59 static/image/common/back.gif
楼主可以参考一下数字电视原理 中的信源编码部分,MPEG-2信源编码, 可以减小带宽。   比如前后帧之间有很 ...

FPGA是没法做解压的,否则太复杂。

sco518 发表于 2013-1-16 22:52:48

现在做视频的一般都是用FPGA 的。。主要就是这部分难度相当大,如果能用起来,肯定是非常适合你这个项目的。

philoman 发表于 2013-1-17 09:02:33

搜搜这个吧:NL571AA,HP的

bbs2009 发表于 2013-1-17 10:40:16

aworker 发表于 2013-1-17 10:48:51

gitcd,用什么工具下载?

hell-prototypes 发表于 2013-1-17 17:56:40

aworker 发表于 2013-1-17 10:48 static/image/common/back.gif
gitcd,用什么工具下载?

Git: git clone

JIANYANG 发表于 2013-1-18 13:50:55

强大 支持

womenhome 发表于 2013-1-18 14:09:45

这个很 NX。

MARK下

twuking 发表于 2013-1-18 15:22:05

bbs2009 发表于 2013-1-15 11:34 static/image/common/back.gif
不错。
LZUSB 显卡 搞定了, 是否接下来搞 网络 显卡

支持搞网络显卡,这个有前途。
最好是带宽10mbps,分辨率1920×768.
呵呵

bbs2009 发表于 2013-1-18 15:47:54

bmagui 发表于 2013-1-18 15:55:43

好东西,先收藏!

twuking 发表于 2013-1-18 16:00:15

bbs2009 发表于 2013-1-18 15:47 static/image/common/back.gif
这个已有成品的。

不过自己搞可了解机理, 派生出特殊用途的东西。

那个产品?想买来试试。

bbs2009 发表于 2013-1-18 16:05:58

蓝色天空6300 发表于 2013-1-18 16:14:35

{:funk:}霸气侧漏

kneken 发表于 2013-1-19 00:02:22

mark一下

yuhang 发表于 2013-1-19 21:50:20

抽空试试 肯

wanyou132 发表于 2013-1-19 22:06:57

都是牛人闪闪啊

zhikai_wu 发表于 2013-1-19 22:38:50

这个很强,,如果分辨率再大点就更爽了

mcuprogram 发表于 2013-1-20 23:27:11

mark                   !

liuy219 发表于 2013-1-28 22:39:53

谢谢楼主分享经验!

quzegang 发表于 2013-1-28 23:08:13

好东西,多谢楼主开源

ibrrkxk 发表于 2013-4-29 08:55:39

好吧,太霸气了

ibrrkxk 发表于 2013-4-29 08:58:55

如果改成PCI总线不知道效果会不会更好

bruce_helen 发表于 2013-4-29 10:20:55

学FPGA的都是牛人啊!我是搞嵌入式软件的,现在开始学习FPGA,为童年的梦想而奋斗!{:lol:}

redpp 发表于 2013-7-25 11:55:11

好动西啊

skyxjh 发表于 2013-7-25 22:03:07

还可以这样玩啊,有意思!

abcfanyuan 发表于 2013-7-26 00:53:47

赞一个!

xiangxiadage 发表于 2013-7-26 08:03:06

hell-prototypes 发表于 2013-1-16 09:53 static/image/common/back.gif
再搞个USB声卡,应该可行

USB声卡和USB网卡,貌似满大街都是,二手市场很多

zclcom79 发表于 2013-7-26 09:33:42

曾经用ARM9做过一个。 大概也是15fps, usb
受限了

loyoan 发表于 2013-7-26 15:27:58

谢谢LZ分享~

小林哥 发表于 2013-11-27 09:52:14

好东西哦

avr-arm 发表于 2013-11-27 12:56:21

收藏了!

sunocean 发表于 2013-11-27 12:59:35

要不要把楼主的创意去打个样呢

wtyw 发表于 2013-11-27 23:30:08

太羡慕了!!!!

NXP 发表于 2013-11-28 00:01:06

牛人啊,补丁字数

ndk 发表于 2013-12-1 10:38:01

没有xinlinx的扳子,不知道能改成altera实现?

jeep 发表于 2013-12-1 11:53:59

avr-arm 发表于 2013-11-27 12:56
收藏了!

+1 太强了马上收藏。

dragonathust1 发表于 2014-3-8 20:28:12

楼主提供的资料不错!

hnhbyyb 发表于 2014-6-16 09:47:48

记号{:smile:}{:smile:}{:smile:}

bdzhaojing 发表于 2014-6-23 15:51:36

好东西,收藏了

xiaobenyi 发表于 2015-11-20 09:24:04

我靠! 楼主太牛逼了!

liyang53719 发表于 2015-11-20 20:03:50

好东西,收藏了

chenxin2015 发表于 2015-11-20 20:37:20

好东西,赞一个

fengyunyu 发表于 2015-11-20 22:55:51

大牛,厉害

lin2013 发表于 2015-11-20 22:59:36

都是高手啊,佩服。。。

timi 发表于 2017-7-21 11:51:36

这个显示驱动是不是在windows的设备管理器上直接识别为一个即插即用的通用监视器 ?

hhd 发表于 2017-7-21 17:07:26

楼主强大!谢谢分享
页: [1] 2
查看完整版本: 开源一个USB外置显卡,基本功能已调通