阅读:1489回复:7
关于同步问题
我做的是用fx2传输图像
每帧是256×256的图像,每个元素用8个字节表示 为了和系统的电视信号同步,需20ms传一帧图像,保持同步可不可以这样做:由固件那面20ms产生信号,然后由主机传数据。 但我用的是BULK传输,这样能保证主机与设备时钟同步吗?是主机还是设备端的时钟准? |
|
沙发#
发布于:2003-08-05 15:16
不好意思
是8bit 谢谢各位啦 再次感谢 |
|
板凳#
发布于:2003-08-05 11:53
如果楼主没说错的话,每秒要传25.6MByte的数据,是很大的数据量的概念。普通USB1.1或以下标准无法胜任这种传输,必须使用USB2.0以上。
通常,这种级别的应用都采用数据压缩,以减小数据传输率,节约带宽。 |
|
地板#
发布于:2003-08-05 10:04
3-4MB/s,没有这么低吧,按你说的256*256是64k,也就是说你没20ms有8个64k,每毫秒有25。6k数据,这样每秒钟不就是25。6MB数据吗?
除非你之前说的每个元素用8个字节是错误的,如果是用8bit表示还差不多,如果按你说的速度的话应该是没问题的,你首先在主机方不断的查询端点1的状况,一旦设备准备好接收数据,就用其他大的bulk端点向设备传输数据,不过我觉得你查询设备情况也可以用控制传输进行。 |
|
地下室#
发布于:2003-08-05 09:08
[quote]你的想法是不对的,肯定实现不了!
首先:usb设备不会主动给主机发送任何信息,远程唤醒除外。 而且你用的是bulk传输,必须由主机启动传输,去查询端点的空满情况。 你20ms的数据量是8个64k,也就是每秒钟要传 25。6m的数据,这个数据量是很大的!不知道你说得主机传数据是往下传还是往上传,但不管怎么样都是主机启动的传输。 ////////////////////////////////////// 我没说清楚 1)固件产生信号,有主机从端口1取得设备的状态,而后有主机向设备发数据。 2)数据传输不算太大吧,3-4MB/s,看其他人做的很高嘛 谢谢你的关心,有你的关心我会更有信心的,谢谢 |
|
5楼#
发布于:2003-08-04 17:14
我还以为时20帧/s呢,你的速度要求太快了,不行,50帧/s没做过。
|
|
6楼#
发布于:2003-08-04 17:09
你的想法是不对的,肯定实现不了!
首先:usb设备不会主动给主机发送任何信息,远程唤醒除外。 而且你用的是bulk传输,必须由主机启动传输,去查询端点的空满情况。 你20ms的数据量是8个64k,也就是每秒钟要传 25。6m的数据,这个数据量是很大的!不知道你说得主机传数据是往下传还是往上传,但不管怎么样都是主机启动的传输。 如果是往下传:你主机那边只能不断的发送数据,设备端接收数据,接收完一帧以后去处理,这时候主机发送下一帧的第一个包,你只要不把这个包从端点里读出来,主机就会等待,直到你设备处理完第一帧开始接收第二帧才继续传送数据。 说得比较罗嗦,不知道对你是否有帮助。 |
|
7楼#
发布于:2003-08-04 16:05
以你的要求应该可以,你的同步信号是哪里来得啊,没看明白。
|
|