## 软件I2C(IIC_Software)

该驱动库位于
MPU6050/IIC_Software
目录下,在小车中仅用于做MPU6050的通信支持

### 方法 #### IIC_MPU6050_Init() MPU6050的IIC引脚初始化
返回值类型
void
#### IIC_Start() 模拟IIC起始信号
返回值类型
1int
#### IIC_Stop() 模拟IIC结束信号
返回值类型
void
#### IIC_Wait_Ack() IIC等待应答信号
返回值类型
0:没有收到应答;1:收到应答int
#### IIC_Ack() IIC应答
返回值类型
void
#### IIC_NAck() IIC不应答
返回值类型
void
#### IIC_Send_Byte(u8 txd) IIC发送一个字节
参数类型注释
txdu8发送的字节数据
返回值类型
void
#### i2cWrite(uint8_t addr, uint8_t reg, uint8_t len, uint8_t *data) IIC写数据到寄存器
参数类型注释
addruint8_t设备地址
reguint8_t寄存器地址
lenuint8_t字节数
datauint8_t*数据
返回值类型
0:成功写入;1:没有成功写入int
#### i2cRead(uint8_t addr, uint8_t reg, uint8_t len, uint8_t *buf) IIC读寄存器的数据
参数类型注释
addruint8_t设备地址
reguint8_t寄存器地址
lenuint8_t字节数
bufuint8_t*读出数据缓存
返回值类型
0:成功读出;1:没有成功读出int
#### IIC_Read_Byte(unsigned char ack) IIC读取一个字节
参数类型注释
ackunsigned char是否发送应答信号;1:发送;0:不发送
返回值类型
receive:读取的数据u8
#### I2C_ReadOneByte(unsigned char I2C_Addr, unsigned char addr) 读取指定设备指定寄存器的一个值
参数类型注释
I2C_Addrunsigned char设备IIC地址
addrunsigned char寄存器地址
返回值类型
res:读取的数据unsigned char
#### IICreadBytes(u8 dev, u8 reg, u8 length, u8 *data) IIC连续读数据
参数类型注释
devu8目标设备IIC地址
regu8寄存器地址
lengthu8字节数
datau8*读出的数据将要存放的指针
返回值类型
count:读出来的字节数量-1u8
#### IICwriteBytes(u8 dev, u8 reg, u8 length, u8* data) 将多个字节写入指定设备指定寄存器
参数类型注释
devu8目标设备地址
regu8寄存器地址
lengthu8要写的字节数
datau8*将要写的数据的首地址
返回值类型
1:返回是否成功u8
#### IICreadByte(u8 dev, u8 reg, u8 *data) 读取指定设备指定寄存器的一个值
参数类型注释
devu8目标设备地址
regu8寄存器地址
datau8*读出的数据将要存放的指针
返回值类型
1:返回是否成功u8
#### IICwriteByte(unsigned char dev, unsigned char reg, unsigned char data) 写入指定设备指定寄存器一个字节
参数类型注释
devunsigned char目标设备地址
regunsigned char寄存器地址
dataunsigned char发送的字节数据
返回值类型
1:返回是否成功u8
#### IICwriteBits(u8 dev, u8 reg, u8 bitStart, u8 length, u8 data) 读、修改、写指定设备指定寄存器一个字节中的多个位
参数类型注释
devu8目标设备地址
regu8寄存器地址
bitStartu8目标字节的起始位
lengthu8目标字节的位数
datau8存放改变目标字节位的值
返回值类型
1:成功;0:失败u8
#### IICwriteBit(u8 dev, u8 reg, u8 bitNum, u8 data) 读、修改、写指定设备指定寄存器一个字节中的1个位
参数类型注释
devu8目标设备地址
regu8寄存器地址
bitNumu8要修改目标字节的bitNum位
datau8为0时,目标位将被清,否则将被置位
返回值类型
1:成功;0:失败u8