Собираю измеритель на ардуино для аккумуляторов и не только.
Функционал таков:- Отображение потребляемой мощности
- Отключение по достижении критических значений
Управление настройками осуществляется с помощью энкодера. На данный момент готова "железная" измерительная часть (
шунт) и программная. Но, если одна проблема. Если отдельно меню работает быстро, то при объединении кода меню и кода измерителя, начинаются тормоза. Я знаю си на начальном уровне, скорее всего по-этому мой код содержит много ошибок. Основной вопрос стоит в логике работы меню. Вход и выход осуществляется длинным нажатием. Изменение значений - поворотом энкодера. Так вот при самом повороте и происходят эти тормоза. В связи с этим прошу помощи. Пожалуйста, укажите мне на ошибку, которая приводит к зависаниям.
Логика работы меню не идеальная. Совсем. В интернете полно примеров реализации на 4-5 кнопках, но нет рабочего примера с энкодером. Поэтому пришлось нагородить такой огород с блоками if(). Завтра смогу записать видео с работой устройства. Печатки и прочее будет немного позже, когда окончательно разберусь с софтом и перенесу проект с макетки на постоянное место жительства (в корпус от старого CD привода). Заранее спасибо.