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

📄 sport.h

📁 seed的滤波器设计程序
💻 H
字号:
/*********************************************************************/
/* sport.h v0.00                                                     */
/* Copyright (c) 2000 Texas Instruments Incorporated                 */
/*********************************************************************/
/*********************************************************************/
/* STANDARD SERIAL PORT, BUFFERED SERIAL PORT, AND HOST PORT         */
/* INTERFACE FUNCTIONS, MACROS, AND DATA STRUCTURES                  */
/*                                                                   */
/* The MACROS defined here are dependent on the symbol definitions   */
/* contained in mmregs.h.                                            */
/*********************************************************************/

/*********************************************************************/
/* INCLUDE MEMORY-MAPPED REGISTER DEFINITIONS                        */
/*********************************************************************/
#include "regs.h"

/**********************************************************************/
/* SP_MASK(txm, mcm, fsm, fo, dlb) - generates a mask for             */
/*         setting serial port control register.                      */
/*           txm       -   transmit mode (ext or int frame sync)      */
/*           mcm       -   clock mode (ext or int clock source)       */
/*           fsm       -   frame sync mode (continuous or burst)      */
/*           fo        -   format (data sz 0 = 16 bit or 1 = 8 bits)  */
/*           dlb       -   digital loop back mode (disable/enable)    */
/**********************************************************************/
#define SP_MASK(txm, mcm, fsm, fo, dlb)\
	((txm  ? (MASK_BIT(TXM)  | WORD_SIZE):~MASK_BIT(TXM)) &\
 	 (mcm  ? (MASK_BIT(MCM)  | WORD_SIZE):~MASK_BIT(MCM))&\
         (fsm  ? (MASK_BIT(FSM)  | WORD_SIZE):~MASK_BIT(FSM)) &\
         (fo   ? (MASK_BIT(FO)   | WORD_SIZE):~MASK_BIT(FO)) &\
         (dlb  ? (MASK_BIT(DLB)  | WORD_SIZE):~MASK_BIT(DLB))

/**********************************************************************/
/* SP_RESET(port) - RESETS SERIAL PORT                                */
/*  port   - serail port number (selects which serial port)           */
/**********************************************************************/
#define SP_RESET(port)\
      *(unsigned int *)SP_ADDR(port) &= 0x0000

/**********************************************************************/
/* SP_TX_ENABLE(port) - ENABLES SERIAL PORT TRANSMIT                  */
/*  port  - serial port number (selects which serial port)            */
/**********************************************************************/
#define SP_TX_ENABLE(port)\
      *(unsigned int *)SP_ADDR(port) |= MASK_BIT(XRST)

/**********************************************************************/
/* SP_TX_RESET(port) - RESETS SERIAL PORT TRANSMIT                    */
/*  port  - serial port number (selects which serial port)            */
/**********************************************************************/
#define SP_TX_RESET(port)\
      *(unsigned int *)SP_ADDR(port) &= ~MASK_BIT(XRST)

/**********************************************************************/
/* SP_RX_ENABLE(port) - ENABLES SERIAL PORT RECEIVE                   */
/*  port  - serial port number (selects which serial port)            */
/**********************************************************************/
#define SP_RX_ENABLE(port)\
      *(unsigned int *)SP_ADDR(port) |= MASK_BIT(RRST)

/**********************************************************************/
/* SP_RX_RESET(port) - RESETS SERIAL PORT RECEIVE                     */
/*  port  - serial port number (selects which serial port)            */
/**********************************************************************/
#define SP_RX_RESET(port)\
      *(unsigned int *)SP_ADDR(port) &= ~MASK_BIT(RRST)

/**********************************************************************/
/* SP_START(port,start) - starts serial port receive/xmit for given   */
/*   serial port                                                      */
/* port - serial port number (selects which port)                     */
/* start - 1/2/3: starts rx/tx/both                                   */
/**********************************************************************/
#define SP_START(port, start)\
	LOAD_FIELD(SP_ADDR(port), start, RRST, 2)

/**********************************************************************/
/* SP_INIT(port, ctrl, start)                                         */
/*  port - serial port number (selects which serial port)             */
/*  ctrl - mask to set serial port control register                   */
/*  start - 1/2/3: start rx/tx/both                                   */
/**********************************************************************/
#define SP_INIT( port, ctrl)\
   { *(unsigned int *)SP_ADDR(port) &= 0x0000; \
     *(unsigned int *)SP_ADDR(port) |= (~(MASK_BIT(RRST) | MASK_BIT(XRST)))\
                                        & ctrl;   \
     *(unsigned int *)SP_ADDR(port) |= ctrl;}

/**********************************************************************/
/* SP_READ(port, size)   - reads data from serial port                */
/*  port  - serial port number (selects which port)                   */
/*  size  - data size of item to be read in bits                      */
/**********************************************************************/
#define SP_READ(port, size)\
      ((*(unsigned int *)DRR_ADDR(port)) & (~(WORD_SIZE << size))) 

/**********************************************************************/
/* SP_WRITE(port,value,size)  -  writes data to serial port transmit  */
/*  port  - serial port #                                             */
/*  value - data to be written out to serial port                     */
/*  size  - data size in bits                                         */
/**********************************************************************/
#define SP_WRITE(port, value, size)\
        *(unsigned int *)DXR_ADDR(port) = value & (~(WORD_SIZE << size))

⌨️ 快捷键说明

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