📄 csl_mcbsp.h
字号:
*
* Use this symbol to set frame sync polarity as active-high or active-low
* @{ */
typedef enum {
/** frame sync polarity is active-high */
CSL_MCBSP_FSPOL_ACTIVE_HIGH = 0,
/** frame sync polarity is active-low */
CSL_MCBSP_FSPOL_ACTIVE_LOW = 1
} CSL_McbspFsPol;
/**
@} */
/**
* @defgroup CSL_MCBSP_CLKPOLAR_ENUM Clock polarity
* @ingroup CSL_MCBSP_ENUM
*
* @brief Clock polarity
*
* Use this symbol to set XMT or RCV clock polarity as rising or falling edge
* @{ */
typedef enum {
/** XMT clock polarity is rising edge */
CSL_MCBSP_CLKPOL_TX_RISING_EDGE = 0,
/** RCV clock polarity is falling edge */
CSL_MCBSP_CLKPOL_RX_FALLING_EDGE = 0,
/** SRG clock polarity is rising edge */
CSL_MCBSP_CLKPOL_SRG_RISING_EDGE = 0,
/** XMT clock polarity is falling edge */
CSL_MCBSP_CLKPOL_TX_FALLING_EDGE = 1,
/** RCV clock polarity is rising edge */
CSL_MCBSP_CLKPOL_RX_RISING_EDGE = 1,
/** SRG clock polarity Is falling edge */
CSL_MCBSP_CLKPOL_SRG_FALLING_EDGE = 1
} CSL_McbspClkPol;
/**
@} */
/**
* @defgroup CSL_MCBSP_SRGCLK_ENUM SRG clock source
* @ingroup CSL_MCBSP_ENUM
*
* @brief SRG clock source
*
* Use this symbol to select input clock source for Sample Rate Generator
* @{ */
typedef enum {
/** input clock source for Sample Rate Generator is CLKS pin */
CSL_MCBSP_SRGCLK_CLKS = 0,
/** input clock source for Sample Rate Generator is CPU */
CSL_MCBSP_SRGCLK_CLKCPU = 1,
/** input clock source for Sample Rate Generator is BCLKR pin */
CSL_MCBSP_SRGCLK_CLKR = 2,
/** input clock source for Sample Rate Generator is BCLKX pin */
CSL_MCBSP_SRGCLK_CLKX = 3
} CSL_McbspSrgClk;
/**
@} */
/**
* @defgroup CSL_MCBSP_TXFSMODE_ENUM XMT Frame Sync generation mode
* @ingroup CSL_MCBSP_ENUM
*
* @brief XMT Frame Sync generation mode
*
* Use this symbol to set XMT Frame Sync generation mode
* @{ */
typedef enum {
/** Disables the frame sync generation mode */
CSL_MCBSP_TXFSMODE_DXRCOPY = 0,
/** Enables the frame sync generation mode */
CSL_MCBSP_TXFSMODE_SRG = 1
} CSL_McbspTxFsMode;
/**
@} */
/**
* @defgroup CSL_MCBSP_IOMODE_ENUM XMT and RCV IO Mode
* @ingroup CSL_MCBSP_ENUM
*
* @brief XMT and RCV IO Mode
*
* Use this symbol to Enable/Disable IO Mode for XMT and RCV
* @{ */
typedef enum {
/** Disable the both XMT and RCV IO mode */
CSL_MCBSP_IOMODE_TXDIS_RXDIS = 0,
/** Disable XMT and enable RCV IO mode */
CSL_MCBSP_IOMODE_TXDIS_RXEN = 1,
/** Enable XMT and Disble RCV IO mode */
CSL_MCBSP_IOMODE_TXEN_RXDIS = 2,
/** Enable XMT and enable RCV IO mode */
CSL_MCBSP_IOMODE_TXEN_RXEN = 3
} CSL_McbspIOMode;
/**
@} */
/**
* @defgroup CSL_MCBSP_CLKSTP_ENUM Clock Stop Mode
* @ingroup CSL_MCBSP_ENUM
*
* @brief Clock Stop Mode
*
* Use this symbol to Enable/Disable Clock Stop Mode
* @{ */
typedef enum {
/** Disable the clock stop mode */
CSL_MCBSP_CLKSTP_DISABLE = 1,
/** Emable the clock stop mode with out delay */
CSL_MCBSP_CLKSTP_WITHOUT_DELAY = 2,
/** Emable the clock stop mode with delay */
CSL_MCBSP_CLKSTP_WITH_DELAY = 3
} CSL_McbspClkStp;
/**
@} */
/**
* @defgroup CSL_MCBSP_PARTMODE_ENUM Multichannel mode Partition type
* @ingroup CSL_MCBSP_ENUM
*
* @brief Multichannel mode Partition type
*
* Use this symbol to select the partition type in multichannel mode
* @{ */
typedef enum {
/** two partition mode */
CSL_MCBSP_PARTMODE_2PARTITION = 0,
/** Eight partition multichannel mode */
CSL_MCBSP_PARTMODE_8PARTITION = 1
} CSL_McbspPartMode;
/**
@} */
/**
* @defgroup CSL_MCBSP_PABLK_ENUM Multichannel mode PartitionA block
* @ingroup CSL_MCBSP_ENUM
*
* @brief Multichannel mode PartitionA block
*
* Use this symbol to assign Blocks to Partition-A in multichannel mode
* @{ */
typedef enum {
/** Block 0 for partition A */
CSL_MCBSP_PABLK_0 = 0,
/** Block 2 for partition A */
CSL_MCBSP_PABLK_2 = 1,
/** Block 4 for partition A */
CSL_MCBSP_PABLK_4 = 2,
/** Block 6 for partition A */
CSL_MCBSP_PABLK_6 = 3
} CSL_McbspPABlk;
/**
@} */
/**
* @defgroup CSL_MCBSP_PBBLK_ENUM Multichannel mode PartitionB block
* @ingroup CSL_MCBSP_ENUM
*
* @brief Multichannel mode PartitionB block
*
* Use this symbol to assign Blocks to Partition-B in multichannel mode
* @{ */
typedef enum {
/** Block 1 for partition B */
CSL_MCBSP_PBBLK_1 = 0,
/** Block 3 for partition B */
CSL_MCBSP_PBBLK_3 = 1,
/** Block 5 for partition B */
CSL_MCBSP_PBBLK_5 = 2,
/** Block 7 for partition B */
CSL_MCBSP_PBBLK_7 = 3
} CSL_McbspPBBlk;
/**
@} */
/**
* @defgroup CSL_MCBSP_EMU_ENUM Emulation mode setting
* @ingroup CSL_MCBSP_ENUM
*
* @brief Emulation mode setting
*
* Use this symbol to set the Emulation Mode
* @{ */
typedef enum {
/** Emulation mode stop */
CSL_MCBSP_EMU_STOP = 0,
/** Emulation mode TX stop */
CSL_MCBSP_EMU_TX_STOP = 1,
/** Emulation free run mode */
CSL_MCBSP_EMU_FREERUN = 2
} CSL_McbspEmu;
/**
@} */
/**
* @defgroup CSL_MCBSP_PARTITION_ENUM Multichannel mode Partition select
* @ingroup CSL_MCBSP_ENUM
*
* @brief Multichannel mode Partition select
*
* Use this symbol in multichannel mode to select the Partition
* for assigning a block to
* @{ */
typedef enum {
/** TX partition for A */
CSL_MCBSP_PARTITION_ATX = 0,
/** RX partition for A */
CSL_MCBSP_PARTITION_ARX = 1,
/** TX partition for B */
CSL_MCBSP_PARTITION_BTX = 2,
/** RX partition for B */
CSL_MCBSP_PARTITION_BRX = 3
} CSL_McbspPartition;
/**
@} */
/**
* @defgroup CSL_MCBSP_BLOCK_ENUM Multichannel mode Block select
* @ingroup CSL_MCBSP_ENUM
*
* @brief Multichannel mode Block select
*
* Use this symbol in multichannel mode to select block on which the
* operation is to be performed
* @{ */
typedef enum {
/** Block 0 for multichannel mode */
CSL_MCBSP_BLOCK_0 = 0,
/** Block 1 for multichannel mode */
CSL_MCBSP_BLOCK_1 = 1,
/** Block 2 for multichannel mode */
CSL_MCBSP_BLOCK_2 = 2,
/** Block 3 for multichannel mode */
CSL_MCBSP_BLOCK_3 = 3,
/** Block 4 for multichannel mode */
CSL_MCBSP_BLOCK_4 = 4,
/** Block 5 for multichannel mode */
CSL_MCBSP_BLOCK_5 = 5,
/** Block 6 for multichannel mode */
CSL_MCBSP_BLOCK_6 = 6,
/** Block 7 for multichannel mode */
CSL_MCBSP_BLOCK_7 = 7
} CSL_McbspBlock;
/**
@} */
/**
* @defgroup CSL_MCBSP_CHAN_ENUM Channel control in multichannel mode
* @ingroup CSL_MCBSP_ENUM
*
* @brief Channel control in multichannel mode
*
* Use this symbol to enable/disable a channel in multichannel mode.
* This is a member of @a CSL_McbspChanControl structure, which is input to
* @a CSL_mcbspHwControl() function for @a CSL_MCBSP_CMD_CHANNEL_CONTROL command
* @{ */
typedef enum {
/** TX enable for multichannel mode */
CSL_MCBSP_CHCTRL_TX_ENABLE = 0,
/** TX disable for multichannel mode */
CSL_MCBSP_CHCTRL_TX_DISABLE = 1,
/** RX enable for multichannel mode */
CSL_MCBSP_CHCTRL_RX_ENABLE = 2,
/** RX disable for multichannel mode */
CSL_MCBSP_CHCTRL_RX_DISABLE = 3
} CSL_McbspChCtrl;
/**
@} */
/**
* @defgroup CSL_MCBSP_CHANTYPE_ENUM Channel type: TX, RX or both
* @ingroup CSL_MCBSP_ENUM
*
* @brief Channel type: TX, RX ot both
*
* Use this symbol to select the channel type for @a CSL_mcbspHwControl()
* @a CSL_MCBSP_CMD_CLEAR_FRAME_SYNC command
* @{ */
typedef enum {
/** Channel type is RX */
CSL_MCBSP_CHTYPE_RX = 1,
/** Channel type is TX */
CSL_MCBSP_CHTYPE_TX = 2,
/** Channel type is TXRX */
CSL_MCBSP_CHTYPE_TXRX = 4
} CSL_McbspChType;
/**
@} */
/**
* @defgroup CSL_MCBSP_DLBMODE_ENUM Digital Loopback mode selection
* @ingroup CSL_MCBSP_ENUM
*
* @brief Digital Loopback mode selection
*
* Use this symbol to enable/disable digital loopback mode
* @{ */
typedef enum {
/** disable digital loopback mode */
CSL_MCBSP_DLBMODE_OFF = 0,
/** enable digital loopback mode */
CSL_MCBSP_DLBMODE_ON = 1
} CSL_McbspDlbMode;
/**
@} */
/**
* @defgroup CSL_MCBSP_PHASE_ENUM Phase count selection
* @ingroup CSL_MCBSP_ENUM
*
* @brief Phase count selection
*
* Use this symbol to select number of phases per frame
* @{ */
typedef enum {
/** Single phase for frame */
CSL_MCBSP_PHASE_SINGLE = 0,
/** Dual phase for frame */
CSL_MCBSP_PHASE_DUAL = 1
} CSL_McbspPhase;
/**
@} */
/**
* @defgroup CSL_MCBSP_FRMSYNC_ENUM Frame sync ignore status
* @ingroup CSL_MCBSP_ENUM
*
* @brief Frame sync ignore status
*
* Use this symbol to detect or ignore frame synchronisation
* @{ */
typedef enum {
/** detect frame synchronisation */
CSL_MCBSP_FRMSYNC_DETECT = 0,
/** ignore frame synchronisation */
CSL_MCBSP_FRMSYNC_IGNORE = 1
} CSL_McbspFrmSync;
/**
@} */
/**
* @defgroup CSL_MCBSP_RJUSTDXENA_ENUM RJUST or DXENA settings
* @ingroup CSL_MCBSP_ENUM
*
* @brief RJUST or DXENA settings
*
* Use this symbol for setting up RCV sign-extension and justification mode
* or enabling/disabling XMT DX pin delay
* @{ */
typedef enum {
/** RCV setting - right justify, fill MSBs with zeros */
CSL_MCBSP_RJUSTDXENA_RJUST_RZF = 0,
/** XMT setting - Delay at DX pin disabled */
CSL_MCBSP_RJUSTDXENA_DXENA_OFF = 0,
/** RCV setting - right justify, sign-extend the data into MSBs */
CSL_MCBSP_RJUSTDXENA_RJUST_RSE = 1,
/** XMT setting - Delay at DX pin enabled */
CSL_MCBSP_RJUSTDXENA_DXENA_ON = 1,
/** RCV setting - left justify, fill LSBs with zeros */
CSL_MCBSP_RJUSTDXENA_RJUST_LZF = 2
} CSL_McbspRjustDxena;
/**
@} */
/**
* @defgroup CSL_MCBSP_CLKGSYNCMODE_ENUM CLKG sync mode selection
* @ingroup CSL_MCBSP_ENUM
*
* @brief CLKG sync mode selection
*
* Use this symbol to enable/disable CLKG synchronisation when
* input CLK source for SRGR is external
* @{ */
typedef enum {
/** disable CLKG synchronisation */
CSL_MCBSP_CLKGSYNCMODE_OFF = 0,
/** enable CLKG synchronisation */
CSL_MCBSP_CLKGSYNCMODE_ON = 1
} CSL_McbspClkgSyncMode;
/**
@} */
/**
* @defgroup CSL_MCBSP_RSTSTAT_ENUM Tx/Rx reset status
* @ingroup CSL_MCBSP_ENUM
*
* @brief Tx/Rx reset status
*
* Use this symbol to compare the output of @a CSL_mcbspGetHwStatus() for
* @a CSL_MCBSP_QUERY_TX_RST_STAT and @a CSL_MCBSP_QUERY_RX_RST_STAT queries
*
* @{ */
typedef enum {
/** disable the XRST bit */
CSL_MCBSP_RSTSTAT_TX_IN_RESET = 0,
/** disable the RRST bit */
CSL_MCBSP_RSTSTAT_RX_IN_RESET = 0,
/** enable the XRST bit */
CSL_MCBSP_RSTSTAT_TX_OUTOF_RESET = 1,
/** enaable the RRST bit */
CSL_MCBSP_RSTSTAT_RX_OUTOF_RESET = 1
} CSL_McbspRstStat;
/**
@} */
/**
* @defgroup CSL_MCBSP_BITREVERS_ENUM 32-bit Reversal
* @ingroup CSL_MCBSP_ENUM
*
* @brief McBSP512 32-bit reversal feature
*
*
* @{ */
typedef enum {
CSL_MCBSP_32BIT_REVERS_DISABLE = 0,/**< 32-bit reversal disabled */
CSL_MCBSP_32BIT_REVERS_ENABLE = 1 /**< 32-bit reversal enabled. 32-bit
data is received LSB first. Word length should be set for
32-bit operation; else operation undefined */
} CSL_McbspBitReversal;
/**
@} */
/**
* @defgroup CSL_MCBSP_DXSTATE_ENUM DX Pin State
* @ingroup CSL_MCBSP_ENUM
*
* @brief Transmit pin mode configuration
*
*
* @{ */
typedef enum {
/**< High Z */
CSL_MCBSP_DX_HIGHZ = 0,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -