如果可以检测的话,用哪个函数或是标志标识呀
热门产品 :
CH182: 以太网PHY收发器芯片
如果可以检测的话,用哪个函数或是标志标识呀
可以,但是需要自己写函数来做。初始化磁盘后,发送写命令,如果返回的数据错误,发送命令查询错误。
我在对有写保护的U盘进行写操作时,函数返回错误代码是0X17,我看头文件中对0X17的定义是: #define USB_INT_BUF_OVER 0x17 /* USB传输的数据有误或者数据太多缓冲区溢出 */ 这个可不可以认为就是U盘写保护的标志?还是有其他的可能性?
也可以,但是USB传输有误可能的情况会比较多,不仅仅是写保护。但是一般只要U盘插在上面也基本没什么问题。但是标准的方法是发送CBW,进行写扇区操作。如果写保护,肯定会返回STALL,这时候去发送R_SENSE命令去查询失败状况,在失败状态里就有有一个标志是写保护。
CH376\EVT\EXAM\EXAM12 是演示检查U盘是否写保护的程序
谢谢了