我爱电脑技术论坛's Archiver

炉火纯青 发表于 2008-5-13 22:59

改造USB移动硬盘增加只读功能——失败经历

我买了一个 20G 的 USB 移动硬盘,使用中发现,实在是很需要一个
:J-wo"c8vhKY#c 只读保护功能,但又没有听说哪款新机提供了这个功能,于是试图(p%x Of%oP)Z
自己动手改造这台移动硬盘。遗憾的是,最终没有成功。2R3l.b&R(N

C)kY!z9M3o)Z W+w` 看来这种事情外行做起来的确有困难,很多情况下只能猜。又做不
3l JN\7DY {7tY |(z 了什么复杂的改造,只能改个跳线什么的。作用实在有限。gj`:a)EZ

R1phz9\] P)K*N-U 经常光临这个讨论区的大侠们,想必有一些是从事过移动硬盘开发J8[/LV8e9D
的高手。看了我的失败经历,如果有可能,非常欢迎给予指导。如
(@c+F&W-k.]g._!t 果这件事情不是我这种“土法上马”的方式能搞定的,那就当是我1R8WTh7C*`Z o
给业内的行家提个产品改进的建议吧。我期望着能尽快用上有“只
R"xl;AV 读保护”功能的移动硬盘(当然,如果是我自己改造成功的,那就
;Qt!C_cx}#ZuF 更爽啦!! :) C.Lv#ZW!]X)M5Q)u
xB3iINP#}6b"c
下面是我的做法,欢迎指正和建议。
5x.m og6r7V,E.LF(n
Oev*T1Ne.rb@ 先是查资料,从网上搜罗到 IDE 接口的定义(包括 40 针的和 44U1?4]P ?7e q?
针的两种形式,其实它们的前 40 针的定义是相同的),另外,打
cS%Y3D,X"Ek [ 开移动硬盘的盒子,发现 USB 的控制芯片是 GL641USB,于是又去
E+Tw k Q 找它的管脚定义资料,找到了。
vpZ.f0\*a(kmj
-sv c Q(K9eme 首先想到的是,最好 USB 控制芯片或者 IDE 接口已经定义了“写Y#D#zu?y e
保护”功能(好像闪存芯片是有这个功能的),但翻来复去也没找
Q%Rf1p0DL-P$I+I 到。这也许说明了为什么市面上的闪存移动盘有“写保护”功能,
:W-qnJPu6BJ 而硬盘的却没有。
0`5| p-vcvD w#ewOF ^ 4Etb*o6`/p/h&I.r
下面想到的,就是如何阻止向 IDE 的“写操作”了。IDE 的 23 号
k[/c"SL"?0P 管脚是 DIOW/ ,功能定义是“写选通-input”。GL641USB 芯片的
7mJw"O l0C-{&` 12 号管脚是 DIOW/ ,功能定义是“Storage device write strobe 6BB.KG4k/@xo
signal-output”。经确认,两者是直接相连的。看来就是它了。:Qv"qd(_L {O

uyu2`P[K 下面就是“土法上马”的局限性了,我只能假设,切断这条线,就
c S;W0W/?n%p 可以做到写保护了。然而,试验证明,不行。现象是,当插上 USB
'`#rFjNA 插头后,系统(Win2000 Server)检查到了 USB 设备,却不能正常,U fBeep-r M'R
建立磁盘映射。不止是不能写,连读也不行了  :(
hZF t0QP,@P
$j*Q*yi d 又想到也许 IDE 的 DIOW/ 信号光是切断还不行,不能让它浮着,
,e"v1h}v8Xw 于是又给它接到高电平上(GL641USB 的 1 号管脚是给 IDE 接口供
UJ!oK.Z.m*DS 电的,跟它接上没问题吧?)。再试,现象相同  :(
%hT#L/{$|#s'n:[3S"v @I%mA/VShFe
我能做的到此也就结束了。初步猜想可能是在设备启动过程中,接口$M8J5J4JP Bft
控制芯片要检测 IDE 的可用性,而“写操作”是其检测工作的一部
J2Z{7yA7H;bR 分,切断了“写选通”,造成初始化失败。
c(R py;{(qt~ B +M Z5V;suY2\t
怎么样?各位看了有何高见?

jingxiaoshen 发表于 2008-5-14 14:00

进来了解,感谢分享。

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.