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

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

?? hdlc100.h

?? 開源的嵌入式WEB服務器
?? H
?? 第 1 頁 / 共 2 頁
字號:
 *  Description : HDMA Channel A Rx initialize
 */

extern void HDMAB_Tx_init(U32 TxDB_B, U32 TxD_Size_B) ;//cjw
/*
 *  Function : HDMAB_Tx_init
 *  Description : HDMA Channel B Tx initialize
 */

extern void HDMAB_Rx_init(void) ;//cjw
/*
 *  Function : HDMAB_Rx_init
 *  Description : HDMA Channel B Rx initialize
 */

extern void HDLCTx_isr(int) ;//cjw
extern void HDLCRx_isr(int) ;//cjw
extern void HDMA_RxA_isr(void) ;
extern void HDMA_RxB_isr(void) ;

extern void HDLCRxA_isr(void) ;
extern void HDLCTxA_isr(void) ;
/*
 *  Function : HDLCA_isr
 *  Description : HDMA Channel A Interrupt Service Routine
 */

extern void HDLCRxB_isr(void) ;
extern void HDLCTxB_isr(void) ;
/*
 *  Function : HDLCB_isr
 *  Description : HDMA Channel B Interrupt Service Routine
 */

/*------------------------------------
 * Function Prototype for HDLClib.c
 *------------------------------------*/
extern void HDLCcpuTxGO(void) ;//cjw
extern void TxDataWrite(U8,int) ;

extern void HDLCARxEnable(void) ;//cjw
/*
 * Function : HDLCARxEnable
 * Description : HDLC Channel A Rx Enable
 */

//extern void HDLCTxGo(int) ;
/*
 * Function : HDLCTxGo
 * Description : HDLC Channel A/B Tx Enable
 */

extern void HDLCBRxEnable(void) ;//cjw
/*
 * Function : HDLCBRxEnable
 * Description : HDLC Channel B Rx Enable
 */

extern void HDLCALoopbackEn(void) ;//cjw
/*
 * Function : HDLCALoopbackEn
 * Description : HDLC Channel A Internal Loopback Test Enable
 */

extern void HDLCALoopbackDis(void) ;//cjw
/*
 * Function : HDLCALoopbackDis
 * Description : HDLC Channel A Internal Loopback Test Disable
 */

extern void HDLCBLoopbackEn(void) ;//cjw
/*
 * Function : HDLCBLoopbackEn
 * Description : HDLC Channel B Internal Loopback Test Enable
 */

extern void HDLCBLoopbackDis(void) ;//cjw
/*
 * Function : HDLCBLoopbackDis
 * Description : HDLC Channel B Internal Loopback Test Disable
 */

extern void TxBD_init(U8,int,int) ;
extern void RxBD_init(U8) ;

extern int GetRxHdlcData_A(U32 IntHdlcStatus) ;//cjw
/* 
 * Function : GetRxHdlcData_A
 * Description : HDLC Channel A Data Receive
 */

extern int GetRxHdlcData_B(U32 IntHdlcStatus) ;//cjw
/* 
 * Function : GetRxHdlcData_B
 * Description : HDLC Channel B Data Receive
 */

extern void PrintHdlcData(U8 *DBPtr, U32 Size) ;//cjw
/*
 * Function : PrintHdlcData
 * Description : Print HDLC Tx/Rx Data 
 */

extern int CompareHdlcLoopbackData(int) ;
/*
 * Function : CompareHdlcLoopbackData
 * Description : Compare Loopback test data
 * Return : Compare Ok or Fail
 */

extern int HdlcInternalLoopback(int,int) ;//cjw
/*
 * Function : HdlcInternalLoopback
 * Description : HDLC Internal Loopback Function
 */

extern int HdlcAExternLoopback(void) ;//cjw
/*
 * Function : HdlcAExternLoopback
 * Description : HDLC Internal Loopback Function
 */

extern int HdlcBExternLoopback(void) ;//cjw
/*
 * Function : HdlcBExternLoopback
 * Description : HDLC Channel B External Loopback Function
 */

extern int HdlcABExternLoopback(void) ;//cjw
/*
 * Function : HdlcA2BExternLoopback
 * Description : HDLC A to B External Loopback Function
 */

extern int HdlcLoopback(int, int ) ;//cjw
/*
 * Function : HdlcLoopback
 * Description : HDLC Channel Loopback Function
 */

//extern int HdlcA2BLoopback(U8 *TxDBA, int tsize, int lcount) ;
/*
 * Function : HdlcA2BLoopback
 * Description : HDLC A to B Loopback Function
 */

//extern int HdlcB2ALoopback(U8 *TxDBB, int tsize, int lcount) ;
/*
 * Function : HdlcB2ALoopback
 * Description : HDLC B to A Loopback Function
 */

extern void RegView(void) ;
extern void HdlcRegView(void) ;
extern void ViewHdlcErrorRpt(void) ;
/* 
 * Function : ViewHdlcErrorRpt
 * Description : View HDLC Error Report and Clear
 */
extern U32 CheckRxStatusHDLC(int,U32);
extern U32 CheckRxData(int,U32);
extern U32 CheckTxStatus(U8);
extern U32 FindFirstBD(U32);
extern U32 GetRxBDData(int,U32);//cjw
extern U32 GetBaudRate(U32);

extern void gVar_Init(void) ;
extern void CPUModeRegSet(void) ;
extern void DMAModeRegSet(void) ;

extern void HdlcTestByOp(void) ;
extern void HdlcInitialize(void) ;
extern void HdlcResetTest(void) ;
extern void HdlcReset(void) ;
extern void HdlcDMAmodeTest(void) ;
extern void HdlcCPUmodeTest(void) ;
extern void HdlcSingleTransfer(int) ;
extern void HdlcMultipleTransfer(int) ;
extern int  S_RxADma(void) ;
extern void PrtRxFrame(int) ;
extern void ShowTxData(int) ;
extern void ClrErrReport(void) ;

extern void S_RxDma(void) ;
extern void CPUTxAGo(void) ;
extern void CPUTxBGo(void) ;
//extern void HdlcTxReset(void) ;
//extern void HdlcRxReset(void) ;
//extern void HdlcDMATxReset(void) ;
extern void HdlcDMARxReset(void) ;
extern void TxBufferInitialize(U8) ;

extern void test(void) ;
extern void CPUOwnerSetFromFisrtRxBD(U32 *) ; 
extern void gVarAddrView(void) ;
extern void TxLen7byte(void) ;
extern U32 CheckRxCPU(void) ;
extern void RxFIFO2DMA(void) ;
extern void HdlcCacheTest(void) ;
extern void UniLength(int) ;
extern void RandomLength(int) ;
extern void Test(int) ;

#ifdef _HDLC100VAR_
#define _HDLC100VAR_

//Global variable
//Buffer Descriptor allocation use array
sBufferDescriptor			sTxBDStart[HDLCPORTNUM][MaxTxBDCount] ;
sBufferDescriptor			sRxBDStart[HDLCPORTNUM][MaxRxBDCount] ;

//HDLC Tx Rx Status
sHTxStatus					gHTxStatus[HDLCPORTNUM];			
sHRxStatus			gHRxStatus[HDLCPORTNUM];

sHDPLLStatus			gHDPLLStatus[HDLCPORTNUM];

//HDMA Rx Error Count
sHDMARxErr			gHDMARxErrCnt[HDLCPORTNUM];

U32							TxBBaseAddr[TxBufferSize] ;
U32							RxBBaseAddr[HDLCPORTNUM][RxBufferSize] ;
U32							RxUserArea[HDLCPORTNUM][UserAreaSize] ;

U32							*gUserArea[HDLCPORTNUM] = { 	
														RxUserArea[HDLCA],
														RxUserArea[HDLCB] } ;
U32							gFrameCount[HDLCPORTNUM];

int							ErrFrame[5000];

volatile 					U32 gPrevTxBDStart[HDLCPORTNUM];//cjw
volatile 					U32 gCTxBDStart[HDLCPORTNUM];//cjw
volatile U32 				gCTxBDEnd[HDLCPORTNUM];
//cjw. gloval variable in CPU operation
int 						gCPUmode = 0 ;
U32							gMaxPacketCnt ;
volatile U32 				gCRxBDStart[HDLCPORTNUM] ;//cjw
volatile U32 				gCRxBDEnd[HDLCPORTNUM] ;
volatile U32 				gHdlcRxDone = 0 ;

// Global Value Set
volatile U32 				gMode    = NRZ|IntCLK|BRGMCLK ; 
volatile U32 				gControl = Tx1WD|Rx1WD|DTxSTSK|DRxSTSK| \
									   RxWA0|TxDTR|BRGEN; 
volatile U32 				gHIntENA = DTxFDIE |  \
				        			   DRxFDIE | DRxNLIE | DRxNOIE | RxMOVIE; 
volatile U32 				gHIntENB = DTxFDIE | //DTxNOIE | DTxABTIE | 
				        			   DRxFDIE | DRxNLIE | DRxNOIE | RxMOVIE; 
sHDMARxErr					sHDMARxErrCnt ;
U32							gMultiTransfer;

// Used by ShowChan(channel) Macro to inform User operating Channel 
char						ch;

#if MODE == CPU
U32 gRxFail = 0;
#endif

#else  

//Global variable
//Buffer Descriptor allocation use array
extern sBufferDescriptor	sTxBDStart[HDLCPORTNUM][MaxTxBDCount] ;
extern sBufferDescriptor	sRxBDStart[HDLCPORTNUM][MaxRxBDCount] ;

//HDLC Tx Rx Status
extern sHTxStatus			gHTxStatus[HDLCPORTNUM];			
extern sHRxStatus			gHRxStatus[HDLCPORTNUM];

extern sHDPLLStatus			gHDPLLStatus[HDLCPORTNUM];

//HDMA Rx Error Count
extern sHDMARxErr			gHDMARxErrCnt[HDLCPORTNUM];

extern U32					TxBBaseAddr[TxBufferSize] ;
extern U32					RxBBaseAddr[HDLCPORTNUM][RxBufferSize] ;
extern U32					RxUserArea[HDLCPORTNUM][UserAreaSize] ;

extern U32					*gUserArea[HDLCPORTNUM] ;
extern U32					gFrameCount[HDLCPORTNUM];

extern int					ErrFrame[5000];

extern volatile U32 		gPrevTxBDStart[HDLCPORTNUM];//cjw
extern volatile U32 		gCTxBDStart[HDLCPORTNUM];//cjw
extern volatile U32 		gCTxBDEnd[HDLCPORTNUM];

//cjw. gloval variable in CPU operation
extern int 					gCPUmode ;
extern U32					gMaxPacketCnt ;
extern U32 					gMode ;
extern U32					gMultiTransfer;

extern volatile U32 		gCRxBDStart[HDLCPORTNUM] ;//cjw
extern volatile U32 		gCRxBDEnd[HDLCPORTNUM] ;
extern volatile U32 		gHdlcRxDone  ;
extern volatile U32 		gControl ; 
extern volatile U32 		gHIntENA ; 
extern volatile U32 		gHIntENB ; 
extern sHDMARxErr			sHDMARxErrCnt ;
// Used by ShowChan(channel) Macro to inform User operating Channel 
extern char						ch;

#if MODE == CPU
extern U32 gRxFail = 0;
#endif

#endif

// HDLC Registers
#define HMODE(channel) 					(VPint(Base_Addr+0x7000 + channel*0x1000))
#define HCON(channel) 					(VPint(Base_Addr+0x7004 + channel*0x1000))
#define HSTAT(channel)  				(VPint(Base_Addr+0x7008 + channel*0x1000))
#define HINTEN(channel) 				(VPint(Base_Addr+0x700c + channel*0x1000))
#define HTXFIFOC(channel) 				(VPint(Base_Addr+0x7010 + channel*0x1000))
#define HTXFIFOT(channel) 				(VPint(Base_Addr+0x7014 + channel*0x1000))
#define HRXFIFO(channel) 				(VPint(Base_Addr+0x7018 + channel*0x1000))
#define HBRGTC(channel)					(VPint(Base_Addr+0x701c + channel*0x1000))
#define HPRMB(channel)	 				(VPint(Base_Addr+0x7020 + channel*0x1000))
#define HSAR0(channel) 					(VPint(Base_Addr+0x7024 + channel*0x1000))
#define HSAR1(channel)	 				(VPint(Base_Addr+0x7028 + channel*0x1000))
#define HSAR2(channel)	 				(VPint(Base_Addr+0x702c + channel*0x1000))
#define HSAR3(channel)	 				(VPint(Base_Addr+0x7030 + channel*0x1000))
#define HMASK(channel) 					(VPint(Base_Addr+0x7034 + channel*0x1000))
#define HDMATXPTR(channel) 				(VPint(Base_Addr+0x7038 + channel*0x1000))
#define HDMARXPTR(channel) 				(VPint(Base_Addr+0x703c + channel*0x1000))
#define HMFLR(channel) 					(VPint(Base_Addr+0x7040 + channel*0x1000))
#define HRBSR(channel) 					(VPint(Base_Addr+0x7044 + channel*0x1000))

// Register Bit Control Macros
#define HdlcReset(channel) 				HCON(channel) |= TxRS|RxRS|DTxRS|DRxRS ;
#define HDLCTxEN(channel) 				HCON(channel) |= TxEN 
#define HDLCRxEN(channel) 				HCON(channel) |= RxEN 
#define HDMATxEN(channel) 				HCON(channel) |= DTxEN
#define HDMARxEN(channel) 				HCON(channel) |= DRxEN
#define HDLCLoopbackEn(channel) 		HCON(channel) |= TxLOOP
#define HDLCLoopbackDis(channel) 		HCON(channel) &= ~TxLOOP
#define DRxSizeSet(channel,size) 		HRBSR(channel) = size
#define MaxFrameLengthSet(channel,size) HMFLR(channel) = size
#define InterCLKEN(channel) 			HCON(channel) |= DPLLEN|BRGEN ;
#define HDLCTxGo(channel) 				HDLCTxEN(channel); HDMATxEN(channel)
#define HdlcTxReset(channel)  			HCON(channel) |= TxRS
#define HdlcRxReset(channel)  			HCON(channel) |= RxRS ;
#define HdlcDMATxReset(channel)			HCON(channel) |= DTxRS ;
#define HdlcDMARxReset(channel)			HCON(channel) |= DRxRS ;

#define ShowChan(channel)				ch=(!channel)?'A':'B' 


#endif  /* _HDLC100_H */ 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线看日本不卡| 久久精品国产一区二区三区免费看| 国产精品美女视频| 日韩精品一卡二卡三卡四卡无卡| 国产精品亚洲人在线观看| 欧美一级高清片在线观看| 日本午夜一区二区| 欧美精彩视频一区二区三区| 国产成人在线网站| 亚洲国产日韩av| 精品精品国产高清一毛片一天堂| 国产精品影视在线观看| 亚洲欧美另类小说视频| 欧美亚洲国产一区在线观看网站| 亚洲国产精品久久人人爱| 欧美精品粉嫩高潮一区二区| 狠狠色丁香婷婷综合| 国产精品久久久久久福利一牛影视 | 国产精品自拍毛片| 午夜精品久久久久久久久久久| 久久免费电影网| 欧美日韩第一区日日骚| 国产91精品在线观看| 国产一区视频导航| 国内一区二区在线| 亚洲一区欧美一区| 亚洲人xxxx| 中文字幕一区免费在线观看| 久久综合九色综合97_久久久 | 国产在线精品不卡| 欧美aaaaa成人免费观看视频| 一区二区三区四区乱视频| 日本一区二区不卡视频| 久久久五月婷婷| 国产午夜精品一区二区三区视频| 日韩精品一区二区三区视频| 欧美日韩一卡二卡三卡| 色av成人天堂桃色av| 成人性色生活片| 不卡一二三区首页| 99精品在线免费| 91精品一区二区三区久久久久久| 精品人伦一区二区色婷婷| 日韩欧美国产麻豆| 亚洲国产成人私人影院tom| 26uuu国产一区二区三区| 欧美美女激情18p| 日韩免费视频一区二区| 久久久综合视频| 精品第一国产综合精品aⅴ| 日韩精品自拍偷拍| 日韩视频免费观看高清完整版| 91精品国产欧美一区二区| 国产精品毛片无遮挡高清| 亚洲妇熟xx妇色黄| 国产成人一区二区精品非洲| 欧美伊人久久久久久久久影院 | 亚洲国产岛国毛片在线| 亚洲高清在线视频| eeuss鲁一区二区三区| 日韩免费观看高清完整版| 亚洲欧美国产77777| 国产麻豆午夜三级精品| 欧美一级xxx| 亚洲一区二区三区在线看| 成人在线综合网站| 久久先锋影音av鲁色资源网| 亚洲麻豆国产自偷在线| 国产成人鲁色资源国产91色综 | 欧美在线免费观看亚洲| 中文字幕佐山爱一区二区免费| 久久精品99久久久| 欧美无砖专区一中文字| 亚洲精品视频在线| 色综合一个色综合亚洲| 国产日产欧美一区| 国产成人av一区二区三区在线 | 91成人免费电影| 中文字幕中文字幕一区二区| 国产不卡视频一区二区三区| 久久久久久久久久久久久夜| 激情六月婷婷久久| 欧美成人福利视频| 国产精品一区二区x88av| 国产色91在线| 国产超碰在线一区| 一区二区三区资源| 色综合欧美在线视频区| 亚洲国产成人porn| 精品国产91洋老外米糕| 不卡一区在线观看| 麻豆91精品视频| 成人免费视频在线观看| 欧美日韩视频在线一区二区| 久久精品999| 亚洲一区二区三区影院| 亚洲精品在线免费播放| 94-欧美-setu| 国产精品456露脸| 亚洲自拍偷拍欧美| 国产欧美一区二区精品婷婷| 欧美三级中文字| 色狠狠一区二区| 99视频一区二区三区| 国产原创一区二区| 精品在线你懂的| 日日夜夜一区二区| 亚洲在线观看免费| 亚洲一区二区三区四区五区黄| 国产精品国产三级国产aⅴ中文| 日韩一区二区三区四区五区六区| 色综合婷婷久久| 99在线精品视频| 99久久精品国产导航| 丰满放荡岳乱妇91ww| 成人理论电影网| 色综合夜色一区| 欧美图区在线视频| 日韩视频免费观看高清完整版 | 国产精品久久三| 国产精品久久久久7777按摩| 久久久久久影视| 亚洲欧洲av色图| 亚洲18女电影在线观看| 亚洲成av人片观看| 久久99热99| 国产麻豆午夜三级精品| 国产91精品精华液一区二区三区| 国产一区二区三区精品视频| 丝袜美腿亚洲一区二区图片| 日韩精品成人一区二区三区| 麻豆一区二区在线| 日本久久电影网| 26uuu国产电影一区二区| 中文字幕一区二区三区乱码在线 | 午夜一区二区三区视频| 另类中文字幕网| 91色在线porny| 日本道精品一区二区三区| 欧美草草影院在线视频| 国产精品国产精品国产专区不蜜| 国产精品护士白丝一区av| 免费高清不卡av| 91黄色小视频| 国产农村妇女毛片精品久久麻豆| 婷婷开心激情综合| 欧美日韩一区国产| 亚洲大片在线观看| 欧洲亚洲精品在线| 亚洲色图丝袜美腿| 色综合久久中文综合久久97| 国产欧美日韩卡一| 亚洲sss视频在线视频| 99热国产精品| 一区二区在线看| 日本乱人伦一区| 午夜成人免费电影| 久久综合色8888| 成a人片亚洲日本久久| 亚洲视频在线观看三级| 欧美日韩视频在线第一区| 亚洲二区视频在线| 日韩免费在线观看| 久久成人精品无人区| 久久亚洲欧美国产精品乐播 | 欧美xxxxxxxxx| 国产成人精品www牛牛影视| 久久久国产午夜精品| 99re在线精品| 亚洲激情一二三区| 在线电影院国产精品| 九九国产精品视频| 亚洲日本在线视频观看| 91精品国产高清一区二区三区| 久久精品国产精品青草| 国产精品丝袜一区| 99麻豆久久久国产精品免费| 亚洲尤物视频在线| 国产色产综合色产在线视频 | 久久在线观看免费| 欧美视频完全免费看| 免费观看日韩电影| 亚洲综合免费观看高清完整版 | 91在线视频播放| 亚洲国产另类av| 久久精品视频在线看| 欧美体内she精高潮| 国产v综合v亚洲欧| 亚洲一本大道在线| 久久久久9999亚洲精品| 成人午夜视频福利| 日本伊人色综合网| 亚洲欧洲日产国产综合网| 欧美三级资源在线| 成人精品国产免费网站| 男女男精品视频| 亚洲第一综合色| 中文字幕综合网| 国产精品伦理在线| 欧美成人女星排名|