CH341应用问题

  用贵公司的CH341S开发了EPP接口电路,读写操作正常,但速度很慢,只能控制一个小型设备,无对一个大型系统控制。从资料上介绍,在EPP方式下最大传输速度为660KB/S,但无法达到这个指标。在动态库中的读写函数里,一次可以读写一批数据,而在硬件接口电路中,读写操作必须要有地址配合,请问在EPP方式,读写一批数据与控制地址是如何配合的?谢谢。

您的应用是先写地址,再读写数据,在两者之间频繁切换, 由于CH341的EPP写地址与读写数据是两个USB传输,所以就应用层操作而言,无法实现快速切换, 因为USB信道划分为多个1mS的帧,从应用层发出的多个USB传输请求将被安排到不同的帧中, 由于帧间隔1mS,所以EPP写地址与读写数据之间的切换要至少花1mS,当然速度慢了。 解决方法: 1、软件方法,在驱动程序中进行EPP写地址与读写数据之间的切换,当然还必须是不等前一个操作 (EPP写地址)未返回前就发出下个操作(读写数据),那么就能使两者间隔少于10uS,速度当然快些。 2、硬件方法,使用FIFO器件或者仿FIFO器件,成块读写数据前,先输出起始地址,然后每读写一个字节, 外部器件的地址自动加1,所以就不必频繁输出EPP写地址,速度能达到300KB。 例如,使用一个TTL器件“可预置计数器”和普通SRAM仿FIFO, 读写数据前向计数器置入起始地址,输出读写脉冲自动使其计数,其计数输出作为SRAM的地址。 3、未来计划为CH341增加一种传输方式,在一个USB传输中不仅输出地址还读写数据,因涉及硬件变动, 所以可能是数月之后吧。


偶也很想知道,公司的评估版上面能达到这个速度没?


只有登录才能回复,可以选择微信账号登录