Передача данных по com-порту
- Войдите на сайт для отправки комментариев
Ср, 14/03/2012 - 18:00
С компьютера на arduino передается два ascii символа: направление и скорость, arduino должен их считывать и обрабатывать, как лучше сделать.
Сейчас делаю так:
Arduino: if(Serial.available() > 0) { byte Speed = byte(Serial.read()); byte Direction = byte(Serial.read()); Serial.println(Direction, HEX); if(Direction == 0x7E) { motor.run(FORWARD); } else if(Direction == 0x7D) { motor.run(BACKWARD); } motor.setSpeed(Speed*2); }
Компьютер: com.Write(Convert.ToChar(127)); com.Write(Convert.ToChar(0x7E));
Этот вариант не работает, подскажите как сделать.
А весь код можно?
компьютер или arduino?
Ну для начала ардуну
Вот код:
Попробуйте так:
У меня вот так работает:
Шлю в сириал "9f" - двигатель крутится с максимальной силой в одну сторону, шлю "5" - крутится в туже сторону в полсилы, шлю "5b" - крутится в обратную сторону в полсилы, "0" - останавливается и т.д.
Я сделал вот так:
Вроде все работает.
Да, так тоже можно.
Буду делать с двумя моторами, потом отпишусь.