Проектирование дверных кодовых систем на базе avr микроконтроллеров
Курсовая работа, 29 Августа 2013, автор: пользователь скрыл имя
Описание работы
Цель курсового проекта: проектирование дверных кодовых систем на базе AVR микроконтроллеров.
Задачи:
рассмотреть общие сведения о микроконтроллерах;
рассмотреть направления и тенденции развития микроконтроллеров;
рассмотреть области применения микроконтроллеров;
рассмотреть основные характеристики, структуру микроконтроллеров семейства АТ90S;
рассмотреть порты микроконтроллера;
рассмотреть систему команд АТ90S;
рассмотреть жидкокристаллические индикаторы;
рассмотреть основные характеристики алфавитно-цифровых индикаторов на основе контроллера HD44780;
рассмотреть кодировку символов на индикаторах;
разработать алгоритм и программу для микроконтроллера;
описать работу.
Файлы: 1 файл
ПРОЕКТИРОВАНИЕ ДВЕРНЫХ КОДОВЫХ СИСТЕМ.doc
— 2.72 Мб (Скачать файл)сохраняет значения регистров, но останавливает тактовый генератор, отключая
все остальные функции микроконтроллера, вплоть до следующего внешнего прерывания, или до аппаратной инициализации. В режиме экономии энергопотребления «Save», тактовый генератор таймера продолжает работать, обеспечивая пользователю функции таймера, в то время, как остальная часть устройства находится в состоянии покоя.[5, с.54]
Устройства производятся
с применением технологи
Встроенная Flash - память с поддержкой внутрисистемного программирования обеспечивает возможность перепрограммирования программного кода в составе системы, посредством SPI последовательного интерфейса, или с помощью
стандартного программатора энергонезависимой памяти. Благодаря совмещению усовершенствованного восьмиразрядного RISC CPU с Flash - памятью с поддержкой внутрисистемного программирования на одном кристалле получились высокопроизводительные микроконтроллеры AT90S4434/8535, обеспечивающие гибкое и экономически высокоэффективное решение для многих приложений встраиваемых систем управления.
AVR AT90S4434/8535 поддерживаются
полным набором программ и
пакетов для разработки, включая:
компиляторы С,
1.5 Основные характеристики МК семейства AT90S
Основные характеристики микроконтроллеров семейства AT90S:
- производительность, приближающаяся к 1 MIPS/МГц;
- усовершенствованная AVR RISC архитектура;
- раздельные шины памяти команд и данных, 32 регистра общего назначения;
- flash ПЗУ программ, с возможностью внутрисистемного перепрограммирования и загрузки через SPI последовательный канал, 1000 циклов стирание/запись ;
- EEPROM данных, с возможностью внутрисистемной загрузки через SPI последовательный канал, 100000 циклов стирание/запись;
- блокировка режима программирования;
- встроенные аналоговый компаратор, сторожевой таймер, порты SPI и UART, таймеры/счетчики;
- полностью статические приборы - работают при тактовой частоте от 0 до 20 МГц ;
- диапазон напряжений питания от 2,7 до 6,0 В;
- режимы энергосбережения: пассивный (idle) и стоповый (power down).
1.6 Порты микроконтроллера
Порты ввода / вывода AVR имеют независимые линии «Вход/Выход».
Каждый разряд порта может быть запрограммирован на ввод или на вывод
информации. Мощные выходные драйверы обеспечивают токовую нагрузочную способность 20 мА на линию порта при максимальном значении 40 мА. Общая токовая нагрузка на все линии одного порта не должна превышать 80 мА. Интересная архитектурная особенность построения портов ввода/вывода у AVR заключается в том, что для каждого физического вывода существует 3 бита
контроля/управления, а не 2 бита, как у распространенных восьмиразрядных микроконтроллеров (Intel, Microchip, Motorola и тд.).
- Порт А – восьмиразрядный двунаправленный порт ввода/вывода с внутренними подтягивающими резисторами. Выходные буферы порта А могут поглощать ток до 20А. Если выводы РА0-РА7 используются как входы и извне устанавливаются в низкое состояние, они являются источниками тока, если включены внутренние подтягивающие резисторы. Кроме того, вход А обслуживает аналоговые входы АЦП.
- Порт B - всьмиразрядный двунаправленный порт ввода/вывода.
Для обслуживания порта отведено три регистра: регистр данных PORTB, регистр направления данных - DDRB и ножки порта B - PINB. Адрес ножек порта B предназначен только для чтения, в то время как регистр данных и регистр направления данных - для чтения/записи.
Все выводы порта имеют отдельно подключаемые подтягивающие резисторы. Выходы порта B могут поглощать ток до 20 мA и непосредственно управлять светодиодными индикаторами. Если выводы PB0 - PB5 используются как входы и замыкаются на землю, если включены внутренние подтягивающие резисторы, выводы являются источниками тока (Iil).
- Порт C - восьмиразрядный двунаправленный порт ввода/вывода.
Для обслуживания порта отведено три регистра: регистр данных PORTC, регистр направления данных - DDRC и ножки порта C – PINC. Адрес ножек порта C предназначен только для чтения, в то время как регистр данных и регистр направления данных - для чтения/записи.
Все выводы порта имеют отдельноподключаемые подтягивающие резис-
торы. Выходы порта C могут поглощать ток до 20 мA и непосредственно управлять светодиодными индикаторами. Если выводы PC0 - PC5 используются как входы и замыкаются на землю, если включены внутренние подтягивающие
резисторы, выводы являются источниками тока (Iil).
Дополнительные функции порта C - аналоговые входы АЦП. Если некоторые из выводов порта сконфигурированы как выходы, во время преобразования не рекомендуется производить их переключение.
В экономичном режиме триггеры Шмитта отключаются от цифровых входов. Это позволяет удерживать на входах аналоговое напряжение Vcc/2 без заметного увеличения потребления.
- Порт D - восьмиразрядный двунаправленный порт ввода/вывода.
Для обслуживания порта отведено три регистра: регистр данных PORTD, регистр направления данных - DDRD и ножки порта D – PIND. Адрес ножек
порта D предназначен только для чтения, в то время как регистр данных и регистр направления данных - для чтения/записи.
Все выводы порта имеют отдельно подключаемые подтягивающие резисторы. Выходы порта D могут поглощать ток до 20 mA и непосредственно
управлять светодиодными индикаторами. Если выводы PD0 - PD7 используются как входы и замыкаются на землю, если включены внутренние подтягивающие резисторы, выводы являются источниками тока (Iil).
1.7 Система команд и программирования моделей AVR
Система команд АVR включает команды арифметических и логических
операций, команды передачи данных, команды, управляющие
последовательностью
помимо двоичного кода сопоставлены мнемокоды ассемблера (символические
обозначения операций), которые используются
при создании исходного текста программы.
Специальные программы-
На рисунке 1.2 изображена программная модель AVR-микроконтроллеров, которая представляет собой диаграмму программно доступных ресурсов AVR. Центральным блоком на этой диаграмме является регистровый файл на 32 оперативных регистра, непосредственно доступных ALU. Старшие регистры объединены парами и образуют три 16-разрядных регистра, предназначенных для косвенной адресации ячеек памяти.
Рисунок 1.2 - Программная модель AVR-микроконтроллеров.
Все арифметические и логические операции, операции ветвления, а также часть операций работы с битами, представленные в таблице 1.1, 1.2 и 1.3,
выполняются в ALU только над содержимым оперативных регистров. Следует
обратить внимание,
что команды, которые в
Таблица 1.1 – Арифметические и логические операции
Мнемоника |
Описание |
ADD |
Сложить два регистра |
ADC |
Сложить с переносом |
ADIW |
Сложить слово с константой |
SUB |
Вычесть два регистра |
SUBI |
Вычесть константу |
SBIW |
Вычесть слово с константой |
AND |
Логическое И |
ANDI |
Логическое И |
OR |
Логическое ИЛИ |
ORI |
Логическое ИЛИ |
EOR |
Исключающее ИЛИ |
COM |
Дополнение до 1 |
NEG |
Дополнение до 2 |
SBR |
Установить бит(ы) в регистр |
CBR |
Сбросить бит(ы) в регистр |
INC |
Увеличить на 1 |
DEC |
Уменьшить на 1 |
CLR |
Очистить регистр |
SER |
Установить регистр |
Таблица 1.2 – Операции ветвления и их обозначения
Мнемоника |
Описание |
RJMP |
Относительный переход |
RCALL |
Относительный вызов подпрограммы |
CPSE |
Сравнить, пропуск если равно |
CP |
Сравнить |
CPC |
Сравнить с переносом |
CPI |
Сравнить с константой |
SBRC |
Пропуск если битв регистре сброшен |
SBRS |
Пропуск если битв регистре установлен |
BRLO |
Переход если меньше |
BRMI |
Переход если минус |
BRPL |
Переход если плюс |
BRGE |
Переход если больше или равно, со знаком |
BRLT |
Переход если меньше нуля, со знаком |
BRIE |
Переход если разрешены прерывания |
BRID |
Переход если запрещены прерывания |
Таблица 1.3 – Операции работы с битами
Мнемоника |
Описание |
SBI |
Установить бит в регистр ввода/вывода |
CBI |
Сбросить бит в регистр ввода/вывода |
LSL |
Логический сдвиг влево |
LSR |
Логический сдвиг вправо |
ROL |
Сдвиг влево через C |
ASR |
Арифметический сдвиг вправо |
BSET |
Установить флаг |
Продолжение таблицы 1.3
Мнемоника |
Описание |
BCLR |
Сбросить флаг |
SEC |
Установить перенос |
WDR |
Сброс сторожевого таймера |
1.8 Жидкокристаллические индикаторы
Для вывода информации на ЖКИ экран существует масса приемов и способов. Самый простой из них - это использование индикатора со встроенным контроллером вывода информации, представленный на рисунке 1.3. На основе кристалла HITACHI или POWERTIP предлагает широкий ассортимент индикаторов. Кстати, подобные индикаторы выпускает так же и SANYO. Система команд и принцип подключения достаточно простой. Главное - это усвоить, что есть возможность подключать как по восьмибитной шине, так и по четырехбитной.
Практически любое микроконтроллерное устройство имеет те или иные устройства индикации. Появление модулей ЖКИ со встроенными контроллерами
значительно упростило схемы сопряжения. Наиболее универсальными из таких модулей являются матричные алфавитно - цифровые, которые
позволяют отображать цифры,
буквы латинского и русского алфавита
и даже псевдографику, используя
возможности загружаемых
Основные характеристики:
- разнообразие моделей от 8 х 1 до 40 х 4 с размером по высоте до
14.5 мм;
- встроенный контроллер HD44780 или эквивалентный ему;
- шрифт: стандартный (латинский);
- технология исполнения: Twisted Nematic (TN) и Supertwist (STN);
- тип дисплея: негативный, позитивный;
- варианты подсветки: светодиодная LED, и электролюминесцентная EL;
- цвет индикатора: жёлто-зелёный и серо-голубой;
- рабочий диапазон температур: нормальный (от 0 до плюс 50 °С), расширенный (от минус 20 до плюс 70°С);
- угол обзора: сверху-вниз (12:00), снизу-вверх (6:00).