
Микропроцессорные устройства и системы.-2
.pdf70
-супервизор питания – достаточно дорогая микросхема. Ее стоимость по меньшей мере в два раза превышает стоимость;
-разработка дополнительного блока слежения за зарядом батареи тоже вызовет удорожание прибора в целом.
Второй вариант – это применение отдельной микросхемы для реализации календаря, например PCF8583. Данная
микросхема имеет связь с микроконтроллером по последовательной шине стандарта I2C. Она легко программируется с
помощью программных средств микроконтроллера. Питание этой микросхемы можно осуществлять от ионистора емкостью, например 0,1 Ф. Он включается параллельно цепи питания. В этом случае никакие дополнительные затраты не нужны. При отключении внешнего питания функционирование всего устройства прекращается, но микросхема часов продолжается работать от ионистора. Чтобы электроэнергия ионистора не расходовалась на питание всей схемы, необходимо поставить обратный диод. При восстановлении питания устройства в микроконтроллер из микросхемы часов загружается текущее время, и работа прибора продолжается в нормальном режиме.
В результате проведенного анализа принято решение об аппаратной реализации функции календаря, так как стоимость микросхемы часов и ионистора гораздо ниже стоимости резервного источника с супервизором питания.
Следующий блок, который необходимо рассмотреть – это блок включения и выключения звонка.
Один способ реализации – с помощью электромагнитного реле. В этом случае управляющий сигнал с микроконтроллера подается на ключевой транзистор, который, в свою очередь, будет управлять обмоткой реле.
Второй вариант – применение симисторной схемы. Сигнал с микроконтроллера подается на оптосимистор, выход которого подключается к управляющему электроду мощного симистора.
Проведем анализ обоих вариантов: обе схемы обеспечивают гальваническую развязку силовой части от цифровой, обе
71
обеспечивают простое и надежное решение. Но ориентировочный расчет стоимости обоих вариантов показал, что вариант с симисторной схемой дешевле. Кроме того, в отличие от реле, схема будет работать бесшумно. Поэтому выбираем вариант с симисторной схемой.
Следующий блок, подлежащий рассмотрению – блок клавиатуры. Для выбора типа организации клавиатуры (линейной или матричной) нужно определить, сколько кнопок нужно и какие функции они должны выполнять.
Функции, выполняемые клавиатурой:
-корректировка времени, даты;
-принудительная подача звонка, в том числе сигнал «Тревога»;
-принудительное отключение звонка при необходимости. С учетом этого можно предложить следующий вариант:
-кнопка «Коррекция». При нажатии кнопки устройство переходит в режим редактирования времени и даты. При повторном нажатии кнопки устройство переходит в обычный режим работы;
-кнопка «Выбор». Последовательное нажатие этой кнопки в режиме коррекции времени позволяет по-очереди редактировать все значения времени и даты;
-кнопки «Вперед» и «Назад». Эти кнопки в режиме коррекции позволяет изменять величину (на единицу вперед и назад соответственно), выбранную кнопкой «Выбор».
-кнопка принудительной (ручной) подачи звонка. При ее нажатии напрямую замыкается силовая цепь и подается звонок. Длительность звонка определяется длительностью удержания нажатой кнопки;
-выключатель с подсветкой для принудительного (ручного) отключения силовой цепи звонка.
Из вышесказанного следует, что первые четыре кнопки можно подключить напрямую к портам микроконтроллера.
72
Так как число кнопок небольшое, то можно реализовать линейный тип клавиатуры.
Следующий блок, подлежащий рассмотрению, это блок индикации.
Объем информации, подлежащий отображению в обычном режиме и режиме коррекции: текущее время и дата, номер текущего урока и номер текущей смены.
Наиболее оптимальным вариантом будет являться жидкокристаллический алфавитно-цифровой индикатор (ЖКИ) с организацией 2 строки на 16 знаков каждая. Он имеет встроенную подсветку, высокую контрастность выводимой информации и небольшое число линий для связи напрямую с микроконтроллером. Можно применить такого же типа индикатор, но не жидкокристаллический, а с матрицей на органических светодиодах (OLED), но его стоимость при прочих одинаковых параметрах будет в 2 раза выше ЖКИ.
Последний блок – это блок связи микроконтроллера с персональным компьютером. Он предназначен для загрузки сетки расписания в EEPROM память микроконтроллера. Здесь тоже можно рассмотреть несколько вариантов. Наиболее распространенными коммуникационными портами компьютера являются:
-параллельный порт LPT;
-последовательный порт RS-232;
-последовательный высокоскоростной порт USB.
Так как высокая скорость приемопередачи не требуется, то необходимо ориентироваться на простоту реализации протокола и его стоимость. Самым недорогим вариантом будет реализация протокола связи через LPT-порт, так как уровни этого порта совместимы с TTL-уровнями и позволяют организовать двунаправленный обмен данными в параллельном коде. Для соединения необходимо будет напрямую соединить один 8- битный порт микроконтроллера с портом LPT. Другой вариант – немного дороже – это соединение по последовательному порту
73
стандарта RS-232. Эля этого необходимо применить микросхему
– преобразователь уровней (например MAX232 или аналоги). Эта микросхема соединяет стандартный порт USART микроконтроллера с COM-портом компьютера. Последний вариант – это реализация обмена данными через порт USB. В этом случае можно выбрать микроконтроллер, который содержит внутри контроллер USB или воспользоваться внешней микросхемой, реализующей протокол USB. Продолжая двигаться по линейке микроконтроллеров фирмы ATMEL, можно выбрать микроконтроллер AT89C5131 (семейства MSC-51) или AT90USB647 (семейство AVR). Розничная цена каждого микроконтроллера превышает 300 руб. Если выбирать отдельный контроллер USB, то можно после анализа рынка остановиться на микросхеме CP2101. Эта микросхема предлагает простое, недорогое (ее стоимость не превышает 100 руб.) и быстрое решение, которое не требует изучения стандарта USB и написание собственного драйвера USB-устройства для персонального компьютера. Микросхема подключается к стандартному USART-порту микроконтроллера и USB-порту компьютера. На компьютере устанавливается драйвер виртуального COM-устройства. Программное обеспечение с внешним устройством будет взаимодействовать через этот виртуальный порт как с обычным COM-устройством.
Врезультате проведенного анализа в качестве канала связи выберем порт USB, так как на современных портативных компьютерах, зачастую, кроме USB, никаких портов нет. А сетка расписаний устройства должна программироваться с любого компьютера. Так как написать программу для USART проще, чем для USB, то выберем тип контроллера USB – внешний
(СР2101).
Витоге подсчитаем общее число занятых линий портов микроконтроллера.
4 линии порта – клавиатура из 4-х кнопок; 3 линии порта – служебные линии интерфейса с ЖКИ;

74
4 линии порта – информационные линии интерфейса с ЖКИ;
1 линия порта – выход на звонок;
2 линии порта – связь с микросхемой часов по шине I2C; 1 линия порта – выход запроса прерывания 2 линии порта – интерфейс связи с компьютером;
1 линия порта – прием данных от пожарной сигнализации. Итого: 18 линий
В результате можно выбрать микроконтроллер ATMega8. Он содержит RISC-ядро, у него 23 линии порта и низкая стоимость (около 50 руб.).
С учетом сказанного выше функциональная схема устройства примет следующий вид.
|
|
|
|
«Меню» |
|
|
RTC |
2 |
MSC |
«Выбор» |
|
|
1 |
|
|
||
|
|
|
|
||
|
INT |
|
|
|
|
|
INT0 |
|
«Вперед» |
|
|
К USB порту |
|
|
|
PB |
|
компьютера |
|
2 |
|
«Назад» |
|
2 |
CP2101 |
|
|
|
|
USB |
|
|
|
|
|
|
|
PD |
|
1 К линии пожарной |
|
|
+5 В |
|
|
||
К нагрузке |
|
|
сигнализации |
||
|
|
|
|||
на 220В |
|
|
|
3 |
LCD |
|
|
|
|
. |
|
|
|
1 |
|
PA |
|
|
|
|
4 |
|
|
Звонок |
|
|
|
D |
|
«Звонок» |
|
|
|
|
|
|
|
|
|
|
Рисунок 10.2. Функциональная схема устройства
10.5 Разработка блок-схемы алгоритма работы микроконтроллера
Анализируя задание на проектирование, можно утверждать, что сеток расписания должно быть как минимум две: обычная,
75
т.е. с понедельника по пятницу, и сокращенная, которая будет использоваться по субботам и в предпраздничные дни.
Основные функции, которые будет выполнять микроконтроллер:
-ежесекундно считывать текущее время и дату из микросхемы часов реального времени и выводить на индикатор;
-после вывода времени производить вычисление номера урока и номера смены и также выводить их на индикатор;
-ежеминутно проверять сетку расписания на совпадение времени и при совпадении давать звонок;
-непрерывно производить сканирование клавиатуры, т.е. производить проверку на нажатие какой-либо клавиши.
Дополнительные функции:
-установка связи с компьютером по коммуникационному порту;
-загрузка сетки расписания из компьютера в память микроконтроллера;
-проверка сигнальной линии, подключенной к пожарной сигнализации;
-принудительная подача звонка произвольной длительностью, соответствующей длительности нажатия клавиши «Звонок» (например «Тревога» или просто внеочередной звонок.
Блок-схемы алгоритмов приведены в приложении 4. Приведем детализированное описание алгоритма работы
устройства по представленным блок-схемам.
Основная программа начинает выполняться после аппаратного сброса микроконтроллера. Производится инициализация микроконтроллера: начальная загрузка регистров, настройка последовательного порта, прерываний, таймера, настройка регистров микросхемы часов, настройка направления портов, инициализация ЖКИ.
Основной цикл программы состоит из сканирования клавиатуры и обработки нажатия клавиш. При нажатии клавиши
76
«Меню» МК переходит в режим редактирования даты и времени. Вся эта информация отображается на ЖКИ. Нажимая кнопку «Выбор», можно перемещаться по дате и времени для редактирования конкретного числа. Редактирование чисел производится путем нажатия кнопок «Вверх» и «Вниз». При повторном нажатии клавиши «Меню» МК переходит в рабочий режим.
Все остальные действия выполняются только по прерываниям.
При нажатии кнопки «Звонок» замыкается непосредственно силовая цепь, и звонок звенит, пока нажата кнопка.
Микросхема часов настраивается таким образом, что каждую секунду выдает запрос прерывания на микроконтроллер (на внешний вывод INT0). Соответствующая подпрограмма обработки прерывания считывает текущее значение даты и времени из микросхемы часов и выводит эти значения на ЖКИ. Затем сравнивает это значение с временной сеткой в EEPROM. Если значения совпадают, то на соответствующий вывод порта подается активный уровень для включения звонка и затем запускается таймер T0 для формирования временной задержки в 3 секунды (длительность звонка). Таймер Т0 переполняется определенное число раз и через 3 секунды подается команда на выключение звонка и остановку таймера.
Загрузку сетки расписания производит компьютерная программа. Используя виртуальный СОМ-порт, блоками по 64 байта данные загружаются в буфер, который формируется в ОЗУ МК. На каждый блок из 64 байт формируется контрольная сумма. После загрузки очередных 64 байт эти данные переписываются в EEPROM. Сразу напрямую переписывать данные в EEPROM не получается, так как данные поступают с большой скоростью, а каждый байт записывается в EEPROM за время, равное 8,5 мс (данные из документации на микроконтроллер). После того, как очередные 64 байта переписываются в EEPROM, МК выдает в компьютер
77
подтверждение завершения операции в виде контрольной суммы. Эта контрольная сумма сравнивается с контрольной суммой, сформированной компьютерной программой и при их совпадении в МК передаются следующие 64 байта сетки расписания.
10.6 Разработка принципиальной схемы
Сама схема электрическая принципиальная не будет приведена из-за маленького формата пособия. Однако ее можно будет получить у руководителя курса в электронном виде в формате Adobe Acrobat.
.
10.7 Разработка прикладной программы
Раздел не будет приведен по причинам многовариантности практической реализации программы и большого объема исходного кода.
10.8 Заключение
В данной работе было спроектировано микропроцессорное устройство управления звонком на занятия. Оно разработано с учетом опыта, накопленного при изучении аналогов и ориентировано на последующую коммерциализацию. Основными критериями выбора тех или иных компонентов были цена, простота монтажа, функциональность устройства. При продолжении работы над устройством особое внимание необходимо будет уделить надежности устройства, так как оно должно будет непрерывно функционировать в течение нескольких лет.
К недостаткам спроектированного устройства можно отнести отсутствие реальной связи с пожарной сигнализацией и невозможность изменения длительности подаваемого звонка. Т.е. длительность звонка на урок и с урока будут равны.
78
В целом же можно считать, что задача на проектирование выполнена полностью.
10.9 Список использованных источников
1.Русанов В.В., Шевелев М.Ю. Микропроцессорные устройства и системы. Учебное пособие. Томск: ТУСУР, 2007 г.
2.Шарапов А.В. Цифровая и микропроцессорная техника. Томск: Изд.ТГУ
3.Шарапов А.В. Микропроцессорные устройства и системы. Методическое указания к выполнению курсового проекта. Томск: Изд.ТГУ
4.Дж. Уитсон. 500 практических схем на ИС. Издательство МИР. 1992г.
5.А.А. Мячев. Персональные ЭВМ и микроЭВМ. Основы организации. Москва “Радио и связь” 1991г.
79
11 Примеры заданий на курсовое проектирование
1. Спроектировать устройство управления бетоносмесительным узлом. Компоненты бетонной смеси поочередно загружаются на весы и затем в смеситель, в котором перемешиваются 20±1 мин. Компоненты загружаются в диапазоне: гравий (0÷1000 кг ± 1%), песок (0÷300 кг ± 1%), цемент (0÷200 кг ± 1%), вода (0÷200 кг ± 1%). Пропорция компонентов задается предварительно. Загрузка компонентов управляется электромагнитными заслонками. В конце смены (8 часов) выдается для контроля следующая информация: номер замеса, текущее время замеса, вес и процентный состав замеса, количество замесов в смену и общий расход компонентов в смену.
2.Спроектировать устройство коррекции угла опережения зажигания ДВС в зависимости от частоты вращения коленвала. Датчик оборотов выдает 256 импульсов за 1 оборот коленвала. Датчик ВМТ выдает 1 импульс за 1 оборот.
3.Спроектировать устройство управления ЛПМ кассетного магнитофона. Устройство должно обеспечивать:
а) включение режима: стоп, воспроизведение, запись, перемотка влево (вправо), ускоренная перемотка влево (вправо);
б) индикацию режима; в) ускоренная перемотка включается при нажатии
соответствующих кнопок дольше 2 секунд; г) управление электромагнитом каретки и тремя ДПТ
приемного, падающего и ведущего узлов;
д) в режиме перемотки на двигатель поступает Uупр .= 9 В, ускоренной перемотки – 15 В, подтормаживания – выводы двигателя подключены к резистору R = 1 кОМ.
4.Спроектировать устройство управления домофоном для подъезда дома на 15 квартир.
Устройство должно обеспечивать тональный вызов и подключение громкоговорящей связи в квартире, номер которой