Малина к arduino не получает правильное значение через i2c
Я пытаюсь отправить массив значений 250,5000,400,1,430 из raspberry python, но arduino получает
43
0
0
0
0
Кто-нибудь, помогите.
мой код ниже
Что я уже пробовал:
////Rpi code///// import smbus import time bus = smbus.SMBus(1) address = 0x20 def writeNumber(a,b,c,d,e): bus.write_i2c_block_data(address, a, [b, c, d, e]) return -1 while True: try: writeNumber(250,5000,400,1,430) time.sleep(1) ////Arduino Code//// #include <Wire.h> int data[5]; int x =0; void setup() { // put your setup code here, to run once: Serial.begin(9600); Wire.begin(0x20); Wire.onReceive(receiveData); } void loop() { // put your main code here, to run repeatedly: delay(10); } void receiveData(){ while(Wire.available()){ data[x]=Wire.read(); } Serial.println("Stand-1"); Serial.println(data[0]); Serial.println(data[1]); Serial.println(data[2]); Serial.println(data[3]); Serial.println(data[4]); }
Gerry Schmitz
Написание и чтение одного числа (5 раз), как правило, проще, чтобы начать с.