Использование классов при передаче данных с ПК
- Войдите на сайт для отправки комментариев
Доброго времени суток! Наверно, немного не точно сформулировал заголовок, заранее извиняюсь, не сообразил, как правильно записать (Arduino начал изучать недавно, да и в программировании в целом не блещу).
Есть один класс, который служит для управления шаговым двигателем. При его "активации", нужно указать параметры "скорость" и "расстояние" . Задаются они в следующем виде:
ServRotate sr1(100, 10);
Причем это строка должна быть прописана вне петли (loop), иначе работать отказывается.
В петле просто прописывается:
sr1.Update();
И все замечательно работает. НО, нужно с ПК передавать эти самые "скорость, расстояние" и запустить работу класса по команде. С запускам по команде проблем нет, а вот с вводом данных - есть. Так как строка записывается вне петли, а данные считываются в петле, то запихнуть их в эту строку нельзя, точнее, запихнуть то можно, но строка не прочитается, так как находится вне петли. Голову сломал уже, и гугление не принесло ни капли понимания, как решить эту проблему. Надеюсь, вы, добрые люди, поможете разрбраться, заранее спасибо:)
прекращай эту дурь с петлями
Но как иначе?
Варианта два:
1. Смотрите, есть ли у класса ServRotate методы для установки параметров "скорость" и "расстояние". Если есть - юзайте их;
2. Создавать объект класса ServRotate динамически, при помощи оператора new:
По поводу первого варианта: Класс писал сам по шаблону из одной статьи, так что может в нем проще что изменить, не совсем понимаю, что значит ваша формулировка, но, подозреваю, что вы имеете ввиду эту часть:
Далее просто идет void Update(), в котором расписывается применение этих данных
А со вторым вариантом тоже попробую разрбраться.
Если класс писали сами - добавьте туда публичный метод установки параметров, и всё:
И вызывайте его, когда надо:
Спасибо, всё получилось :)