📄 i2c_drv.h
字号:
/***************************************************************************
Project : Car two ting dvd System
Compiler : ST7 HiCross C (HiWARE)
Module : autos.c
Version : V 1.0
Created : 24 11, 2005
Author : tomi / SA
Description
- I2c.
Modified
- tomi
***************************************************************************/
#include "Libr.h"
#include "St72321.h"
#include "IOport.h"
//#define SDA 6
//#define SCL 7
#define Set_SDA_High SetBit(PA_DR,SDA)
#define Set_SDA_Low ClrBit(PA_DR,SDA)
#define Set_SCL_High SetBit(PA_DR,SCL)
#define Set_SCL_Low ClrBit(PA_DR,SCL)
#define SCL_High ValBit(PA_DR,SCL)
#define SCL_Low !ValBit(PA_DR,SCL)
#define SDA_High ValBit(PA_DR,SDA)
#define SDA_Low !ValBit(PA_DR,SDA)
#define SET_SDA_AS_INPUT ClrBit(PA_DDR, SDA) && ClrBit(PA_OR,SDA)
#define SET_SDA_AS_OUTPUT SetBit(PA_DDR, SDA) && ClrBit(PA_OR,SDA)
#define IS_SDA_HIGH ValBit(PA_DR,SDA)
#define TWD_SPEED 0x01 //value: 1 (Fastest), 2 (slower), ... N (much slower)
#define TWD_LONG_TIME (TWD_SPEED*8)
#define TWD_SHORT_TIME (TWD_SPEED*1)
extern unsigned char I2CReadByte(unsigned char cDevAddr, unsigned char cReg);
extern unsigned char I2CReadByte_no_sub(unsigned char cDevAddr);
extern unsigned char I2CWriteByte(unsigned char cDevAddr, unsigned char cReg, unsigned char cData);
extern unsigned char I2CReadBytes(unsigned char cDevAddr, unsigned char cReg, unsigned char *pString, unsigned char cNum);
extern unsigned char I2CWriteByte_noAddrsss(unsigned char cDevAddr,unsigned char cData);
extern unsigned char I2CWrite_nBytes(unsigned char cDevAddr,unsigned char *buff,unsigned char num);
extern unsigned char I2C_write_sub(unsigned char cDevAddr,unsigned char sub_addr,unsigned char *buff,unsigned char num);
extern void OSDCfgWr(unsigned char index,unsigned char dat);
extern unsigned char twdWr_Burst_A(unsigned char cReg);
extern void twdWr_Burst_D(unsigned char cData);
extern void twdWr_Burst_P(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -