Показать сообщение отдельно
Старый 14.08.2017, 23:22   #148
BNSF9399
Местный
 
Аватар для BNSF9399
 
Регистрация: 06.03.2014
Адрес: Москва
Сообщений: 1,741
Сказал(а) 'не согласен(а)'!: 5
Сказали 'не согласен'! 9 раз(а) в 7 сообщениях
Сказал(а) спасибо: 553
Поблагодарили 2,794 раз(а) в 755 сообщениях
Репутация: репутация неоспорима (2791)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
в монитор порта отправляется PacketLength: 3 ( 2 раза ,потом перестает реагировать )
о чем это говорит?
пока вы е считаете все, что в буфере, новые данные туда не попадут.
1. вы читаете из буфера ТОЛЬКО при условии, что туда прилетело 2 пакета, а у вас, как выяснилось их три.
2. даже если вы уберете проверку, и считаете 2 пакета в переменные
Arduino код:
    command=Wire.read(); 
    
value=Wire.read(); 
у вас все равно ничего работать не будет, потому что нужно считать из буфера все.
Резонно возникает вопрос, почему мы отправляем массив из двух элементов, а получаем три?
Ответ - потому, что не правильно передаем массив в функцию на передатчике
Arduino код:
Wire.write(packet); 
Рекомендую осилить
https://forum.arduino.cc/index.php?topic=333346.0
и
http://forum.arduino.cc/index.php?topic=19581.0

---------- Сообщение добавлено в 23:22 ---------- Предыдущие сообщение было в 23:21 ----------

Цитата:
Сообщение от Alexandro Посмотреть сообщение
почему при отключении от USB ардуино иногда комп изволит вырубаться?
провод меняли?

Цитата:
Сообщение от Alexandro Посмотреть сообщение
работаю на MAC
на МАС или/и в MAC OS?
версия OS какая?
BNSF9399 вне форума   Вверх