亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csl_i2c.h

?? 基于ti tms320c672x下音頻開發例子程式
?? H
?? 第 1 頁 / 共 3 頁
字號:
/** @mainpage I2C CSL 3.x
 *
 * @section Introduction
 *
 * @subsection xxx Purpose and Scope
 * The purpose of this document is to identify a set of common CSL APIs for
 * the I2C module across various devices. The CSL developer is expected to
 * refer to this document while designing APIs for these modules. Some of the
 * listed APIs may not be applicable to a given I2C module. While other cases
 * this list of APIs may not be sufficient to cover all the features of a
 * particular I2C Module. The CSL developer should use his discretion designing
 * new APIs or extending the existing ones to cover these.
 *
 * @subsection aaa Terms and Abbreviations
 *   -# CSL:  Chip Support Library
 *   -# API:  Application Programmer Interface
 *
 * @subsection References
 *    -# CSL-001-DES, CSL 3.x Design Specification DocumentVersion 1.02
 *
 */

/** @file csl_i2c.h
 *
 * @brief    Header file for functional layer of CSL
 *
 * Description
 *    - The different enumerations, structure definitions
 *      and function declarations
 *
 * Modification 
 *    - modified on: 14/1/2005
 *    - reason: Created the sources
 *
 * 
 * @author RMathew.
 *
 */



#ifndef _CSL_I2C_H_
#define _CSL_I2C_H_

#ifdef __cplusplus
extern "C" {
#endif

#include <cslr.h>
#include <csl_error.h>
/* #include <csl_sysData.h> */
#include <soc.h>
#include <csl_types.h>
#include <cslr_i2c.h>

/**************************************************************************\
* I2C global macro declarations
\**************************************************************************/


/**
 * @brief   Invalid handle
 */

#define CSL_I2C_BADHANDLE        (0)


/** Constants for passing parameters to the I2C Hardware Setup function
 */
/** For setting the SLAVE Mode for I2C           */
#define CSL_I2C_MODE_SLAVE                            (0)
/** For setting the MASTER Mode for I2C          */
#define CSL_I2C_MODE_MASTER                           (1)
/** For setting the RECEIVER Mode for I2C        */
#define CSL_I2C_DIR_RECEIVE                           (0)
/** For setting the TRANSMITTER Mode for I2C     */
#define CSL_I2C_DIR_TRANSMIT                          (1)
/** For setting the 7-bit Addressing Mode for I2C*/
#define CSL_I2C_ADDRSZ_SEVEN                          (0)
/** For setting the 10-bit Addressing Mode       */
#define CSL_I2C_ADDRSZ_TEN                            (1)
/** For Disabling the Start Byte Mode for I2C(Normal Mode) */
#define CSL_I2C_STB_DISABLE                           (0)
/** For Enabling the Start Byte Mode for I2C     */
#define CSL_I2C_STB_ENABLE                            (1)
/** For enabling the tx of a ACK to the TX-ER, while in the RECEIVER mode */
#define CSL_I2C_ACK_ENABLE                            (0)
/** For enabling the tx of a NACK to the TX-ER, while in the RECEIVER mode */
#define CSL_I2C_ACK_DISABLE                           (1)
/** For enabling the free run mode of the I2C */
#define CSL_I2C_FREE_MODE_ENABLE                      (1)
/** For disabling the free run mode of the I2C */
#define CSL_I2C_FREE_MODE_DISABLE                     (0)
/** For enabling the Repeat Mode of the I2C */
#define CSL_I2C_REPEAT_MODE_ENABLE                    (1)
/** For disabling the Repeat Mode of the I2C */
#define CSL_I2C_REPEAT_MODE_DISABLE                   (0)
/** For enabling DLB mode of I2C (applicable only in case of MASTER TX-ER) */
#define CSL_I2C_DLB_ENABLE                            (1)
/** For disabling DLB mode of I2C (applicable only in case of MASTER TX-ER) */
#define CSL_I2C_DLB_DISABLE                           (0)
/** For putting the I2C in Reset */
#define CSL_I2C_IRS_ENABLE                            (0)
/** For taking the I2C out of Reset */
#define CSL_I2C_IRS_DISABLE                           (1)
/** For enabling the Free Data Format of I2C */
#define CSL_I2C_FDF_ENABLE                            (1)
/** For disabling the Free Data Format of I2C */
#define CSL_I2C_FDF_DISABLE                           (0)
/** For enabling the Backward Compatibility mode of I2C */
#define CSL_I2C_BCM_ENABLE                            (1)
/** For disabling the Backward Compatibility mode of I2C */
#define CSL_I2C_BCM_DISABLE                           (0)

/** Constants for passing parameters to the I2C Status Query function
*/
/** For indicating the non-completion of Reset    */
#define CSL_I2C_RESET_NOT_DONE                        (0)
/** For indicating the completion of Reset    */
#define CSL_I2C_RESET_DONE                            (1)
/** For indicating that the bus is not busy    */
#define CSL_I2C_BUS_NOT_BUSY                          (0)
/** For indicating that the bus is busy    */
#define CSL_I2C_BUS_BUSY                              (1)
/** For indicating that the Receive ready signal is low    */
#define CSL_I2C_RX_NOT_READY                          (0)
/** For indicating that the Receive ready signal is high    */
#define CSL_I2C_RX_READY                              (1)
/** For indicating that the Transmit ready signal is low    */
#define CSL_I2C_TX_NOT_READY                          (0)
/** For indicating that the Transmit ready signal is high    */
#define CSL_I2C_TX_READY                              (1)
/** For indicating that the Access ready signal is low    */
#define CSL_I2C_ACS_NOT_READY                         (0)
/** For indicating that the Access ready signal is high    */
#define CSL_I2C_ACS_READY                             (1)
/** For indicating Single Byte Data signal is set */
#define CSL_I2C_SINGLE_BYTE_DATA                      (1)
/** For indicating Receive overflow signal is set */
#define CSL_I2C_RECEIVE_OVERFLOW                      (1)
/** For indicating Transmit underflow signal is set */
#define CSL_I2C_TRANSMIT_UNDERFLOW                    (1)
/** For indicating Arbitration Lost signal is set */
#define CSL_I2C_ARBITRATION_LOST                      (1)

/** Constants for status bit clear
 */
/** Clear the Arbitration Lost status bit        */
#define CSL_I2C_CLEAR_AL 0x1
/** Clear the No acknowledge status bit          */
#define CSL_I2C_CLEAR_NACK 0x2
/** Clear the Register access ready status bit   */
#define CSL_I2C_CLEAR_ARDY 0x4
/** Clear the Receive ready status bit           */
#define CSL_I2C_CLEAR_RRDY 0x8
/** Clear the Transmit ready status bit          */
#define CSL_I2C_CLEAR_XRDY 0x10
/** Clear the Stop Condition Detect  status bit  */
#define CSL_I2C_CLEAR_SCD 0x20

/**************************************************************************\
* I2C global typedef declarations
\**************************************************************************/

/** @brief This object contains the reference to the instance of I2C opened
 *  using the @a CSL_i2cOpen().
 *
 *  The pointer to this, is passed to all I2C CSL APIs.
 */
typedef struct CSL_I2cObj {
    CSL_I2cRegsOvly regs;
    /** This is the instance of I2C being referred to by this object  */
    CSL_InstNum perNum;
}CSL_I2cObj;

/** @brief This will have the base-address information for the peripheral
 *  instance
 */
typedef struct {
    /** Base-address of the Configuration registers of I2C.
     */
    CSL_I2cRegsOvly regs;
} CSL_I2cBaseAddress;

/** @brief I2C specific parameters. Present implementation doesn't have
 *  any specific parameters.
 */
typedef struct {
    /** Bit mask to be used for module specific parameters.
     *  The below declaration is just a place-holder for future
     *  implementation.
     */
    CSL_BitMask16   flags;
} CSL_I2cParam;

/** @brief I2C specific context information. Present implementation doesn't
 *  have any Context information.
 */

typedef struct {
    /** Context information of I2C.
     *  The below declaration is just a place-holder for future
     *  implementation.
     */
    Uint16  contextInfo;
} CSL_I2cContext;

typedef struct  {
    /** Config structure of I2C. This is used to configure I2C
     * using CSL_HwSetupRaw function
     */
    volatile Uint16 ICOAR;
    volatile Uint16 ICIMR;
    volatile Uint16 ICSTR;
    volatile Uint16 ICCLKL;
    volatile Uint16 ICCLKH;
    volatile Uint16 ICCNT;
    volatile Uint16 ICSAR;
    volatile Uint16 ICDXR;
    volatile Uint16 ICMDR;
    volatile Uint16 ICIVR;
    volatile Uint16 ICEMDR;
    volatile Uint16 ICPSC;
    volatile Uint32 ICPFUNC;
    volatile Uint32 ICPDIR;
    volatile Uint32 ICPDOUT;
    volatile Uint32 ICPDSET;
    volatile Uint32 ICPDCLR;
} CSL_I2cConfig;

/** Default Values for Config structure */
#define CSL_I2C_CONFIG_DEFAULTS {   \
        CSL_I2C_ICOAR_RESETVAL,     \
        CSL_I2C_ICIMR_RESETVAL,     \
        CSL_I2C_ICSTR_RESETVAL,     \
        CSL_I2C_ICCLKL_RESETVAL,    \
        CSL_I2C_ICCLKH_RESETVAL,    \
        CSL_I2C_ICCNT_RESETVAL,     \
        CSL_I2C_ICSAR_RESETVAL,     \
        CSL_I2C_ICDXR_RESETVAL,     \
        CSL_I2C_ICMDR_RESETVAL,     \
        CSL_I2C_ICIVR_RESETVAL,     \
        CSL_I2C_ICEMDR_RESETVAL,    \
        CSL_I2C_ICPSC_RESETVAL,     \
        CSL_I2C_ICPFUNC_RESETVAL,   \
        CSL_I2C_ICPDIR_RESETVAL,    \
        CSL_I2C_ICPDOUT_RESETVAL,   \
        CSL_I2C_ICPDSET_RESETVAL,   \
        CSL_I2C_ICPDCLR_RESETVAL    \
}

typedef struct CSL_I2cObj *CSL_I2cHandle;

/** @brief This has all the fields required to configure the
 *  I2C clock
 */
typedef struct CSL_I2cClkSetup_{
    /** Prescalar to the input clock     */
    Uint16 prescalar;
    /** Low time period of the clock     */
    Uint16 clklowdiv;
    /** High time period of the clock    */
    Uint16 clkhighdiv;
}CSL_I2cClkSetup;


/** @brief This has all the fields required to configure I2C at Power Up
 *  (After a Hardware Reset) or a Soft Reset
 *
 *  This structure is used to setup or obtain existing setup of
 *  I2C using @a CSL_i2cHwSetup() & @a CSL_i2cGetHwSetup() functions
 *  respectively.
 */
typedef struct CSL_I2cHwSetup_ {
        /** Master or Slave Mode : 1==> Master Mode, 0==> Slave Mode  */
        Uint16 mode;
        /** Transmitter Mode or Receiver Mode: 1==> Transmitter Mode,
         *  0 ==> Receiver Mode
         */
        Uint16 dir;
        /** Addressing Mode :0==> 7-bit Mode, 1==> 10-bit Mode       */
        Uint16 addrMode;
        /** Start Byte Mode : 1 ==> Start Byte Mode, 0 ==> Normal Mode */
        Uint16 sttbyteen;
        /** Address of the own device    */
        Uint16 ownaddr;
        /** ACK mode while receiver: 0==> ACK Mode, 1==> NACK Mode */
        Uint16 ackMode;
        /** Run mode of I2C: 0==> No Free Run, 1==> Free Run mode */
        Uint16 runMode;
        /** Repeat Mode of I2C: 0==> No repeat mode 1==> Repeat mode */
        Uint16 repeatMode;
        /** DLBack mode of I2C (master tx-er only):
         *                  0==> No loopback,
         *                  1==> Loopback Mode
         */
        Uint16 loopBackMode;
        /** Free Data Format of I2C:
         *                  0==>Free data format disable,
         *                  1==> Free data format enable
         */
        Uint16 freeDataFormat;
        /** I2C Reset Mode: 0==> Reset, 1==> Out of reset */
        Uint16 resetMode;
        /** I2C Backward Compatibility Mode :
         *                  0==> Not compatible,
         *                  1==> Compatible
         */
        Uint16 bcm;
        /** Interrupt Enable mask The mask can be for one interrupt or
         *  OR of multiple interrupts.
         */
        Uint16 inten;
        /** Prescalar, Clock Low Time and Clock High Time for Clock Setup  */
        CSL_I2cClkSetup *clksetup;
}CSL_I2cHwSetup;


/** @brief Enumeration for queries passed to @a CSL_i2cGetHwStatus()
 *
 * This is used to get the status of different operations or to get the
 * existing setup of I2C.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区二区三区四区五区| 欧美丰满高潮xxxx喷水动漫| 亚洲mv大片欧洲mv大片精品| 久久精品亚洲精品国产欧美| 欧美性三三影院| 国产乱色国产精品免费视频| 一区二区三区欧美视频| 国产欧美日本一区视频| 日韩欧美亚洲国产另类| 一本大道久久精品懂色aⅴ| 国产真实乱对白精彩久久| 性做久久久久久免费观看| 国产精品国产自产拍在线| 欧美大黄免费观看| 欧美日韩在线观看一区二区| 成av人片一区二区| 蜜桃一区二区三区在线观看| 亚洲一区二区中文在线| 亚洲视频一区二区免费在线观看| 2020国产精品自拍| 717成人午夜免费福利电影| 91成人在线精品| 99久久免费视频.com| 国产a精品视频| 久久99精品久久久久久| 人人超碰91尤物精品国产| 亚洲一卡二卡三卡四卡| 亚洲欧美在线视频观看| 欧美高清在线一区二区| 久久一日本道色综合| 日韩三级电影网址| 日韩一级高清毛片| 日韩欧美一级在线播放| 91精品国产91久久综合桃花| 欧洲人成人精品| 色先锋aa成人| 在线观看一区不卡| 欧美在线三级电影| 欧美日韩另类国产亚洲欧美一级| 在线观看免费一区| 欧洲亚洲精品在线| 欧美日韩高清一区二区三区| 欧美午夜在线观看| 欧美日韩激情一区二区| 欧美高清性hdvideosex| 91精品国产91热久久久做人人 | 精品在线一区二区| 另类综合日韩欧美亚洲| 久久精品国产久精国产爱| 六月婷婷色综合| 国产一区二区调教| 成人午夜电影小说| 99久久精品免费观看| 色综合中文字幕国产 | 91精品国产综合久久国产大片| 欧美在线看片a免费观看| 欧美唯美清纯偷拍| 91精品国产免费| 久久综合久久综合亚洲| 国产女主播在线一区二区| 中文字幕av在线一区二区三区| 国产精品家庭影院| 亚洲成人福利片| 精品亚洲国内自在自线福利| 国产麻豆欧美日韩一区| 99久久99久久精品国产片果冻| 欧美在线高清视频| 日韩欧美国产系列| 亚洲国产成人高清精品| 日本在线观看不卡视频| 国产一区二区三区黄视频| 91在线视频播放地址| 欧美日韩三级一区| 久久久久国产免费免费| 亚洲图片另类小说| 青娱乐精品在线视频| 国产不卡视频在线观看| 欧美三级电影精品| 久久久99久久精品欧美| 亚洲人成电影网站色mp4| 日韩av在线免费观看不卡| 国产寡妇亲子伦一区二区| 91麻豆国产在线观看| 欧美精品日韩精品| 国产欧美一区二区三区沐欲| 一区二区不卡在线播放| 极品美女销魂一区二区三区| 91原创在线视频| 日韩精品专区在线| 亚洲精品美国一| 精品一区二区免费| 欧美私人免费视频| 欧美精品一区在线观看| 亚洲一区日韩精品中文字幕| 国产精品一线二线三线| 精品婷婷伊人一区三区三| 国产色一区二区| 日本成人在线不卡视频| 97精品久久久午夜一区二区三区| 日韩亚洲欧美在线观看| 亚洲精品免费看| 国产成人精品aa毛片| 欧美丰满嫩嫩电影| 亚洲免费在线视频一区 二区| 国产美女视频91| 欧美人与禽zozo性伦| 亚洲人成精品久久久久| 国产美女精品人人做人人爽| 欧美另类变人与禽xxxxx| 亚洲色图在线播放| 国产成人av一区二区三区在线观看| 欧美日韩视频不卡| 一区二区三区四区亚洲| voyeur盗摄精品| 久久久九九九九| 麻豆国产一区二区| 9191成人精品久久| 亚洲影视资源网| 97久久精品人人澡人人爽| 久久久久国产精品厨房| 麻豆免费精品视频| 日韩一本二本av| 日韩中文字幕91| 欧美日韩你懂得| 亚洲一区二区在线观看视频| 99视频在线观看一区三区| 国产欧美日本一区二区三区| 狠狠色狠狠色综合系列| 日韩精品一区国产麻豆| 视频精品一区二区| 欧美精品在欧美一区二区少妇| 亚洲制服丝袜av| 欧美最猛性xxxxx直播| 亚洲精品日韩综合观看成人91| 久久综合久久99| 国产精品一区2区| 精品久久久久久最新网址| 麻豆精品久久久| 精品国产一区二区三区久久影院 | 99re亚洲国产精品| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 欧美一区二区播放| 麻豆久久久久久久| 久久先锋影音av| 成人性生交大片| 日韩伦理av电影| 欧美性猛片aaaaaaa做受| 亚洲一区二三区| 91精品黄色片免费大全| 蜜桃av噜噜一区二区三区小说| 欧美男人的天堂一二区| 青娱乐精品在线视频| 精品国产一二三| 不卡的av在线播放| 伊人夜夜躁av伊人久久| 91麻豆精品国产自产在线| 老司机午夜精品99久久| 中文字幕av一区二区三区免费看| 97久久精品人人做人人爽| 亚洲电影视频在线| 久久亚洲精华国产精华液 | 美女看a上一区| 国产三级一区二区| 色婷婷av久久久久久久| 丝袜亚洲另类欧美综合| 久久久精品2019中文字幕之3| 成人午夜电影小说| 亚洲成a人片综合在线| 欧美成人r级一区二区三区| 国产精品羞羞答答xxdd| 日韩美女久久久| 欧美一区二区三区喷汁尤物| 国产精品 日产精品 欧美精品| 一区在线观看视频| 欧美丰满嫩嫩电影| 成人亚洲一区二区一| 日韩一区欧美二区| 国产清纯白嫩初高生在线观看91| 欧洲人成人精品| 国产一区999| 亚洲成人午夜影院| 国产欧美一区二区精品性色| 欧美日韩国产123区| 国产不卡在线播放| 图片区小说区区亚洲影院| 亚洲国产成人自拍| 91精品欧美久久久久久动漫| av中文一区二区三区| 美国欧美日韩国产在线播放| 亚洲色图19p| 久久久久久久综合日本| 欧美三级中文字幕在线观看| 国产成人啪午夜精品网站男同| 亚洲大型综合色站| 国产精品沙发午睡系列990531| 欧美日韩亚州综合| 99久久精品久久久久久清纯| 国产一区二区调教| 日韩国产欧美一区二区三区| |精品福利一区二区三区|