q[求助]请问使用CH375如何读取U盘的第二个分区的内容

如题。 最近公司在使用CH375的时候需要读取U盘的两个分区内容,在这方面有没有可以参考的方案?

如果使用我司的子程序库的话,现在默认只支持第一个分区,如果是自己写的文件系统,只需要在分析的时候,找到第二个分区的绝对地址,已这个为基地址来分析文件系统就可以了。至于找2个分区的位置,如果为主分区的话,在U盘的MBR里面,如果为扩展分区的话,那么第一个分区在MBR位置,第二个分区在第一个分区的DBR的位置。


我的U盘是用量产工具分区的,分区后用Winhex查看得知,一个U盘被分成了两个物理磁盘,每个物理磁盘里面都有MBR,DBR等这些信息。每个盘的相对扇区号都为0,都是柱面编号:0 磁头编号:0 扇区编号为:1 还是不太明白怎么去找到第二个分区的绝对扇区地址?


你使用WINHEX文件需要看U盘的物理扇区,不能看逻辑扇区,逻辑扇区是看不到上述所说的信息的,至于上述的解释详细你可以去参考FAT32文件系统,里面有详细的介绍。


我以前写过FAT32文件系统 只是这个跟FAT系统是没有关系的。U盘在量产的时候把一个U盘分成了两个单独的移动磁盘共用一个物理设备,而不是本地盘,本地盘是可以分为主分区和扩展分区的,移动盘没有这样的说法。用Bus Hound工具查看Get_max_lun为1,也就是两个盘。在自己写USB驱动的时候可以把lun设为1即操作的是第二个盘,但是用CH375的底层没有这样的参数,能根据你们的底层驱动提供点参考意见吗?


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