数据正在从芯片发送到PC。芯片被列举为高速USB。我期望得到大约1兆位每秒的连续传输速度。也许是1.2的开销。只要数据按顺序发送,我就不会烦恼。我的理解是,通过USB到FTDI等串行设备,串行部分会阻碍速度。如果数据直接由芯片通过USB链路发送,那么速度可能更高。我试图测试链路的实际最大速度。最大CDC速度约为1.5Mbytes/sec IIRC。在PIC24上,我增大了缓冲区大小,以便我可以用最大nu预加载它。适合单个USB传输的字节数(我不记得有多少64字节的数据包,但似乎记得大约是19,但我可能是错的)。然后,我有一个程序循环填充缓冲区的数据,前4或5个字符是“行号”,所以我可以看到是否有数据丢失。然后,使用带有双核处理器的笔记本电脑,它会接收数据(我使用终端程序在屏幕上显示数据),但是它总是有大约每分钟一次的错误。然后,我用我的4核处理器来接收带有终端程序的数据,并且接收时不会出错,直到屏幕保护程序启动为止,然后收到的数据会有中断。最大可能的持续速度。那么你的速度可能会受到PIC处理的速度的限制,并将其填充到缓冲区中。我用乒乓球缓冲区来获得速度,所以我正在填充一个而另一个发送。如果你不熟悉USB的内部工作以及有多少数据以及以什么速度,那么给自己找一份Jan Axelson的“USB完成”副本。她写了一本非常可读的书,全面论述了USB的内部工作。在亚马逊提供一个合理的价格。
数据正在从芯片发送到PC。芯片被列举为高速USB。我期望得到大约1兆位每秒的连续传输速度。也许是1.2的开销。只要数据按顺序发送,我就不会烦恼。我的理解是,通过USB到FTDI等串行设备,串行部分会阻碍速度。如果数据直接由芯片通过USB链路发送,那么速度可能更高。我试图测试链路的实际最大速度。最大CDC速度约为1.5Mbytes/sec IIRC。在PIC24上,我增大了缓冲区大小,以便我可以用最大nu预加载它。适合单个USB传输的字节数(我不记得有多少64字节的数据包,但似乎记得大约是19,但我可能是错的)。然后,我有一个程序循环填充缓冲区的数据,前4或5个字符是“行号”,所以我可以看到是否有数据丢失。然后,使用带有双核处理器的笔记本电脑,它会接收数据(我使用终端程序在屏幕上显示数据),但是它总是有大约每分钟一次的错误。然后,我用我的4核处理器来接收带有终端程序的数据,并且接收时不会出错,直到屏幕保护程序启动为止,然后收到的数据会有中断。最大可能的持续速度。那么你的速度可能会受到PIC处理的速度的限制,并将其填充到缓冲区中。我用乒乓球缓冲区来获得速度,所以我正在填充一个而另一个发送。如果你不熟悉USB的内部工作以及有多少数据以及以什么速度,那么给自己找一份Jan Axelson的“USB完成”副本。她写了一本非常可读的书,全面论述了USB的内部工作。在亚马逊提供一个合理的价格。
举报