si2chost.h

来自「mstar 776 开发的车载dvd」· C头文件 代码 · 共 176 行

H
176
字号

#ifndef _SI2C_HOST_H_
#define _SI2C_HOST_H_

#ifdef _SI2C_HOST_C_
#define _SI2C_HOST_C_
#else
#define _SI2C_HOST_C_ extern
#endif


#define SI2C_SLAVEADDR	0x6E
#define SI2C_BYTE_DELAY	120
#define SI2C_READ_DELAY	150

#define SI2C_CLK_100K	0
#define SI2C_CLK_200K	1
#define SI2C_CLK_400K	2
#define SI2C_CLK_SPEED	SI2C_CLK_100K

#if(SI2C_CLK_SPEED==SI2C_CLK_400K)
#define SI2C_SCLDelay() \
    { \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
    }
#elif(SI2C_CLK_SPEED==SI2C_CLK_200K)
#define SI2C_SCLDelay() \
    { \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
    }
#else
#define SI2C_SCLDelay() \
    { \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        _nop_(); \
        }
#endif

_SI2C_HOST_C_ void SI2cHostWrite(BYTE *pAddr, BYTE addrSize, BYTE *pData, BYTE dataSize);
_SI2C_HOST_C_ BYTE SI2cHostRead(BYTE *pAddr, BYTE addrSize);
_SI2C_HOST_C_ void SI2cHostWrite4Bytes(BYTE data1,BYTE data2,BYTE data3,BYTE data4);



#endif

⌨️ 快捷键说明

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