最近在用GD32F105的USBFS外设,先是根据官方固件库中的USBDEVICE下udisk的程序,使用内部Flash模拟了一个大容量存储设备的U盘,插上电脑后提示格式化完成后能正常使用没什么问题。然后在EXMC接口上外挂了一片海力士的H27U4G8F,底层的NAND驱动也是移植的别人写好的,根据自己直接调用相关的API进行读写操作都没问题,但是把NAND驱动加入到USBFS的固件程序对应的底层驱动接口就出现了问题,电脑设备管理器显示能枚举出一个大容量存储设备,但是获取设备描述符失败,设备没有启动。使用BUS Bound来总线上的数据传输情况发现,在插上设备后能读到INQUIRY、容量等信息,也能正常读写扇区,但读了几个后就出现发送逻辑单元准备就绪的00命令,然后就会出现SSTS 08 no device这种状态,接着计算机就会停用这个设备,回馈一个设备无法连接的状态,请问这个有人遇到过吗,该怎么去排查解决呢。
|