本帖最后由 Go_PSoC 于 2011-3-16 21:04 编辑
实时传输用于连续的实时的数据。当外设连接到host时,带宽已经预定义好了。实时传输的最大特征就是传输的数据并不保证完全正确,如果传输准备好的时候host在忙,或者数据发生错误这时候被传输的数据就被破坏了。实时传输最重要的是保证持续数据流,不管数据有没有错误或丢失。
实时传输典型的应用是实时音频和视频。它不适合用在数据文件传输上。这是因为即使带宽设置得很理想,某个包被丢失的可能性还是有的,那么最后得到的数据可能是被破坏的或无用的。
请注意,使用实时传输的时候需要一些小窍门,一般来讲,你需要确保buffer是所需传输包的3倍大小。一个包正在USB硬件传输,第二个包排队等候,第三个包正在填充或清空buffer(取决于传输的方向)。当然,buffer越多会更好,但是任何设置都不能保证一个数据都不丢,即使host空闲的时候。
| 理论最大值
|
| Payload per packet
| Transfers per frame
| Throughput (KB/sec)
| LS
| N/A
| N/A
| N/A
| FS
| 1023
| 1
| 1023
| HS
| 1024
| 56
| 57344
|
|