Проектирование микропроцессорной системы управления электронным замком

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



На индикаторе появится цифра 1, которая обозначает номер программируемого ключа

. Кнопкой выбрать нужный номер

. Коснуться любым ключом панели

. Цифра на индикаторе начнет мигать, что говорит о готовности к программированию

. Коснуться панели тем ключом, код которого требуется занести в память

. В случае успешного программирования цифра на индикаторе перестанет мигать и начнет гореть постоянно

. Для выхода из режима программирования нужно подождать 5 секунд, после чего индикатор погаснет

Если нужно запрограммировать несколько ключей, то можно сразу перейти от п.9 к п.5 и повторить п.5 - 9 необходимое число раз.

Если после выполнения п.7 окажется, что выбран не тот номер, то для исключения потери кода ключа под этим номером можно нажать кнопку или подождать 5 секунд. В первом случае текущий номер увеличится на единицу, а содержимое памяти останется без изменений. Во втором случае произойдет полный выход из режима программирования без изменения кодов. Выход из программирования можно осуществить в любой момент, если сделать паузу более 5 секунд.

Для стирания из памяти лишнего ключа последовательность действий остается такой же, как и при программировании, только все действия производятся мастер-ключом. Т.е. процесс стирания фактически является записью кода мастер-ключа на неиспользуемые номера.

Для обработки событий, связанных с программированием, имеются две подпрограммы: PROGT и PROGS. Первая вызывается при iитывании кода ключа в режиме программирования, вторая - при нажатии кнопки программирования (NUMBER). Процесс программирования разбит на 3 фазы. При нажатии кнопки NUMBER осуществляется вход в программирование, т.е. переход к фазе 1. При этом на индикатор выводится буква P. iитываемые после этого коды ключей проверяются на совпадение с кодом мастер-ключа, так как только он может позволить продолжить программирование. Если такое совпадение произошло, то осуществляется переход к фазе 2. На индикатор выводится номер текущего ключа, который кнопка NUMBER может изменять. Если снова будет зарегистрировано касание ключа, то произойдет переход к фазе 3. Еще одно касание ключа приведет к запоминанию его кода и к возврату к фазе 2. Нажатием кнопки NUMBER тоже можно вернуться к фазе 2, но без изменения содержимого памяти. Любое действие в режиме программирования вызывает перезагрузку таймера возврата, который имеет интервал 5 секунд и проверяется в основном цикле. Если будет обнаружено обнуление этого таймера, то происходит выход из режима программирования.

7. Разработка схемы

.1 Выбор микроконтроллера

Выбор МК проводится по следующим критериям:

минимальный размер, так как габариты платы ограничены необходимостью монтажа в дверь.

малый ток потребления (по тем же соображением места эксплуатации будущей системы).

МК должен иметь достаточно памяти для хранения программ работы системы.

наличие стандартных интерфейсов передачи данных (UART, SPI).

высокая производительность.

минимальная стоимость.

На основании приведенных критериев было решено взять микроконтроллер ATmega8535 фирмы Atmel из семейства AVR [4]. Микроконтроллеры данного семейства изготовляются по высококачественной КМОП (CMOS) технологии, содержат энергонезависимые запоминающие устройства для хранения программы и данных, выполненные по Flash и EEPROM технологиям, и отличаются низким энергопотреблением при высокой тактовой частоте. Запись программы и исходных данных в память может выполняться после установки микроконтроллера в аппаратуре, где ему предстоит работать (ISP, In-System Programmable). Таким образом, AVR имеют высокое быстродействие и обладают хорошим соотношением функциональности и цены, благодаря чему получили широкое распространение, для них существуют удобные среды разработки, а документация переведена на русский язык, что безусловно облегчает задачу проектирования.

7.2 Структура микроконтроллера ATmega8535 [4]

В данном микроконтроллере АЛУ подключено непосредственно к 32-м рабочим регистрам, объединенным в регистровый файл. Благодаря этому АЛУ выполняет одну операцию (чтение содержимого регистров, выполнение операции и запись результата обратно в регистровый файл) за один машинный цикл.

В микроконтроллерах AVR реализована Гарвардская архитектура, которая характеризуется раздельной памятью программ и данных, каждая из которых имеет собственные шины доступа к ним. Такая организация позволяет работать одновременно как с памятью программ, так и с памятью данных. В отличие от RISC-микроконтроллеров других фирм, в микроконтроллерах AVR используется 2-уровневый конвейер, а длительность машинного цикла составляет всего один период кварцевого генератора.

Структурная схема микроконтроллера приведена на рисунке 2.

. iетчик команд

Размер iетчика команд составляет 12 разрядов. Напрямую (как регистр) iетчик команд из программы недоступен.

При нормальном выполнении программы содержимое iетчика команд автоматически увеличивается на 1 или на 2 (в зависимости от выполняемой команды) в каждом машинном цикле. Этот порядок нарушается при выполнении команд перехода, вызова и возврата из подпрограмм, а также при возникновении прерываний.

После включения питания, а также после сброса микроконтроллера в iетчик программ автоматически загружается значение $000. Как правило, по этому адресу располагается команда перехода (RJMP) к инициализационной части программы.

При возник

Copyright © 2008-2014 studsell.com   рубрикатор по предметам  рубрикатор по типам работ  пользовательское соглашение