/* X703XorDemo.c: Demo program for X703 Compiler: BC++ 3.1 Turbo C ++ 1.01(3.01) (free from http://community.borland.com/museum) Compile mode: large Project: X703funsDemo. ..\..\..\..\lib\7188xbl.lib ..\..\..\..\lib\XBoard\X703.lib Hardware: 7188XB + X703 [16/Oct/2008] by Vic */ /********************************************************************************/ /* X703: 3-axis encoder counter */ /********************************************************************************/ #include #include "..\..\..\..\lib\7188xb.h" #include "..\..\..\..\lib\XBoard\x703.h" int xor1,xor2,xor3; void show_abz(void); void main() { InitLib(); Print("\nxor1 = (0 or 1) ?"); xor1=Getch()-'0'; if (xor1) xor1=1; Print("\nxor2 = (0 or 1) ?"); xor2=Getch()-'0'; if (xor2) xor2=1; Print("\nxor3 = (0 or 1) ?"); xor3=Getch()-'0'; if (xor3) xor3=1; X703_Init(); X703_SetXOR(1,xor1); X703_SetXOR(2,xor2); X703_SetXOR(3,xor3); for (;;) { if (Kbhit()) { Getch(); return; } show_abz(); DelayMs(100); } } void show_abz(void) { int A1,B1,Z1,A2,B2,Z2,A3,B3,Z3,ret1,ret2,ret3; X703_GetLineStatus(1,&A1,&B1,&Z1); X703_GetLineStatus(2,&A2,&B2,&Z2); X703_GetLineStatus(3,&A3,&B3,&Z3); Print("\n(XOR1=%d, Z1B1A1=%d%d%d) * ",xor1,Z1,B1,A1); Print("(XOR2=%d, Z2B2A2=%d%d%d) * ",xor2,Z2,B2,A2); Print("(XOR3=%d, Z3B3A3=%d%d%d)",xor3,Z3,B3,A3); }