1. Wire.begin(地址):
用途: 该库用于与 I2C 设备进行通信。这将启动 Wire 库并作为主机或从机加入 I2C 总线。
地址:7 位从机地址是可选的,如果未指定地址,它会像这样 [Wire.begin()] 作为主机加入总线。
2. Wire.read():
用途:此函数用于读取从主设备或从设备接收到的字节,或者在调用 requestFrom()后从从设备传输到主设备,或者从主设备传输到从设备 。
3.Wire.write():
用途:该函数用于向从设备或主设备写入数据。
从机到主机:当主机使用Wire.RequestFrom()时,从机向主机写入数据。
主到从:对于从主设备到从设备的传输,在调用Wire.beginTransmission()和Wire.endTransmission( )之间使用Wire.write()。
Wire.write()可以写成:
Wire.write(值)
value:作为单个字节发送的值。
Wire.write(字符串):
string:作为一系列字节发送的字符串。
Wire.write(数据,长度):
data:以字节形式发送的数据数组
长度:要传输的字节数。
4. Wire.beginTransmission(地址):
用途:此函数用于开始向具有给定从地址的 I2C 设备进行传输。随后,使用write()函数构建用于传输的字节队列, 然后通过调用 endTransmission()函数传输它们。发送设备的 7 位地址。
5. Wire.endTransmission();
用途:此函数用于结束由 beginTransmission()开始的到从设备的传输,并传输由Wire.write() 排队的字节 。
6. Wire.onRequest();
使用:当主设备使用Wire.requestFrom()从从设备请求数据时,将调用此函数。在这里,我们可以包含Wire.write()函数来向主设备发送数据。
7. Wire.onReceive();
使用:当从设备接收到来自主设备的数据时调用此函数。这里我们可以包含Wire.read(); 函数读取从主机发送的数据。
8. Wire.requestFrom(地址,数量);
用途:该函数用于主设备向从设备请求字节。函数Wire.read()用于读取从设备发送的数据。