Курсовая работа: Микропроцессорное устройство управления электронными весами
Для электронных весов потребуются следующие внешние устройства:
- клавиатура с цифрами 0-9 и клавишей ввода, т.е. всего десять клавиш;
- 2 семисегментных индикаторов: 4 отображают вес с точностью до грамма, по 4 для отображения цены и стоимости товара.
- усилитель сигнала с датчика веса и АЦП для оцифровки данных.
При использовании микропроцессорного комплекта серии К580 устройство управления весами кроме центрального процессора (пять микросхем) должно включать в себя параллельный интерфейс, программируемый таймер, ПЗУ для хранения прикладной программы и ОЗУ для организации стека.
Предпочтительнее использование однокристальных микроконтроллеров, где все перечисленные устройства реализованы в одной микросхеме и требуется лишь один источник питания. Наиболее оптимальное решение получается при применении микроконтроллеров AtmelAVRс гибкой и развитой системой команд и множеством вспомогательных функций, среди которых присутствуют 8- и 16-разрядные таймеры и 10-разрядные АЦП. Кроме того, эти контроллеры изготовлены по технологии КМОП, что обеспечивает экономичное потребление тока.
3 РАЗРАБОТКА ФУНКЦИОНАЛЬНОЙ СХЕМЫ
На рисунке 3.1 приведена функциональная схема устройства управления электроннымим весами, выполненного на однокристальном микроконтроллере Atmega16.
В связи с достаточно большим количеством семисегментных индикаторов следует использовать схему динамической индикации. Для этого информационные входы семисегментных индикаторов подключены к выходам дешифратора К514ИД1, а общий вход каждого индикатора – к выходу 4-разрядного дешифратора К1564ИД5. На вход К514ИД1 от микроконтроллера подается код символа, на вход К1564ИД5 – код активного индикатора. Каждый индикатор должен активироваться с частотой не менее 40 Гц (частота, при которой мерцание индикаторов незаметно для глаз). Для отображения информации при таком подключении потребуется один порт, в данной схеме для этих целей выделен порт PC. Поскольку у дешифратора семисегментного индикатора управление запятой не предусмотрено, то для следует выделить еще один вывод микроконтроллера, в данном случае PD7.
Клавиатуру удобно построить в виде матрицы 3´4, для ее сканирования потребуется один порт, в данном случае PB.
Для оцифровки сигнала датчика используется вход микроконтроллера ADC0.
Для определения веса товара с точностью до грамма при максимальном весе 1кг требуется 10-ти разрядный АЦП, встроенный в микроконтроллер.
|
Рисунок 3.1 – Функциональная схема контроллера
4 Разработка алгоритма управляющей программы
Вне зависимости от задач, выполняемых микроконтроллером, алгоритм управляющей программы, как правило, состоит из двух частей:
- начальная загрузка регистров и значений переменных, инициализация внешних устройств;
- бесконечный цикл, в котором обычно происходит опрос внешних сигналов и обновление информации как для внутренних регистров, так и для внешних устройств.
У электронных весов должно быть два режима работы: режим взвешивания и режим редактирования цены за единицу продукции. Чтобы их различать, введен специальный байт status. При сбросе весы должны находиться в режиме редактирования, контроллер в этом режиме, ожидает ввода значения цены или ее подтверждения путем нажатия клавиши ввода. В режиме взвешивания контроллер пересчитывает значение стоимости взвешенной продукции в зависимости от веса и цены.
Для отображения чисел на экране необходима специальная подпрограмма, преобразующая число в последовательность выводимых символов.
Рисунок 4.1 – Схема алгоритма прикладной программы
5 РАЗРАБОТКА СХЕМЫ ЭЛЕКТРИЧЕСКОЙ ПРИНЦИПИАЛЬНОЙ
Схема электрическая принципиальная полностью приведена в приложении.
При использовании контроллера Atmega16 фирмой-производителем рекомендовано использовать параллельно каждой паре выводов питания подсоединять помехозащищающий конденсатор емкостью не менее 1мкФ. На схеме эти конденсаторы обозначены C1 и C2, выбран тип К10-17–10В–1мкФ±10%. Между линией RESET и плюсом питания подключается резистор с типовым значением 10 кОм (на схеме – R1), между линией RESET и минусом питания – конденсатор емкостью 1мкФ (на схеме – C4). Такая схема позволяет избежать ложного сброса микроконтроллера.