В общем мастерю дозатор для воды(схема во вложении). Использую счетчик с 30 импульсами на литр.
Подключил, но что то счетает неверно то в плюс то в минус врёт причем врет на разные значения.
Прерывание в контролере настроено на счет по спаду импульса.
Программа работает по следующему алгоритму.
Вводить можно только до одного знака после запетой. То есть шаг 0.1 литр.
Ведённое значение умножается на 30 и получается количество импульсов которое надо получить со счетчика.
В обработчике прерывания INT0 значение переменной отвечающей за счет увеличивается на один при каждом импульсе.
После чего сравнивается с нужным и если совпадает то закрываем клапан.
Не могу понять где в столь примитивном аппарате может быть ошибка?
- Вложения
-
- Дозатор.png
- (139.27 КБ) 581 скачивание


