/******************************************************************************* DI.c : Reads DI. Compiler: BC++ 3.1, Turbo C ++ 1.01(3.01) (free from http://community.borland.com/museum) MSC 6.0, MSVC 1.52. Compile mode: large Project: DI.c ..\Lib\(8000E.Lib,8000l.Lib) Detail description: The demo is DI's demo for 8048. +--------------------------+--------------+----+ |JPn select isolated input |Digital Input |LED | +--------------------------+--------------+----+ |Input is OPEN | High |OFF | +--------------------------+--------------+----+ |Input is 3.5V ~ 30V | Low |ON | +--------------------------+--------------+----+ |Input is 0V ~ 1V | High |OFF | +--------------------------+--------------+----+ +--------------------------+--------------+----+ |JPn select TTL input |Digital Input |LED | +--------------------------+--------------+----+ |Input is OPEN | High |OFF | +--------------------------+--------------+----+ |Input is 3.5V ~ 30V | High |OFF | +--------------------------+--------------+----+ |Input is 0V ~ 1V | Low |ON | +--------------------------+--------------+----+ [24 Mar,2005] by Bill ********************************************************************************/ #include "..\..\Lib\8000E.h" #include "..\..\lib\8048.h" #include void main(void) { int iChannel,iDI_ALL,iDI_Ch,iSlot; char *cSlot; InitLib(); Print("Please selection Slot:"); *cSlot=Getch(); iSlot=atoi(cSlot); Print("iSlot==%d\n\r",iSlot); for(;;) { Print("iSlot==%d\n\r",iSlot); iDI_ALL=i8048_DI_ALL(iSlot); //Read all channel. Print("DI ALL status== %x \n\r",iDI_ALL); for(iChannel=0;iChannel<8;iChannel++) { iDI_Ch=i8048_DI_Ch(iSlot,iChannel); //Read single channel. if(iDI_Ch == 0) { Print("CH%d ==>Logic %d LED ON \n\r",iChannel,iDI_Ch); } else Print("CH%d ==>logic %d LED OFF \n\r",iChannel,iDI_Ch); } } }