You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mitlib.pub/MITLIB/Include/motion.h

144 lines
3.8 KiB
C

#ifndef _MOTION
#define _MOTION
//¦¡U16ª©¥»°±¥Î,§ï¥Î·s¦¡I32ª©¥»
//#define SOFT_VERSION 10901 // Y=1 means 2007 (YMMDD), Y=2 means 2008, Y=3 means 2009, Y=1 means 2010
//·s¦¡I32ª©¥»
#define SOFT_VERSION_EX 100903 // YYMMDD 2010/09/03
//#define REG_LOG
//#define HOME_LOG
//#define _DEBUGLOG
// =========== Choose Board Interface ================
#define _PCI // PCI Bus
//#define _MPC // ISA Bus
// =========== Choose OS =================
#define _MYWIN32
//#define _MSDOS
//#define _MYLINUX
//#define _MYWINCE
//#define _MYRTX
//#define _MYHYPERK
// =========== Choose Compiler =============
#define _MSC
//#define _BC31
//#define _MYWATCOMC
//#define _PLATFORMBUILDER
// =========== Choose IO method =============
#define _IO_HAL
//#define _IO_DIRECT
/////////////////////////////////////////////////////////////////////
#if defined(_MYWIN32)
#if defined( _MSC )
#define FNTYPE PASCAL
#define _SLEEP Sleep
#if defined( _IO_HAL )
void Win32_outb(unsigned short address, unsigned char RegSelCmd);
void Win32_outw(unsigned short address, unsigned short RegSelCmd);
void Win32_outl(unsigned short address, unsigned long RegSelCmd);
unsigned char Win32_inb(unsigned short address);
unsigned short Win32_inw(unsigned short address);
unsigned long Win32_inl(unsigned short address);
#define _OUTPORTB(s,t) Win32_outb(s,t)
#define _OUTPORTW(s,t) Win32_outw(s,t)
#define _OUTPORTD(s,t) Win32_outl(s,t)
#define _INPORTB(s) Win32_inb(s)
#define _INPORTW(s) Win32_inw(s)
#define _INPORTD(s) Win32_inl(s)
#else
#define _OUTPORTB _outp
#define _OUTPORTW _outpw
#define _OUTPORTD _outpd
#define _INPORTB _inp
#define _INPORTW _inpw
#define _INPORTD _inpd
#endif
#endif
#elif defined (_MSDOS)
#if defined( _BC31 )
#define FNTYPE
#define _OUTPORTB outportb
#define _OUTPORTW outport
#define _INPORTB inportb
#define _INPORTW inport
#define _SLEEP delay
#elif defined (_MYWATCOMC)
#define _ADLINK
#define FNTYPE
#define _OUTPORTB outp
#define _OUTPORTW outpw
#define _INPORTB inp
#define _INPORTW inpw
#define _SLEEP delay
#endif
#elif defined ( _MYLINUX)
#define FNTYPE
#define _SLEEP(t) usleep(1000*t)
void Linux_outb(unsigned short address, unsigned short RegSelCmd);
void Linux_outw(unsigned short address, unsigned short RegSelCmd);
void Linux_outl(unsigned short address, unsigned short RegSelCmd);
unsigned short Linux_inb(unsigned short address);
unsigned short Linux_inw(unsigned short address);
unsigned short Linux_inl(unsigned short address);
#define _OUTPORTB(s,t) Linux_outb(s,t) //Mark 2006/11/30
#define _OUTPORTW(s,t) Linux_outw(s,t) //Mark 2006/11/30
#define _OUTPORTD(s,t) Linux_outl(s,t) //Mark 2006/11/30
#define _INPORTB(s) Linux_inb(s) //Mark 2006/11/30
#define _INPORTW(s) Linux_inw(s) //Mark 2006/11/30
#define _INPORTD(s) Linux_inl(s) //Mark 2006/11/30
#elif defined (_MYWINCE )
#ifdef _PLATFORMBUILDER
#define FNTYPE
#define _OUTPORTB _outp
#define _OUTPORTW _outpw
#define _OUTPORTD _outpd
#define _INPORTB _inp
#define _INPORTW _inpw
#define _INPORTD _inpd
#define _SLEEP Sleep
#endif
#elif defined (_MYRTX)
#define FNTYPE
#define _OUTPORTB RtWritePortUchar
#define _OUTPORTW RtWritePortUshort
#define _OUTPORTD RtWritePortUlong
#define _INPORTB RtReadPortUchar
#define _INPORTW RtReadPortUshort
#define _INPORTD RtReadPortUlong
#define _SLEEP Sleep
#elif defined (_MYHYPERK)
#define FNTYPE
#define _OUTPORTB hkOutp
#define _OUTPORTW hkOutpw
#define _OUTPORTD hkOutpd
#define _INPORTB hkInp
#define _INPORTW hkInpw
#define _INPORTD hkInpd
#define _SLEEP hkSleep
#endif
#endif