亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ev386ex.h

?? mcs51,2051,x86系列MCU
?? H
字號:
/* Copyright (C) Intel Corporation 1994
         All Rights Reserved.

The Software is provided "AS IS."

LIMITATION OF LIABILITY:    NEITHER INTEL NOR ITS VENDORS OR AGENTS 
    SHALL BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF USE, LOSS OF DATA, 
    INTERRUPTION OF BUSINESS, NOR FOR INDIRECT, SPECIAL, INCIDENTAL OR 
    CONSEQUENTIAL DAMAGES OF ANY KIND WHETHER UNDER THIS AGREEMENT OR 
    OTHERWISE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
*/

	/********************** Global typedef ***********************/
typedef unsigned char	BYTE;	/* 8-bit value */
typedef unsigned short	WORD;   /* 16-bit value */
typedef unsigned long	DWORD;  /* 32-bit value */

/********************** Global Used defines ******************/

/* Error Flags */
#define E_OK				0
#define E_INVALID_DEVICE	1
#define E_INVALID_VECTOR	2
#define E_BADVECTOR			3


#define INTERRUPT_ISR   1
#define TRAP_ISR        2
#define IDT_ALIAS   	2		/* Only valid for protected mode */
#define TRAP_TYPE		0x8f00  /* Only valid for protected mode */
#define INTR_TYPE		0x8e00  /* Only valid for protected mode */
    

#define LOBYTE(w)	    ((BYTE)(w))
#define HIBYTE(w)       ((BYTE)(((WORD)(w) >> 8) & 0xFF))

#define LOWORD(l)           ((WORD)(DWORD)(l))
#define HIWORD(l)           ((WORD)((((DWORD)(l)) >> 16) & 0xFFFF))

	/*** Bit Masks ***/
#define BIT0MSK	0x1
#define BIT1MSK	0x2
#define BIT2MSK	0x4
#define BIT3MSK	0x8
#define BIT4MSK	0x10
#define BIT5MSK	0x20
#define BIT6MSK	0x40
#define BIT7MSK	0x80                       

	/********************** Global Function **********************/
extern void _EnableExtIOMem(void);
             
/**************** Interrupt Control Unit configuration defines ***********************/
	/* ICU Modes */
#define ICU_SFNM			0x10
#define ICU_AUTOEOI			0x2
#define ICU_TRIGGER_LEVEL	0x8
#define ICU_TRIGGER_EDGE	0x0
	/* ICU Master Pins */
#define MPIN_INT0	0x4
#define MPIN_INT1	0x8
#define MPIN_INT2	0x10
#define MPIN_INT3	0x20
	/* ICU Master External Cascade IRs */
#define MCAS_IR1	0x2
#define MCAS_IR2	0x4
#define MCAS_IR5    0x20
#define MCAS_IR6    0x40
#define MCAS_IR7    0x80
	/* ICU Slave Pins */
#define SPIN_INT4	0x1
#define SPIN_INT5	0x2
#define SPIN_INT6	0x4
#define SPIN_INT7	0x8
	/* ICU IRQ Mask Values*/
#define IR0			0x1
#define IR1			0x2
#define IR2			0x4
#define IR3			0x8
#define IR4			0x10
#define IR5			0x20
#define IR6			0x40
#define IR7			0x80
	/* ICU EOI Types */
#define NONSPECIFIC_EOI	0x20
#define SPECIFIC_EOI	0x60
#define NonSpecificEOI()		_SetEXRegByte(OCW2S,NONSPECIFIC_EOI); _SetEXRegByte(OCW2M,NONSPECIFIC_EOI)
#define MstrSpecificEOI(irq)	_SetEXRegByte(OCW2M, 0x60 | ((BYTE)((irq) & 0x7)) )
#define SlaveSpecificEOI(irq)	_SetEXRegByte(OCW2S, 0x60 | ((BYTE)((irq) & 0x7)) )

extern int  InitICU(BYTE MstrMode, BYTE MstrBase, BYTE MstrCascade, BYTE SlaveMode, BYTE SlaveBase,BYTE MstrPins, BYTE SlavePins);
extern int  InitICUSlave(BYTE SlaveMode, BYTE SlaveBase, BYTE SlavePins);
extern void SetInterruptVector( void (far interrupt *IntrProc)(void), int Vector, int IntrType);
extern int  SetIRQVector( void (far interrupt *IntrProc)(void), int IRQ, int IntrType);
extern void Enable8259Interrupt(BYTE MstrMask, BYTE SlaveMask);
extern void Disable8259Interrupt(BYTE MstrMask, BYTE SlaveMask);

/**************** Asynchronous Serial I/O Port defines ***********************/
#define SIO_0				0
#define SIO_1				1

#define SIO0_IRQ			4       /* IRQ # Master IRQ4 */
#define SIO1_IRQ			3       /* IRQ # Master IRQ3 */

#define SIO_5DATA			0x0
#define SIO_6DATA			0x1
#define SIO_7DATA			0x2
#define SIO_8DATA			0x3

#define SIO_1STOPBIT		0x0
#define SIO_2STOPBIT		0x4

#define SIO_NOPARITY		0x0
#define SIO_ODDPARITY		0x8
#define SIO_EVNPARITY		0x18
#define SIO_FRC0PARITY		0x28
#define SIO_FRC1PARITY		0x38

#define SIO_SETBREAK		0x40

#define SIO_INTERNAL_SRC	0x1
#define SIO_EXTERNAL_SRC	0x0
#define SIO_CLKSRC_CLK2		0x1
#define SIO_CLKSRC_COMCLK	0x0

#define SIO_INTR_NONE		0
#define SIO_INTR_RBF		0x1
#define SIO_INTR_TBE		0x2
#define SIO_INTR_RLS		0x4
#define SIO_INTR_MS         0x8

#define SIO_MCR_LOOP_BACK	0x10
#define SIO_MCR_OUT2		0x8
#define SIO_MCR_OUT1		0x4
#define SIO_MCR_RTS			0x2
#define SIO_MCR_DTR			0x1

#define SIO_8N1				(SIO_8DATA | SIO_1STOPBIT | SIO_NOPARITY)
#define SIO_7N1				(SIO_7DATA | SIO_1STOPBIT | SIO_NOPARITY)

	/* Status Bits */
#define SIO_ERROR_BITS		0x1e
#define SIO_RX_BUF_FULL		0x1
#define SIO_OVERRUN			0x2
#define SIO_PARITY_ERR		0x4
#define SIO_FRAMING_ERR		0x8
#define SIO_BREAK_INTR		0x10
#define SIO_TX_BUF_EMPTY	0x20
#define SIO_TX_EMPTY		0x40


			/* Offsets from beginning of SIO port addresses */
#define RBR		0
#define TBR		0
#define DLL		0
#define IER		1
#define DLH		1
#define IIR		2
#define LCR		3
#define MCR		4
#define LSR		5
#define MSR		6
#define SCR		7
#define SIO0_BASE	0xF4F8
#define SIO1_BASE	0xF8F8

	/* Define Function Macros */
#define GetSIO0Status()			_GetEXRegByte(LSR0)
#define GetSIO1Status()			_GetEXRegByte(LSR1)
#define GetSIO0InterruptID()	_GetEXRegByte(IIR0)
#define GetSIO1InterruptID()	_GetEXRegByte(IIR1)
#define GetSIO0ModemStatus()	_GetEXRegByte(MSR0)
#define GetSIO1ModemStatus()	_GetEXRegByte(MSR1)
#define GetSIO0Char()			_GetEXRegByte(RBR0)
#define GetSIO1Char()			_GetEXRegByte(RBR1)
#define ChangeSIO0IntrSrc(src)  _SetEXRegByte(IER0,src)
#define ChangeSIO1IntrSrc(src)  _SetEXRegByte(IER1,src)
#define ChangeSIO0Mode(Mode)	_SetEXRegByte(LCR0,Mode)
#define ChangeSIO1Mode(Mode)	_SetEXRegByte(LCR1,Mode)
#define DisableSIO0Interrupt(src)	_SetEXRegByte(IER0,_GetEXRegByte(IER0) & !(src))
#define DisableSIO1Interrupt(src)	_SetEXRegByte(IER1,_GetEXRegByte(IER1) & !(src))

	/* SIO Function Definitions */
extern int InitSIO(int Unit, BYTE Mode, BYTE ModemCntrl, DWORD BaudRate, DWORD BaudClkIn);
extern int  SetSIOInterrupt(int Unit,BYTE IntrSources, void (far interrupt *InterruptFnc)(void), int ISR_Type);
extern BYTE SerialReadChar(int Unit);
extern int  SerialReadStr(int Unit, char far *str, int count);
extern void SerialWriteChar(int Unit, BYTE ch);
extern void SerialWriteStr(int Unit, const char far *str);
extern void SerialWriteMem(int Unit, const char far *mem, int count);
extern void Service_RBF (void);
extern void SerialWriteStr_Int(int Unit, const char far *str);
extern void Service_TBE(void);
/**************** Port I/O configuration defines ***********************/
	/* Port 1 configuration defines */
#define DCD0	0x1
#define RTS0	0x2
#define DTR0	0x4
#define DSR0	0x8
#define RI0	    0X10
#define LOCK	0x20
#define HOLD    0X40
#define HOLDACK 0X80
	/* Port 2 configuration defines */
#define CS0 	0x1
#define CS1 	0x2
#define CS2 	0x4
#define CS3 	0x8
#define CS4     0X10
#define RXD0	0x20
#define TXD0    0X40
#define CTS0    0X80
	/* Port 3 configuration defines */
#define TMROUT0 0x1
#define TMROUT1 0x2
#define INT0	0x4
#define INT1	0x8
#define INT2    0x10
#define INT3	0x20
#define PWRDWN  0x40
#define COMCLK  0x80
	/* Port Direction defines */
#define P0_IN	0x1
#define P1_IN	0x2
#define P2_IN	0x4
#define P3_IN	0x8
#define P4_IN	0x10
#define P5_IN	0x20
#define P6_IN	0x40
#define P7_IN	0x80
#define Px_OUT	0

	/* Pin configuration defines */
#define RTS1	0x1
#define SSIOTX	0
#define DTR1	0x2
#define SRXCLK	0
#define TXD1	0x4
#define DACK1	0
#define CTS1	0x8
#define EOP		0
#define CS5		0x10
#define DACK0	0
#define TIMER2	0x20
#define COPROC	0
#define REFRESH 0x40
#define CS6		0
                  
                  
extern void Init_IOPorts(BYTE Port1, BYTE Port2, BYTE Port3, BYTE PortDir1,
								 BYTE PortDir2, BYTE PortDir3, BYTE PortLtc1, 
								 BYTE PortLtc2, BYTE PortLtc3);
								                   
/**************** Timer configuration defines ***********************/
#define TMR_0	0
#define TMR_1	1
#define TMR_2	2
#define TMR0_IRQ		 	0       /* IRQ # Master IRQ0 */
#define TMR1_IRQ			10      /* IRQ # Slave IRQ2 */
#define TMR2_IRQ			11      /* IRQ # Slave IRQ3 */
	/* Timer Modes */
#define TMR_TERMCNT		0
#define TMR_1SHOT		(1<<1)
#define TMR_RATEGEN		(2<<1)
#define TMR_SQWAVE		(3<<1)
#define TMR_SW_TRIGGER	(4<<1)
#define TMR_HW_TRIGGER  (5<<1)
	/* Count Type */
#define TMR_CLK_BCD     1
#define TMR_CLK_BIN		0
	/* Timer Pin Configuration */
#define TMR_CLK_INTRN		0
#define TMR_CLK_EXTRN       0x1
#define TMR_GATE_VCC        0
#define TMR_GATE_EXTRN      0x2
#define TMR_OUT_ENABLE      0x1
#define TMR_OUT_DISABLE     0

#define TMR_ENABLE			1
#define TMR_DISABLE			0

	/* Timer Function Definitions */
extern int InitTimer(int Unit, WORD Mode, BYTE Inputs, BYTE Output,WORD InitCount, int Enable);

extern void SetUp_ReadBack(BYTE Timer0, BYTE Timer1, BYTE Timer2, BYTE GetStatus, BYTE GetCount);

extern WORD CounterLatch(BYTE Timer);

extern WORD ReadCounter(BYTE Timer);

/**************** SSIO configuration defines ***********************/

#define SSIO_TUE		0x80		/* Transmit Underflow Error */
#define SSIO_THBE		0x40		/* Transmit Holding Buffer Empty */
#define SSIO_TX_IE		0x20		/* Transmit Interrupt Enable */
#define SSIO_TX_ENAB	0x10		/* Transmitter Enable */
#define SSIO_ROE		0x08			/* Receive Overflow Error */
#define SSIO_RHBF		0x04			/* Receive Holding Buffer Full */
#define SSIO_RX_IE		0x02			/* Receive Interrupt Enable */
#define SSIO_RX_ENAB	0x01			/* Receiver Enable */

#define SSIO_TX_MASTR	0x02			/* Transmit Master Mode */
#define SSIO_RX_MASTR	0x01			/* Receive Master Mode */
#define SSIO_TX_SLAVE	0
#define SSIO_RX_SLAVE	0

#define SSIO_CLK_SERCLK	0x01			/* Baud Rate Clocking Source SERCLK = CLK2/4 */
#define SSIO_CLK_PSCLK	0x00         /* Baud Rate Clocking Source PSCLK  = (CLK2/2) / (CLKPRS+2) */
#define SSIO_BAUD_ENAB	0x80		/* Enable Baud Rate Generator */


extern void InitSSIO(BYTE Mode, BYTE MasterTxRx, BYTE BaudValue, BYTE PreScale);
extern WORD SSerialReadWord(BYTE MasterSlave);
extern void SSerialWriteWord(WORD Ch,BYTE MasterSlave);


/**************** Watch Dog Timer ***********************/
#define SetWatchDogReload(ReloadHi,ReloadLow) \
	_SetEXRegWord(WDTRLDL,ReloadLow);_SetEXRegWord(WDTRLDH,ReloadHi); 

#define WatchDogClockDisable()	\
	_SetEXRegByte(WDTSTATUS, _GetEXRegByte(WDTSTATUS) | BIT0MSK)
                                                  
#define WatchDogClockEnable()	\
	_SetEXRegByte(WDTSTATUS, _GetEXRegByte(WDTSTATUS) & ~BIT0MSK)
	
extern void ReLoadDownCounter(void);
extern DWORD GetWDT_Count(void);
extern void WDT_BusMonitor(BYTE EnableDisable); 
extern void EnableWDTInterrupt(void);
                                                   
                                                   
/*************************Refresh Control Unit***************************/
                                     
#define EnableRCU() \
    _SetEXRegWord(RDFSCON, _GetEXRegWord(RDFSCON) | 0x8000)
    
#define DisableRCU() \
    _SetEXRegWord(RDFSCON, _GetEXRegWord(RDFSCON) & 0x7fff)
    
extern int InitRCU(WORD counter_value);
                   
extern WORD Get_RCUCounterValue(void);
                                                                  
/*********************Clock and Power Management Unit*********************/

#define IDLE 0x02
#define PWDWN 0x01
#define ACTIVE 0x00


extern int Set_Prescale_Value(WORD prescale);
extern void Enter_Idle_Mode(void);
extern void Enter_Powerdown_Mode(void);
extern void Mode_Setting_To_Active(void); 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97精品久久久午夜一区二区三区 | 日韩极品在线观看| 国产精品动漫网站| 国产精品乱码久久久久久| 精品国产91洋老外米糕| 日韩精品一区二区三区三区免费| 777久久久精品| 日韩精品一区二区三区四区 | 欧美另类变人与禽xxxxx| 欧美性大战xxxxx久久久| 欧美日韩国产综合视频在线观看 | 欧美性大战久久| 69堂国产成人免费视频| 91精品国产91久久综合桃花| 欧美一区二区三区视频在线| 欧美一区二区视频在线观看| 日韩精品自拍偷拍| 欧美国产禁国产网站cc| 亚洲最大成人综合| 毛片一区二区三区| 成人黄色小视频| 欧美午夜精品一区二区蜜桃| 欧美一区二区三区四区视频| xf在线a精品一区二区视频网站| 国产亚洲精品bt天堂精选| 亚洲私人影院在线观看| 天堂影院一区二区| 国产91富婆露脸刺激对白| 欧美三级一区二区| 久久综合中文字幕| 亚洲国产一区二区在线播放| 美日韩黄色大片| 91视视频在线直接观看在线看网页在线看 | 午夜电影网亚洲视频| 久久99精品国产麻豆不卡| a4yy欧美一区二区三区| 欧美一区二区三区不卡| 国产精品国产三级国产普通话99| 亚洲国产成人av网| 粉嫩久久99精品久久久久久夜| 欧洲av一区二区嗯嗯嗯啊| 久久精品人人做人人综合| 一区二区三区不卡视频| 国产成人av资源| 日韩欧美一区在线观看| ㊣最新国产の精品bt伙计久久| 无码av中文一区二区三区桃花岛| 国产成a人亚洲精| 日韩欧美一区二区视频| 一区二区久久久| www.欧美.com| 国产日韩精品久久久| 久久成人免费电影| 宅男噜噜噜66一区二区66| 亚洲精品ww久久久久久p站| 成人综合激情网| 久久精品视频一区二区三区| 五月婷婷综合激情| 色综合久久综合| 中文字幕一区三区| 国产成人av福利| 精品奇米国产一区二区三区| 五月天丁香久久| 欧美三级电影网| 亚洲国产中文字幕在线视频综合| 99精品欧美一区二区三区小说| 国产日韩精品一区| 国产成人免费在线视频| 久久精品一区二区三区四区| 蜜臀av一区二区| 精品美女被调教视频大全网站| 亚洲成av人片在www色猫咪| 在线日韩国产精品| 亚洲一区二区三区四区不卡| 一道本成人在线| 亚洲国产日日夜夜| 欧美剧在线免费观看网站| 午夜精品久久久久久久久久久| 91豆麻精品91久久久久久| 一区二区三区鲁丝不卡| 在线免费精品视频| 日韩成人一级大片| 日韩三级av在线播放| 狠狠色2019综合网| 日本一区免费视频| 91视频观看免费| 亚洲综合色成人| 在线成人午夜影院| 精品亚洲国内自在自线福利| 精品国产精品一区二区夜夜嗨| 黑人巨大精品欧美一区| 国产欧美一区二区三区鸳鸯浴| 国产凹凸在线观看一区二区| 中文字幕一区二区不卡| 国产乱理伦片在线观看夜一区| 久久伊99综合婷婷久久伊| 狠狠色综合色综合网络| 18成人在线视频| 欧美日韩一级二级三级| 丝瓜av网站精品一区二区| 日韩午夜激情av| www.欧美亚洲| 天天综合色天天综合| 亚洲精品一区二区三区在线观看 | 亚洲美女精品一区| 日韩一区二区影院| 国产成人精品免费一区二区| 亚洲色大成网站www久久九九| 欧美日本国产视频| 乱一区二区av| 国产区在线观看成人精品| av一区二区三区四区| 奇米综合一区二区三区精品视频| 精品国产99国产精品| 欧洲一区在线观看| 国产一区二区不卡在线 | 日本午夜一本久久久综合| 国产免费成人在线视频| 91精品国产综合久久精品图片 | 成人97人人超碰人人99| 免费观看在线综合色| 日本一区二区三区国色天香 | 一区二区三区四区视频精品免费| 日韩亚洲欧美综合| 91福利在线观看| www.日韩av| 国产成人av网站| 精品一区二区三区视频 | 精品国产乱码久久久久久久久 | 成人妖精视频yjsp地址| 青青草伊人久久| 亚洲小说欧美激情另类| 中文字幕一区二区视频| 精品91自产拍在线观看一区| 欧美色视频一区| 欧美午夜不卡在线观看免费| 国产99精品国产| 国产麻豆精品95视频| 久久66热偷产精品| 卡一卡二国产精品| 久久99蜜桃精品| 人妖欧美一区二区| 天天做天天摸天天爽国产一区 | 亚洲一区二区三区在线播放| 国产精品久久久一本精品| 久久久久久久网| 久久久99免费| 中文字幕av资源一区| 国产网站一区二区三区| 精品国产sm最大网站免费看| 欧美zozozo| 久久蜜臀精品av| 国产欧美一区二区精品性色| 精品国内二区三区| 久久久久久久久久久99999| 欧美精品一区在线观看| 337p日本欧洲亚洲大胆色噜噜| 日韩欧美一区在线观看| 精品久久国产字幕高潮| 久久一留热品黄| 国产精品狼人久久影院观看方式| 国产精品欧美经典| 亚洲免费色视频| 亚洲va欧美va国产va天堂影院| 午夜av电影一区| 久久99蜜桃精品| gogo大胆日本视频一区| 欧美在线观看18| 日韩一级黄色大片| 国产人妖乱国产精品人妖| 亚洲色图在线视频| 天天影视网天天综合色在线播放| 男女男精品视频网| 国产成人精品免费在线| 色狠狠综合天天综合综合| 91麻豆精品国产综合久久久久久| 日韩欧美在线一区二区三区| 国产欧美日韩精品一区| 亚洲欧美电影院| 精品一区二区免费在线观看| 成人免费高清在线| 欧美性做爰猛烈叫床潮| 精品国产99国产精品| 亚洲激情五月婷婷| 久久成人羞羞网站| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 蜜桃在线一区二区三区| 国产乱人伦偷精品视频不卡| 国产成人免费视频一区| 在线亚洲一区二区| 精品国产乱码久久久久久1区2区| 中文字幕欧美一| 精品一区二区三区免费播放| 91色乱码一区二区三区| 精品精品国产高清a毛片牛牛| 亚洲人成人一区二区在线观看| 男女性色大片免费观看一区二区| 99视频一区二区三区| 精品福利一二区| 婷婷久久综合九色国产成人|