…………………… sbit STROBE = P2^0; sbit RESET = P2^1; sbit MTDATA = P2^2; sbit AX0 = P2^3; sbit AX1 = P2^4; sbit AX2 = P2^5; sbit AX3 = P2^6; sbit AY0 = P2^7; …………………………………… //******************************************************************* void turn_on_or_off_x_y(uchar x_num,bit y_num,bit on_or_off) { ACC =x_num;
STROBE=0; AX0=ACC^0;//???????????????? AX1=ACC^1;//???????????????? AX2=ACC^2;//???????????????? AX3=ACC^3;//???????????????? AY0=y_num; STROBE=1; MTDATA=on_or_off; STROBE=0; } //******************************************************************* 部分代码如上,程序很简单,就是把x_num十六进制形式的低四位赋给AX0到AX3,用移位除2的余数赋值的办法可行,但上面的代码为什么执行的一直不对呢?请指点,谢谢! |