本帖最后由 n805 于 2015-12-19 22:36 编辑
/ l, S! |' s+ F1 |5 {1 U! v% r$ c+ E1 z9 F0 t* {, @
手柄的CLK信号没加上。以下是原理介绍,后来人员可以补考了。。。。。
# M3 K9 G6 b; F0 M* z! e$ iFC手柄是5根线 1电源,2地线,3数据线DATE、,4读取线LOAD、5时钟线CLK。. W! \* z+ z' P' J3 g5 U
而手柄的电路是个8位串行移位寄存器,当主机发出LD信号后,在时钟CLK的作用下,3 a/ I" R+ Q/ P
8个数据被逐个传到主机,如果没有了CLK信号,主机发出LD后,数据是不会移动改变的! ^: f8 Q o' u6 E R
由于A键是8个数据的首位,所以按下A键就会导致数据线位变低,由于没有CLK不会改变数据位
$ M% P4 e6 d8 z# k4 f& f所CPU在8次读取当中都是读取的A键信号,也就是说按下A键就等于按下所有按键了,你可以0 V& {9 J& f% T& w, B6 d+ y
想办法进入游戏,比如魂斗罗,游戏中按连发A,你可以看见人物是不断跳跃和开枪,上下左右
0 m" R. |1 t8 M. q/ D& n2 Y2 I不定,而游戏也不断暂停和解锁。。。。。。。。。) O/ P, I2 |* H5 l
解决方法就是检测电路,CPU的31脚就是CLK时钟脚,这个信号通过74368反向后分别送入1P
' s. c; T% ~. B2 @2 u- F2 ^' F4 P和2P的CLK端。附上图片,自己查看。。。。
' E- ], |3 _! J
3 z( G6 ^0 D0 L) T! k[url] е е |