现在我公司在预研一个项目,希望能够把U盘虚拟成光驱提供给PC端使用,原有的方案是通过一个比较高档的嵌入式CPU,通过编写嵌入式linux软件的方式把U盘虚拟化为一个只读光驱来实现。 但这样会存在两个很大问题: 1、软件开发工作量太大,并且性能也会上不去; 2、硬件成本也会很高。
如果采用沁恒的接口芯片是否可以解决问题,期待各位大虾好的建议。
现在我公司在预研一个项目,希望能够把U盘虚拟成光驱提供给PC端使用,原有的方案是通过一个比较高档的嵌入式CPU,通过编写嵌入式linux软件的方式把U盘虚拟化为一个只读光驱来实现。 但这样会存在两个很大问题: 1、软件开发工作量太大,并且性能也会上不去; 2、硬件成本也会很高。
如果采用沁恒的接口芯片是否可以解决问题,期待各位大虾好的建议。
具体的需求如下:
设备连接图: usb usb PC ————嵌入式设备————U盘
当插入U盘时,PC端把嵌入式设备和U盘整体识别为一个USB接口的光驱,PC端只能对U盘进行读操作
可以使用CH372做设备模拟光驱,然后在通过CH374/375做主机读写U盘扇区。 但是有一个问题,就是U盘的文件系统和光驱的文件系统好像是不一样的。也就是 你用PC在U盘中创建的文件,然后在虚拟成光驱的设备上使用该U盘之后,PC就看不到U盘中的文件。反之也是一样的。
一定要虚拟成光驱吗?如果虚拟成一个只读的磁盘是否可以?底层不走U盘协议。这样就不会出现2楼所说的问题。但是有一个问题是需要安装驱动以及一个上位机软件。
非常感谢前面两位的解答。 现在用户的需求就是这样:必须虚拟成光驱。 我还想问问_study_,你说的看不到U盘中的文件,但PC端应该还是可以通过光盘的方式把文件读出来吧?
那肯定可以通过光驱的方式读取数据的。
那我整理一下思路,看是不是这样: 1、以CH374读硬盘内容; 2、以CH372作设备模拟光驱; 3、在PC端设计一个驱动。
是这样的吗?你们这有现成的方案提供吗?能够多快开发出来?
另外,如果采用该方案,从PC端估计速度能够达到多少?
有一个就是问题就是在普通的计算机上面需要一个软件数据按照光盘的形式拷贝到U盘里面去。在你的类似加密的计算机里面不需要加任何软件。 读取速度应该可以做到600K字节-700K字节/S。