Здравствуйте!
Разрабатываю термостат для электропечи. Температуру от 0 до 1200 градусов с шагом 5 градусов задаю энкодером (библиотека Encod_er).
Проблема в том, что, с одной стороны, для отображения задаваемой температуры (МАХ 1200) должна использоваться переменная "int", а с другой - при шаге 5 количество значений - 240, вполне хватило бы "byte".
Вопрос - что целесообразней:
1. Использовать "int".
2. Использовать "byte", но при каждой операции (сравнение с фактической температурой и отображение на дисплее) умножать на 5.
3. Другой вариант, которого я не знаю.
Использование переменных
Re: Использование переменных
Здравствуйте!
Конечно, использовать int. Умножение займет намного больше времени. К тому же вариант с типом byte усложнит алгоритм программы. Ресурсов платы Ардуино вполне достаточно для вашей задачи.
Конечно, использовать int. Умножение займет намного больше времени. К тому же вариант с типом byte усложнит алгоритм программы. Ресурсов платы Ардуино вполне достаточно для вашей задачи.
Re: Использование переменных
Спасибо огромное!
И,если можно, ещё один вопрос:
в ответе на первый комментарий к уроку 55 (энкодер) Вы объяснили, как ограничить значение переменной. Но я не понял, в какой раздел скетча вставить этот код - в основной цикл или в "void timerInterrupt()"?
И,если можно, ещё один вопрос:
в ответе на первый комментарий к уроку 55 (энкодер) Вы объяснили, как ограничить значение переменной. Но я не понял, в какой раздел скетча вставить этот код - в основной цикл или в "void timerInterrupt()"?
Re: Использование переменных
Лучше в обработчик прерывания после функции scanState(). Ведь в ней изменяется переменная position, которую вам надо ограничить. В этом случае нет необходимости запрещать прерывание.
Вернуться в «Программирование Ардуино»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей