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

📄 csl_i2caux.h

📁 Configuring External Interrupts on TMS320C672x Devices
💻 H
📖 第 1 页 / 共 3 页
字号:
/** ============================================================================
 *   @n@b CSL_i2cGetAd0
 *
 *   @b Description
 *   @n This function gets the AD0 status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetAd0 (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetAd0 (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_AD0);
}


/** ============================================================================
 *   @n@b CSL_i2cGetAas
 *
 *   @b Description
 *   @n This function gets the AAS status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetAas (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetAas (   
    CSL_I2cHandle        hI2c,   
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_AAS);
}

/** ============================================================================
 *   @n@b CSL_i2cGetRsFull
 *
 *   @b Description
 *   @n This function gets the RS Full status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetRsFull (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetRsFull (    
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_RSFULL);
}

/** ============================================================================
 *   @n@b CSL_i2cGetXsmt
 *
 *   @b Description
 *   @n This function gets the transmit status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetXsmt (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetXsmt (   
    CSL_I2cHandle        hI2c,   
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_XSMT);
}

/** ============================================================================
 *   @n@b CSL_i2cGetAl
 *
 *   @b Description
 *   @n This function gets the AL status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetAl (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetAl (    
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_AL);
}

/** ============================================================================
 *   @n@b CSL_i2cGetSdir
 *
 *   @b Description
 *   @n This function gets the SDIR status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetSdir (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetSdir (    
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_SDIR);
}

/** ============================================================================
 *   @n@b CSL_i2cGetNacksnt
 *
 *   @b Description
 *   @n This function gets the No Ack Sent status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetNacksnt (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetNacksnt (    
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICSTR,I2C_ICSTR_NACKSNT);
}

/** ============================================================================
 *   @n@b CSL_i2cGetRdone
 *
 *   @b Description
 *   @n This function gets the Reset Done status of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetRdone (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetRdone (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICMDR,I2C_ICMDR_IRS);
}

/** ============================================================================
 *   @n@b CSL_i2cGetBitcount
 *
 *   @b Description
 *   @n This function gets the bit count number of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetBitcount (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetBitcount (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICMDR,I2C_ICMDR_BC);
}

/** ============================================================================
 *   @n@b CSL_i2cGetIntcode
 *
 *   @b Description
 *   @n This function gets the interrupt code of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetIntcode (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetIntcode (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICIVR,I2C_ICIVR_INTCODE);
}

/** ============================================================================
 *   @n@b CSL_i2cGetRev
 *
 *   @b Description
 *   @n This function gets the revision of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetRev (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetRev (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICPID1,I2C_ICPID1_REVISION);
}

/** ============================================================================
 *   @n@b CSL_i2cGetClass
 *
 *   @b Description
 *   @n This function gets the class of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetClass (hI2c, &response);

     @endverbatim
 * =============================================================================
 */
static inline
void CSL_i2cGetClass (   
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICPID1,I2C_ICPID1_CLASS);
}

/** ============================================================================
 *   @n@b CSL_i2cGetType
 *
 *   @b Description
 *   @n This function gets the type of the I2C module.
 *
 *   @b Arguments
 *   @verbatim

            hI2c            Handle to I2C instance

            response        Placeholder to return status.

     @endverbatim
 *
 *   <b> Return Value </b>  None
 *
 *   <b> Pre Condition </b>
 *   @n  None
 *
 *   <b> Post Condition </b>
 *    @n None
 *
 *   @b Modifies
 *   @n  None
 *
 *   @b Example
 *   @verbatim

        CSL_i2cGetType (hI2c, &response);

     @endverbatim
 * ===========================================================================
 */
static inline
void CSL_i2cGetType (    
    CSL_I2cHandle        hI2c,    
    void                 *response
)
{
    *(Uint16 *)response = CSL_FEXT(hI2c->regs->ICPID2,I2C_ICPID2_TYPE);
}



#ifdef __cplusplus
}
#endif

#endif /* CSL_I2CAUX_H_ */

⌨️ 快捷键说明

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