USB的数据包问题

[复制链接]
 楼主| Jawish 发表于 2011-2-25 00:12 | 显示全部楼层 |阅读模式
假如我要使用USB高速传输传输一幅图片,把他的信息放在端点二那里,但USB传的都是包的形式,哪么我这个包怎么大啊?我个人的理解就是把数据放在端点那里就可以了,其他的就是设备来读取这个端点,这样对不对啊?还有,如果我要把视频提取出图片信息和声音信息,哪么我要怎么大包,才能把这两者一起传输出去啊?谢谢各位前辈啦。。。。(知道其他个别问题的也帮我回答一下,我现在被包搞晕了,书上讲的都是USB包的格式,没讲怎么用)
computer00 发表于 2011-2-25 00:14 | 显示全部楼层
每包大小是固定的。你要自己做个通信协议来传输
 楼主| Jawish 发表于 2011-2-25 10:23 | 显示全部楼层
不好意思,打错字了,是打包,不是大包,就是AVIINFO里有一个MaxTransferSize,传输我是这样设置的,ULONG nUsbSendSize = Header.bmiHeader.biWidth * Header.bmiHeader.biHeight;
lpbuff=(BYTE *)this->m_aviFile .aviGetStreamFrame(frameIndex);
lpbuff+=40;最后传输出去的是(lpbuff,nUsbSendSize),我就不知道音频跑那去了?麻烦圈圈帮我看看,你那本书我买了,用的是D12,我这个开发板用的是FX2的,谢谢了。。。。
computer00 发表于 2011-2-25 10:28 | 显示全部楼层
你这里是设备的代码还是主机的代码? 是音频输入设备还是音频输出设备?
 楼主| Jawish 发表于 2011-2-25 10:33 | 显示全部楼层
主机的代码,PC机提取avi信息,发给FX2。
computer00 发表于 2011-2-25 11:22 | 显示全部楼层
既然是直接读取的avi文件,那你要下面收到文件后,解码出来才能拿到音频和视频数据
 楼主| Jawish 发表于 2011-2-25 11:59 | 显示全部楼层
不是直接读取AVI文件,是利用MFC编辑上位机软件,利用软件分别提取出AVI视频的图像和音频,然后MFC获取端点和管道,再然后把图像(包括大小,像素点,24位RGB)和音频一起传输出去,我不懂的是如何把这些分离的数据(图像和音频)放到一起传输出去。(就是如何把图像和音频打包到一起)
computer00 发表于 2011-2-25 12:56 | 显示全部楼层
那你可以自己定义一个格式,加个包头,用来区别音频和视频数据。
 楼主| Jawish 发表于 2011-2-27 08:45 | 显示全部楼层
圈圈,我想问一下,一幅bmp图像的信息有这么多(BITMAPINFO Header;
                memset(&Header,0,sizeof(BITMAPINFOHEADER));  

                Header.bmiHeader.biBitCount=bih->biBitCount ;  
                Header.bmiHeader.biSize  =  sizeof(BITMAPINFOHEADER);  

                Header.bmiHeader.biWidth  =  fileinfo.dwWidth;  
                Header.bmiHeader.biHeight  =  fileinfo.dwHeight;  
                Header.bmiHeader.biPlanes  =bih->biPlanes;
                Header.bmiHeader.biCompression  =BI_RGB;  
                Header.bmiHeader.biXPelsPerMeter  =  0;  
                Header.bmiHeader.biYPelsPerMeter  =  0;
                BITMAPFILEHEADER stFileHdr;
                stFileHdr.bfOffBits=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER);
                stFileHdr.bfSize=sizeof(BITMAPFILEHEADER);
                stFileHdr.bfType= ((WORD)('M'<< 8)|'B');
)如果我要通过USB传输出去的话,那主要要传那些信息设备那边出来后才能正常显示一幅图像啊?谢谢咯。。。。
computer00 发表于 2011-2-27 12:05 | 显示全部楼层
那要看你的设备那边是怎么处理的啊…………它需要什么格式的数据,你就按同样格式的数据发给它就行了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

0

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部