www.pudn.com > rtu.rar > NT_FUNCS.H


/* 
 * @(#)nt_funcs.h	1.4 
 * Special functions for 80C196NT and compatible processors. 
 */ 
#ifndef _nt_funcs_h 
#define _nt_funcs_h 
 
void		enable(void); 
void		disable(void); 
 
void		enable_pts(void); 
void		disable_pts(void); 
 
void		power_down(void); 
void		idle(void); 
 
/****************************************************************************/ 
/* Define typedefs for PTS Control Blocks of 80C196NT.			    */ 
/****************************************************************************/ 
 
/* 
 * Single Transfer PTS Control Block 
 */ 
typedef struct STran_ptscb_t 
{ 
    unsigned char	ptscount; 
    struct 
    { 
	unsigned int	    di	 : 1; 
	unsigned int	    si	 : 1; 
	unsigned int	    du	 : 1; 
	unsigned int	    su	 : 1; 
	unsigned int	    b_w  : 1; 
	unsigned int	    mode : 3; 
    } ptscon; 
    near void	       *ptssrc; 
    near void	       *ptsdst; 
    int 		:16;				    /* unused */ 
} STran_ptscb; 
 
 
/* 
 * Block Transfer PTS Control Block 
 */ 
typedef struct BTran_ptscb_t 
{ 
    unsigned char	ptscount; 
    struct 
    { 
	unsigned int	    di	 : 1; 
	unsigned int	    si	 : 1; 
	unsigned int	    du	 : 1; 
	unsigned int	    su	 : 1; 
	unsigned int	    b_w  : 1; 
	unsigned int	    mode : 3; 
    } ptscon; 
    near void	       *ptssrc; 
    near void	       *ptsdst; 
    unsigned char	ptsblock; 
    int 		:8;				    /* unused */ 
} BTran_ptscb; 
 
 
/* 
 * A/D Mode PTS Control Block 
 */ 
typedef struct AD_ptscb_t 
{ 
    unsigned char	ptscount; 
    struct 
    { 
	unsigned int	    const1 : 3; 
	unsigned int	    updt   : 1; 
	unsigned int	    const2 : 1; 
	unsigned int	    mode   : 3; 
    } ptscon; 
    near void		*ptsptr1; 
    near void		*ptsptr2; 
    int 		:16;				    /* unused */ 
} AD_ptscb; 
 
 
/* 
 *  PTS A/D Table 
 */ 
typedef struct AD_tab_t 
{ 
    unsigned char	AD_command; 
    unsigned int	AD_result; 
} AD_tab; 
 
 
/* 
 *  PTS PWM 
 */ 
typedef struct PWM_ptscb_t 
{ 
    int 		:8;				    /* unused */ 
    struct 
    { 
	unsigned int	    tbit   : 1; 
	unsigned int	    tmod   : 1; 
	unsigned int	    const1 : 3; 
	unsigned int	    mode   : 3; 
    } ptscon; 
    near void		*ptsptr1; 
    unsigned int	ptsconst1; 
    int 		:16; 
} PWM_ptscb; 
 
 
/* 
 *  PTS PWM Toggle 
 */ 
typedef struct PWMtoggle_ptscb_t 
{ 
    int 		:8;				    /* unused */ 
    struct 
    { 
	unsigned int	    tbit   : 1; 
	unsigned int	    tmod   : 1; 
	unsigned int	    const1 : 3; 
	unsigned int	    mode   : 3; 
    } ptscon; 
    near void		*ptsptr1; 
    unsigned int	ptsconst1; 
    unsigned int	ptsconst2; 
} PWMtoggle_ptscb; 
 
#endif	/* _nt_funcs_h */