📄 csl_mcbspiowrite.c
字号:
/** \file csl_mcbspIoWrite.c
*
* \brief File for functional layer of CSL API \a CSL_mcbspIoWrite()
*
* Description
* - The \a CSL_mcbspIoWrite() function contains definition of the
* functional layer API
*
* Path: \\(CSLPATH)\\ipmodules\\mcbsp\\src
*
*/
#include <csl_mcbsp.h>
#pragma CODE_SECTION (CSL_mcbspIoWrite, ".text:csl_section:mcbsp");
/**
* Sends the data using MCBSP pin which is configured as general purpose output.
* The 16-bit data trasnmitted is specified by 'outputData' argument. MCBSP pin
* to use in this write operation is identified by the second arguement.
*
* <b> Usage Constraints: </b>
* Both @a CSL_mcbspInit() and @a CSL_mcbspOpen() must be called successfully
* in that order before @a CSL_mcbspIoWrite() can be called.
*
* @b Example:
* @verbatim
Uint16 outData;
CSL_Status status;
CSL_McbspHandle hMcbsp;
...
// MCBSP object defined and HwSetup structure defined and initialized
...
// Init, Open, HwSetup successfully done in that order
...
outData = 1;
inData = CSL_mcbspIoWrite(hMcbsp, CSL_MCBSP_IO_CLKX, outData);
@endverbatim
*
* @return void
*/
void CSL_mcbspIoWrite(
/** MCBSP handle returned by successful 'open' */
CSL_McbspHandle hMcbsp,
/** MCBSP pin to be used as general purpose output */
CSL_BitMask16 outputSel,
/** 1 bit output data to be transmitted */
Uint16 outputData
)
{
Uint16 bit_val, _pcrval;
_pcrval = hMcbsp->regs->PCR;
if(outputSel & CSL_MCBSP_IO_CLKX)
{
bit_val = !(!(outputData & CSL_MCBSP_IO_CLKX));
CSL_FINS( _pcrval, MCBSP_PCR_CLKXP,bit_val );
}
if(outputSel & CSL_MCBSP_IO_FSX)
{
bit_val = !(!(outputData & CSL_MCBSP_IO_FSX));
CSL_FINS( _pcrval, MCBSP_PCR_FSXP, bit_val );
}
if(outputSel & CSL_MCBSP_IO_DX)
{
bit_val = !(!(outputData & CSL_MCBSP_IO_DX));
CSL_FINS( _pcrval, MCBSP_PCR_DXSTAT, bit_val );
}
if(outputSel & CSL_MCBSP_IO_CLKR)
{
bit_val = !(!(outputData & CSL_MCBSP_IO_CLKR));
CSL_FINS( _pcrval, MCBSP_PCR_CLKRP, bit_val );
}
if(outputSel & CSL_MCBSP_IO_FSR)
{
bit_val = !(!(outputData & CSL_MCBSP_IO_FSR ));
CSL_FINS( _pcrval, MCBSP_PCR_FSRP, bit_val );
}
hMcbsp->regs->PCR = _pcrval;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -