📄 i2c.h
字号:
#ifndef __I2C_H
#define __I2C_H
//-------------------------------------------
#define Fpclk (Fcclk / 1) * 1 //VPB clock frequence , must be 1、2、4 multiples of (Fcclk / 4).
#define Fi2c 10000//50000//SMBUS总线通讯率为50KBPS
class I2cObj;
class I2cObj {//系统通讯类
public:
I2cObj(void);
private:
void I2cInit(void);
public:
void Start(void);
void REStart(void);
void Exit(void);
void Stop(void);
void Exec(void);
unsigned char ReadByte(unsigned char, unsigned char &);
unsigned char WriteByte(unsigned char, unsigned char);
unsigned char ReadBlock(unsigned char, unsigned int);
unsigned char WriteBlock(unsigned char, unsigned int);
public:
volatile bool Busy;
volatile unsigned int state;
volatile unsigned int Count;
volatile unsigned int MainCount, SubCount;
volatile unsigned char SubAddr;
volatile unsigned char MainComm, SubComm;
volatile unsigned char TxBuffer[16], RxBuffer[16];//接收数据缓冲区
};
#endif // __I2C_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -