0
我有兩個arduinos,第一個arduino是讀傳感器和第一個液晶顯示器,第二個arduino是第二個液晶顯示器。 現在我想提出兩個值通過I2C被送到另一個Arduino的如何通過i2c接收兩個值並在Arduino中解析?
我發送代碼:
byte senderArray[] = {batteryVoltage, temperatureC}; //12V, 23*C
Wire.beginTransmission(4); // transmit to device #4
Wire.write(senderArray,2); // sends
Wire.endTransmission(); // stop transmitting
這裏接收代碼:
void setup()
{
Wire.begin(4); // join i2c bus with address #4
Wire.onReceive(receiveEvent); // register event
}
void loop()
{
delay(100);
}
void receiveEvent(int howMany)
{
byte index = 0;
int array[2];
while(Wire.available() > 0)
{
array[index] = Wire.read();
lcd.clear();
lcd.print("Battery: " + array[0]);
lcd.setCursor(0, 1);
lcd.print("Temp: " + array[1]);
}
}
如何在第一行顯示batteryVoltage
在第二個temperatureC
?
編輯: 溫度結果只顯示23,在發送之前i2c已經完全輸出23,478,如何在第二個Arduino上顯示完整的結果?