⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 _mb89470.h

📁 Fujitsu MB89P475的应用实例
💻 H
字号:
/*
 MB89480 Series I/O register declaration file V30L07
 ALL RIGHTS RESERVED, COPYRIGHT (C) FUJITSU LIMITED 1998-2000
 LICENSED MATERIAL - PROGRAM PROPERTY OF FUJITSU LIMITED
/*update by Jianjun Geng*/
#ifdef __FASM__
		#include "_mb894xx_a.h"
#else
	#include "_mb894xx.h"
#endif	

/* I/O Area Address */
#ifdef __FASM__
	#ifdef __IO_DEFINE
  		.section IO_REG, IOCOMMON, locate=0x000000
	#else
  		.section IO, IO, ALIGN=1
	#endif
#else
	#ifdef __IO_DEFINE
  		#pragma section IO=IO_REG, attr=IOCOMMON, locate=0x000000
	#endif
#endif
__IO_EXTERN __UNION_D(io_pdr0,PDR0)		/* addr 00h */
__IO_EXTERN __UNION_D(io_ddr0,DDR0)				/* addr 01h */
__IO_EXTERN __UNION_D(io_pdr1,PDR1)		/* addr 02h */
__IO_EXTERN __UNION_D(io_ddr1,DDR1)				/* addr 03h */
__IO_EXTERN __UNION_D(io_pdr2,PDR2)		/* addr 04h */

__IO_STATIC __RESERVE_D(dmy_05,1)		    /* addr 05h */

__IO_EXTERN __UNION_D(io_ddr2,DDR2)				/* addr 06h */
__IO_EXTERN __UNION_D(io_sycc,SYCC)		/* addr 07h */
__IO_EXTERN __UNION_D(io_stbc,STBC)		/* addr 08h */
__IO_EXTERN __UNION_D(io_wdtc,WDTC)			    /* addr 09h */
__IO_EXTERN __UNION_D(io_tbtc,TBTC)			/* addr 0Ah */
__IO_EXTERN __UNION_D(io_wpcr,WPCR)		/* addr 0Bh */
__IO_EXTERN __UNION_D(io_pdr3,PDR3)		/* addr 0Ch */
__IO_STATIC __UNION_D(io_pdr4,PDR4)		/* addr 0Dh */
__IO_EXTERN __UNION_D(io_rsfr,RSFR)				/* addr 0Eh */
__IO_EXTERN __UNION_D(io_bzcr,BZCR)		/* addr 0Fh */
__IO_EXTERN __UNION_D(io_pdr5,PDR5)		/* addr 10h */
__IO_EXTERN __UNION_D(io_ddr5,DDR5)				/* addr 11h */

__IO_STATIC __RESERVE_D(dmy_12_13,2)		/* addr 12~13h */

__IO_EXTERN __UNION_D(io_t4cr,T4CR)			/* addr 14h */
__IO_EXTERN __UNION_D(io_t3cr,T3CR)			/* addr 15h */
__IO_EXTERN __UNION_D(io_t4dr,T4DR)				/* addr 16h */
__IO_EXTERN __UNION_D(io_t3dr,T3DR)				/* addr 17h */

__IO_EXTERN __UNION_D(io_t2cr,T2CR)			/* addr 18h */
__IO_EXTERN __UNION_D(io_t1cr,T1CR)			/* addr 19h */
__IO_EXTERN __UNION_D(io_t2dr,T2DR)				/* addr 1Ah */
__IO_EXTERN __UNION_D(io_t1dr,T1DR)				/* addr 1Bh */

__IO_STATIC __RESERVE_D(dmy_1C_1F,4)		/* addr 1C~1Fh */

__IO_EXTERN __UNION_D(io_adc1,ADC1)		/* addr 20h */
__IO_EXTERN __UNION_D(io_adc2,ADC2)		/* addr 21H */

__IO_EXTERN __UNION_D(io_addv,ADDV)		/* addr 22~23H */

/* __IO_EXTERN __UNION_D(io_addh,ADDH)	/* addr 22h */
/* __IO_EXTERN __UNION_D(io_addl,ADDL)	/* addr 23h */

__IO_EXTERN __UNION_D(io_ader,ADER)		/* addr 24h */

__IO_STATIC __RESERVE_D(dmy_25,1)		    /* addr 25h */

__IO_EXTERN __UNION_D(io_smc11,SMC11)	/* addr 26h */
__IO_EXTERN __UNION_D(io_smc12,SMC12)	/* addr 27h */
__IO_EXTERN __UNION_D(io_ssd1,SSD1)		/* addr 28h */
__IO_EXTERN __UNION_D(io_sidr1,SIDR1)	/* addr 29h */
__IO_EXTERN __UNION_D(io_src1,SRC1)		/* addr 2Ah */

__IO_EXTERN __UNION_D(io_smc21,SMC21)	/* addr 2Bh */
__IO_EXTERN __UNION_D(io_smc22,SMC22)	/* addr 2Ch */
__IO_EXTERN __UNION_D(io_ssd2,SSD2)		/* addr 2Dh */
__IO_EXTERN __UNION_D(io_sidr2,SIDR2)				/* addr 2Eh */
__IO_EXTERN __UNION_D(io_src2,SRC2)				/* addr 2Fh */

__IO_EXTERN __UNION_D(io_eic11,EIC11)	/* addr 30h */
__IO_EXTERN __UNION_D(io_eic12,EIC12)	/* addr 31h */
__IO_EXTERN __UNION_D(io_eic21,EIC21)	/* addr 32h */
__IO_EXTERN __UNION_D(io_eif2,EIF2)		/* addr 33h */

__IO_EXTERN __UNION_D(io_pcr1,PCR1)		/* addr 34h */
__IO_EXTERN __UNION_D(io_pcr2,PCR2)		/* addr 35h */
__IO_EXTERN __UNION_D(io_rlbr,RLBR)				/* addr 36h */

__IO_STATIC __RESERVE_D(dmy_37,1)		    /* addr 37h */

__IO_EXTERN __UNION_D(io_cntr,CNTR)	    /* addr 34 */
__IO_EXTERN __UNION_D(io_comr,COMR)			    /* addr 39h */

__IO_STATIC __RESERVE_D(dmy_3A_6F,54)		/* addr 3A-6Fh */

__IO_EXTERN __UNION_D(io_purc0,PURC0)	/* addr 70h */
__IO_EXTERN __UNION_D(io_purc1,PURC1)	/* addr 71h */
__IO_EXTERN __UNION_D(io_purc2,PURC2)	/* addr 72h */
__IO_EXTERN __UNION_D(io_purc3,PURC3)	/* addr 73h */

__IO_STATIC __RESERVE_D(dmy_74,1)			/* addr 74h */

__IO_EXTERN __UNION_D(io_purc5,PURC5)	/* addr 75h */

__IO_STATIC __RESERVE_D(dmy_76_7A,5)		/* addr 76-7Ah */
__IO_EXTERN __UNION_D(io_ilr1,ILR1)				/* addr 7Bh */
__IO_EXTERN __UNION_D(io_ilr2,ILR2)				/* addr 7Ch */
__IO_EXTERN __UNION_D(io_ilr3,ILR3)				/* addr 7Dh */
__IO_EXTERN __UNION_D(io_ilr4,ILR4)				/* addr 7Eh */
__IO_STATIC __RESERVE_D(dmy_7F,1)			/* addr 7Fh */
#ifdef __FASM__
#ifdef __IO_DEFINE
  .section IO_WILDR, COMMON, locate=0x0480
#else
  .section DATA, DATA, ALIGN=1
#endif
#else
#ifdef __IO_DEFINE
  #pragma section DATA=IO_WILDR,locate=0x0480
#endif
#endif

typedef unsigned char  	unbyte;			/*Unsigned 8bit*/
typedef unsigned int   	unword;			/*Unsigned 16bit*/
typedef signed char  	byte;			/*Unsigned 8bit*/	
typedef signed int   	word;			/*Unsigned 16bit*/
typedef unsigned char  	UNBYTE;			/*Unsigned 8bit*/
typedef unsigned int   	UNWORD;			/*Unsigned 16bit*/
typedef signed char  	BYTE;			/*Unsigned 8bit*/	
typedef signed int   	WORD;			/*Unsigned 16bit*/

#define hibyte_point(address)	(*(unbyte *)&address)
#define lobyte_point(address)	(*((unbyte *)&address+1))

#define makeword(value1,value2)	((((unword)(value1))<<8)+(unword)(value2))
#define hiword(value)	((unbyte)((value)>>8))
#define loword(value)	((unbyte)((value)&0xff))

#define hibyte(value)	((unbyte)((value)>>4))
#define lobyte(value)	((unbyte)((value)&0x0f))

#define hibytetolo(value) ((unbyte)((value)>>4))
#define	lobytetohi(value) ((unbyte)((value)<<4))


#define bittobyte(v7,v6,v5,v4,v3,v2,v1,v0)   ((unbyte)((v7)*128+(v6)*64+(v5)*32+(v4)*16+(v3)*8+(v2)*4+(v1)*2+(v0)*1))
#define bittoword(vf,ve,vd,vc,vb,va,v9,v8,v7,v6,v5,v4,v3,v2,v1,v0)   ((unword)((vf)*32768+(ve)*16384+(vd)*8192+(vc)*4096+(vb)*2048+(va)*1024+(v9)*512+(v8)*256)+(unword)((v7)*128+(v6)*64+(v5)*32+(v4)*16+(v3)*8+(v2)*4+(v1)*2+(v0)*1))

union Flag
{
	unsigned char   byte;
	struct bit_t 
	{
		unsigned char	bit0:1;
		unsigned char	bit1:1;
		unsigned char	bit2:1;
		unsigned char	bit3:1;
		unsigned char	bit4:1;
		unsigned char	bit5:1;
		unsigned char	bit6:1;
		unsigned char	bit7:1; 
	}bit;         
};

union Flag_W
{
	unsigned int   word;
	struct bit_wt 
	{
		unsigned char	bit0:1;
		unsigned char	bit1:1;
		unsigned char	bit2:1;
		unsigned char	bit3:1;
		unsigned char	bit4:1;
		unsigned char	bit5:1;
		unsigned char	bit6:1;
		unsigned char	bit7:1; 

		unsigned char	bit8:1;
		unsigned char	bit9:1;
		unsigned char	bit10:1;
		unsigned char	bit11:1;
		unsigned char	bit12:1;
		unsigned char	bit13:1;
		unsigned char	bit14:1;
		unsigned char	bit15:1; 
	}bit_w;         
};





#define  IO		0
#define  io		0
#define  ON		0
#define  on		0
#define	 In		0
#define	 in		0
#define	 IN		0

#define  AD		1
#define  ad		1
#define  OFF	1
#define  Off	1
#define  off	1

#define  Out	1
#define  out	1
#define	 OUT	1

#define	 false	0
#define  true  1
#define  empty 0
#define  EMPTY 0
#define  full	255
#define  FULL	255
#define  FULL_W 65535
#define  full_w 65535
#define  nop	asm(" nop ")
#define	 NOP	asm(" nop ")
/*__IO_DATA_EXTERN  __STRUCT_AD(io_wildreg,IO_WILDR,6)	/* addr 480-491h */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -