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

📄 scc_hdlc.h

📁 MPC850&nbsp SCC&nbsp HDLC自环通信
💻 H
字号:

#ifndef __SCC_HDLC_H__
#define __SCC_HDLC_H__

#define NUM_RXBDS 3
#define NUM_TXBDS 3
#define BUFFER_SIZE 256
#define STADDR 0x0100

typedef struct Hdlc_Param
 {
	VUINT32	RESERVED;
	VUINT32	c_mask;			/* CRC constant */
	VUINT32	c_pres;				/* CRC preset */
	VUINT16	disfc;				/* discarded frame counter */
	VUINT16	crcec;				/* CRC error counter */
	VUINT16	abtsc;				/* abort sequence counter */
	VUINT16	nmarc;				/* nonmatching address rx cnt */
	VUINT16	retrc;				/* frame retransmission cnt */
	VUINT16	mflr;			        /* maximum frame length reg */
	VUINT16	max_cnt;			/* maximum length counter */
	VUINT16	rfthr;				/* received frames threshold */
	VUINT16	rfcnt;				/* received frames count */
	VUINT16	hmask;				/* user defined frm addr mask */
	VUINT16	haddr1;			/* user defined frm address 1 */
	VUINT16	haddr2;			/* user defined frm address 2 */
	VUINT16	haddr3;			/* user defined frm address 3 */
	VUINT16	haddr4;			/* user defined frm address 4 */
	VUINT16	tmp;				/* temp */
	VUINT16	tmp_mb;			/* temp */
}hdlc_param;

typedef struct BufferDescRings 
{
	SCC_BUF RxBD[NUM_RXBDS];	/* Rx BD ring */
	SCC_BUF TxBD[NUM_TXBDS];	/* Tx BD ring */
}BDRINGS;

typedef struct BuffDesc
{
	SMC_BUF RxBD ;
	SMC_BUF TxBD[NUM_TXBDS];
}BDTRAN;

typedef struct BufferPool
{
	UCHAR  RxBuffer[NUM_RXBDS][BUFFER_SIZE];
	UCHAR  TxBuffer[NUM_RXBDS][BUFFER_SIZE];
}LB;

/* Routine declaration */
void InitSCCBD(void);
void InitSMCBD(void);
void InitTxBuffer(void);
void SCC3HDLC(void);
UINT32 GetIMMR(void);
void SMC1Init(void);

#endif

⌨️ 快捷键说明

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