/* file name: dim.c, DIO signal test */ /* ­×§ïex. of 1.8.1 Digital input method of iVew ver1.0 */ #include #include #define DO1 0x100 #define SCAN1 0x101 #define SCAN2 0X102 #define LED 0x103 #define DIN 0x104 #define DO 0x105 int main(void) { int i=1,DI, quit=0; char c; InitLCD(); Print("IVIEW-100: DI signal test.\n\r"); TextOutAt(1, 1, "IVIEW-100"); TextOutAt(1, 2, "DI signal test"); LcdPrintfAt(1, 3, "press Q to quit"); //*no use* TextOutAt_len(1, 4, "test",4); while(!quit) { // DI=inp(DIN) & 0xFF; DI=inp(DIN); Print("DI=%x\n\r",DI); Print("DI1=%d\n\r",(DI&0x01)); Print("DI2=%d\n\r",(DI&0x02)>>1); Print("DI3=%d\n\r",(DI&0x04)>>2); Print("DI4=%d\n\r",(DI&0x08)>>3); Print("Relay 1 status=%s\n\r",((DI&0x10)==0x10)?"OK":"Fail"); Print("Relay 2 status=%s\n\r",((DI&0x20)==0x20)?"OK":"Fail"); Print("test7=%d\n\r",DI&0x40); Print("test8=%d\n\r",DI&0x80); Print("press Q to quit\n\r"); c=Getch(); if(( c=='q')||( c=='Q')) quit=1; } CloseLCD(); return 0; }