Спидометр-одометр , идея не нова, а вот реализация такого устройства имеют разные варианты, предлагаю вашему вниманию, несложную схему на распространенном МК ATmega8 , к схеме имеется два вида прошивок под индикаторы ; 16х2 и 16х4. , а также проект работы схемы в протеусе.
Схема данного спидометра-одометра ,
Коэффициенты под датчик скорости, можно настраивать прямо из пользовательского меню, под любой датчик скорости с любым ( с количеством импульсов от 1 и до 9999……), а также задается и корректируется из пользовательского меню, количество импульсов на километр.
Характеристики схемы
:
• Отображение текущей скорости, (отображение на ЖКИ, для 16х2 от 0.1 км/ч, для 16х4 от 0.001 км/ч)
• километраж общий, (отображение на ЖКИ, для 16х2 от 0.1 км/ч, для 16х4 от 0.001 км)
• километраж суточный (держитесь …..20 !!! суточных счетчиков, выбор № из меню),
• отображение время активности каждого счетчика (общего и для суточных) проще говоря время в пути.
• Возможность настроить сигнал о превышении скорости.
• пользовательское меню, позволяет выставить все коэффициенты ( скорости и учета километров) непосредственно с клавиатуры прибора.
• Все данные сохраняются в память контроллера.
Здесь привожу описание работы меню и вывода показаний для дисплея 16х2 ( под дисплей 16х4 это описание работы также полностью подходит, только вывод информации на экран 16х4 происходит более полный без сокращений).
Описание меню.
1) Выбор № персонального суточного счетчика км с учетом времени периода активности ячейки
2) Просмотр персонального суточного счетчика км ( та которая выводится в первой строке, при нажатии кнопок вправо enter обнуляется.)
3) Сброс общего (тотального) км, (на суточные счетчики не влияет)
4) Сброс текущего счета км, (в EEPROM не сохраняется)
5) НАСТРОЙКИ
5.1) Частота кварца настройка коррекции тактов кварцевого резонатора ATmega8 на 1 секунду (влияет только на расчет скорости км/ч)
5.2) Количество импульсов датчика скорости ( по умолчанию 6 имп.)
5.3) Импульс на км, это количество импульсов со счетчика на 1 километр ( по умолчанию 600 имп.)
5.4) Тактов в секунду — внутренняя переменная внутренних часов на выводе PB1 она выдаёт коротенький импульс 0.5Гц , если часы спешат — число надо увеличивать, если отстаёт — число надо уменьшать.
5.4) максимальная скорость,- настройка порога макс. скорости (зумер) .
5.5) Вост. умолчания — восстановить настройки умолчания.
5.6) Сохранить настройки — пока вы не нажали этот пункт — всё действует только до выключения.
Сохраняются в EEPROM такие данные;
а) общие настройки,
б)тотальные показания (общая сумма всех счетчиков) с фиксацией и отображением часов, периода работы активного состояния спидометра — одометра.
в)20 персональных ячеек показаний км, с фиксацией и отображением часов, периода работы активного состояния отображаемой ячейки.
Для тотальных и персональных данных за сохранение в память при обесточке схемы, отвечает вывод INT 0, он подсоединен через резисторный делитель, который подсоединен 2кОм на землю и 4.7кОм на + 12 V питания кренки.
Добавлено описание, схема ,печатка, скрин фьюзов для понипрог, подкорректировал в исходнике надписи вывода информации и меню, под прямое назначение прибора спидометра-одометра, а в принципе программа довольно таки универсальна и может быть спидометром, и частотомером, и тахометром, и вообще что только душе угодно….суть в том, что она считает, очень точно, частоту умножая на коэффициент, и считает общее кол-во импульсов деля его на коэффициент, в принципе подобрав коэффициенты, оно может работать чем угодно ……
Схема в протеусе.