近日发现一些以前博客中的错误,在此更正一下(以下更正处标志为红色):
1、《USB系列之三:从你的U盘里读出更多的内容》中的源程序,其中bulkReset函数的第一行,原文为:
device_request.SetBYTE(BULK_GET_MAX_LUN, SR_REQUEST_TYPE);
应更正为:
device_request.SetBYTE(BULK_RESET, SR_REQUEST_TYPE);
由于大多数情况下设备都是处于正常情况,所以一般情况下不执行这个函数仍然可以工作。
同样,在《USB系列之四:向U盘上写数据》一文中的源程序应该也有同样的问题,请自行更正。
2、发现《USB系列之四:向U盘上写数据》中的源程序编译后的可执行文件独立运行后不能得到预期的结果,但如果在运行前执行一下《USB系列之三:从你的U盘里读出更多的内容》的reader程序,则一切正常,经查,发现在执行READ和WRITE命令前要执行一下SCSI Unit Ready命令,正巧reader程序的前面执行了这条命令,所以不会有问题,但write程序会有问题,所以请已经下载过这个源程序的读者在下面地址重新下载正确的源程序
http://blog.whowin.nwt/source/usb-write.zip(2017年3月22日注:链接已修复)
对以上错误给大家带来的不便,表示非常抱歉!
b78ef8dc
评论