|
|
我查看了些资料说winio可以读出我按照那个来发现一get就异常# @9 ~: v9 Q6 M7 A
void Wait4Get()
; r- _4 L( L P+ F( T9 s{
( J2 f& J" n3 ]. X. A, Z9 f! [2 F DWORD tmp = 0;' ~, s0 i! G3 N. g
GetPortVal(0x6c, &tmp, 1);
+ J. j: x- S2 H) H* ~: W if (tmp != 1)
3 s+ e& Q, g2 ~) q; w+ @ Wait4Set();/ l* @5 x0 V8 R$ a4 L+ q6 ^/ L2 {' E
}+ K- T( ~/ q& b6 r
void Wait4Set()% M: [; P( z! }8 R
{
/ { y6 X% I @# v& f* Q7 x0 ] DWORD tmp = 0;
1 z+ _2 e( ]+ l+ S GetPortVal(0x6c, &tmp, 1);) e* }' a' Q7 L
if (tmp != 2)
; [+ r7 Q) e+ X& Y5 b" E Wait4Set();* z& t' Q/ A! i) k. R
0 H; n8 g3 ^1 v+ D}
6 Z1 q" v6 l4 h$ d1 Q4 j aint main(int argc, char* argv[])
& Y9 V' y# A \& E0 t( R{ ! }8 M# W4 e' n7 b9 X+ I, B
DWORD temp =0;; a' K: i: `* e1 k2 b
if(!InitializeWinIo())% e4 i) a4 s- C
{0 ]: [9 _2 i/ l4 W
printf("fail");% \% J& }8 H9 A- @9 F
}
6 F9 u2 ^6 T& K5 x( x Wait4Set();
* f1 s2 A' d( {8 A" t, _4 B SetPortVal(0x6c,0x80,1);
9 A# M+ \7 R4 }' C9 K' C Wait4Set();3 H5 @1 A+ ?5 l+ G
SetPortVal(0x68,0xE7,1);
& h: `) T0 A! i3 B- `/ I$ ^ Wait4Get();
+ b: E" y" K! ]( |5 d4 X GetPortVal(0x68,&temp,1);: P9 W1 { d# l9 B* t
printf("%s",temp);/ n; g3 c: S0 W/ y5 ?# R
ShutdownWinIo();0 ?( s" Z, M8 G' L" ^# G7 ~
return 0;
2 i, N- O$ z1 n* i' t; ~, B} |
|