SoftWire


SoftWire(uint8 scl=SCL, uint8 sda=SDA, uint8 delay=SOFT_STANDARD)

构造函数

uint8 available()

接收缓存中的数据字节数

void begin(uint8 = 0x00)

接口初始化(本身的I2C地址,默认0x00)

void beginTransmission(uint8)

开始传输数据

void beginTransmission(int)

开始传输数据

void end()

结束,将SDASCL引脚设置为输入

uint8 endTransmission(bool)

根据参数不同有不同的行为:当参数设置为true时,发送停止信号并释放总线;当为false时,发送从新开始信号,总线不释放,用于多次传输。

uint8 endTransmission(void)

停止传输

bool i2c_get_ack()

在总线上获取从机 ACK

void i2c_repeated_start()

在总线上产生重新开始信号

void i2c_send_ack()

在总线上产生 ACK 信号

void i2c_send_nack()

在总线上产生NACK信号

uint8 i2c_shift_in()

SDASCL 移位输入数据

void i2c_shift_out(uint8)

SDASCL 移位输出数据

void i2c_start()

在总线上产生开始信号

void i2c_stop()

在总线上产生停止信号

uint8 read()

读取接收到一个字节的数据

uint8 requestFrom(uint8, int)

请求从机数据并存入接收缓存

uint8 requestFrom(int, int)

请求从机数据并存入接收缓存

void setClock(uint32_t frequencyHz)

设置总线的速度

void set_scl(bool)

SCL设为HIG / LOW

void set_sda(bool)

SDA设为HIG / LOW

void write(uint8)

往从机写入数据

void write(uint8*, int)

往从机写入数据

void write(int)

往从机写入数据

void write(int*, int)

往从机写入数据

void write(char*)

往从机写入数据