Лекция 8 Проектирование устройств на универсальных микроконтроллерах 1 Лектор: Люличева И.А.

Презентация:



Advertisements
Похожие презентации
Микроконтроллеры AVR семейства Mega. Отличительные особенности FLASH-память программ объемом от 8 до 256 Кбайт (число циклов стирания/записи не менее.
Advertisements

1 Лекция 6 Проектирование устройств на универсальных микроконтроллерах 1 Лектор: Люличева И.А.
Лекция 10. Контроллеры параллельной передачи данных. Параллельный интерфейс.
Состав персонального ПК. Компьютер это многофункциональное электронное устройство, предназначенное для накопления, обработки и передач» информации.
Микропроцессоры Лекция 6. СТРУКТУРА ЭЛЕМЕНТАРНОГО МИКРОПРОЦЕССОРА (ЭМП) Основным устройством всех цифровых систем (ЦС) является центральный процессор.
Машинная команда Энциклопедия учителя информатики Газета «Первое сентября»
Архитектура персонального компьютера. Компьютер – представляет собой программируемое электронное устройство, способное обрабатывать данные и.
1 ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒАЛЫМ МИНИСТРЛІГІ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН - 2 Аршалы орта мектебі Аршалынская средняя.
Организация микроконтроллеров. Классификация и структура микроконтроллеров 8-разрядные МК для встраиваемых приложений 16-ти и 32-х разрядные МК Цифровые.
Интерфейсы цифроаналоговых преобразователей. Цифровые интерфейсы выполняют функцию связи управляющих входов ключей ЦАП с источниками цифровых сигналов.
Учебный курс Введение в цифровую электронику Лекция 6 Программирование микропроцессорной системы кандидат технических наук, доцент Новиков Юрий Витальевич.
Архитектура вычислительной машины (Архитектура ЭВМ) концептуальная структура вычислительной машины, определяющая проведение обработки информации и включающая.
Архитектура ЭВМ (лекция 7) проф. Петрова И.Ю. Курс Информатики.
1 Микропроцессорная система. 2 Особенности микропроцессорных систем Гибкая логика работы меняется в зависимости от задачи; Универсальность может решать.
Микропроцессорные системы Микроконтроллер. 1.Знакомство с микроконтроллером Микроконтроллеры являются сердцем многих современных устройств и приборов,
Лекция 6. Способы адресации в микропроцессорных системах.
Устройства ввода/вывода Энциклопедия учителя информатики Газета «Первое сентября»
Использование таймера для формирования временных интервалов Национальный технический университет «Харьковский политехнический институт» Кафедра «Промышленная.
Программирование на Ассемблер к.т.н., доц. Красов А.В. Лекция 3 ФакультетМТС Курс3 Семестр6 Форма контролязачет Лекции14 часов Лабораторные работы12 часов.
1 Микропроцессорные системы. 2 Основные термины Процессор обработчик и вычислитель, выполняющий все операции над кодами и сигналами; Программа набор управляющих.
Транксрипт:

Лекция 8 Проектирование устройств на универсальных микроконтроллерах 1 Лектор: Люличева И.А.

Рассматриваются вопросы Система команд и примеры программ МК фирмы ATMEL Интерфейс пользователя – типы клавиатур, примеры подключения. Интерфейс пользователя – типы индикаторов Подключение к МК системе через стандартные интерфейсы. 2

Рекомендуемая литература

Стандартные семейства AVR: tinyAVR Флеш-память 8 Кб, SRAM 512 б, EEPROM 512 б Флеш-памятьSRAMEEPROM Число линий В/В 6-18 (общее количество выводов 8-32) Ограниченный набор периферийных устройств megaAVR Флеш-память 256 Кб, SRAM 8 Кб, EEPROM 4 Кб Флеш-памятьSRAMEEPROM Число линий В/В (общее количество выводов ) Аппаратный умножитель Расширенная система команд и периферийных устройств XMEGA AVR Флеш-память 384 Кб, SRAM 32 Кб, EEPROM 4 Кб Флеш-памятьSRAMEEPROM 4-ех канальный DMA-контроллерDMA Инновационная система обработки событий

Семейства AVR: Микроконтроллеры адаптированные под конкретные приложения: со встроенными интерфейсами USB, CAN, контроллером LCD;USBCANLCD со встроенным радио приёмо- передатчиком – серии ATAхxxx, ATAMxxx; для управления электродвигателями – серия AT90PWMxxxx; для автомобильной электроники; для осветительной техники.

С или ассемблер? Это вопрос в отношении программирования МК имеет совершенно иной оттенок, т.к инженер, работающий с МК, всегда в большей степени электронщик, чем программист: для него программа не самоцель, а средство заставить систему работать. Особенности программирования МК делают, в общем, не слишком актуальным вопрос о том, как программист добивается своих целей. Правда, память программ в МК исчисляется килобайтами, а скорость работы их не очень-то велика, и потому тут на первый план нередко выходят соображения компактности кода или скорости выполнения процедур: нередко специально составляются библиотеки подпрограмм, оптимизированные либо по количеству команд, либо по времени выполнения - смотря, что важнее. В общем случае, разумеется, программы, написанные на С, дают менее компактный код (даже для AVR, система команд которой специально оптимизирована для программирования на С), и это стоит учитывать.

Система команд микроконтроллеров AVR весьма развита и насчитывает в различных моделях от 90 до 133 различных инструкций. Большинство команд занимает 16 бит. Большинство команд выполняется за 1 такт. Всё множество команд микроконтроллеров AVR можно разбить на несколько групп:такт команды пересылки данных команды арифметических операций команды логических операций и команды сдвига команды операции с битами команды передачи управления команды управления системой

Особенности АЛУ Выполнять арифметико-логические операции и операции сдвига непосредственно над содержимым ячеек памяти нельзя. Нельзя также записать константу или очистить содержимое ячейки памяти. Система команд AVR позволяет лишь выполнять операции обмена данными между ячейками SRAM и оперативными регистрами. Достоинством системы команд можно считать разнообразные режимы адресации ячеек памяти. Как видно из Таблицы 1 (см. группу команд передачи данных), кроме прямой адресации имеются следующие режимы: косвенная, косвенная с пост-инкрементом, косвенная с пре-декрементом и косвенная со смещением.

команды пересылки данных Основных мнемоник немного, однако допустимы различные очетания операндов Mov reg, reg – прямая адресация Ld, Ldi, Ldd – команды загрузки St, Sti, Std - команды сохранения Push, Pop – сохр/извлечь из стека In, Out – ввод/вывод из портов

команды пересылки данных

команды безусловной передачи управления

Регистр флагов Бит С (carry) устанавливается, если во время выполнения операции был перенос из старшего разряда результата; Бит Z (zero) устанавливается, если результат операции равен 0; Бит N устанавливается, если MSB (Most Significant Bit - старший бит) результата равен 1 (правильно показывает знак результата, если не было переполнения разрядной сетки знакового числа); Бит V устанавливается, если во время выполнения операции было переполнение разрядной сетки знакового результата; Бит S = N + V (правильно показывает знак результата и при переполнении разрядной сетки знакового числа); Бит H устанавливается, если во время выполнения операции был перенос из 3-го разряда результата. Признаки результата операции могут быть затем использованы в программе для выполнения дальнейших арифметико-логических операций или команд условных переходов.

команды ветвления (условные переходы)

операции с битами

Примеры программ del: ldi r18,50 ;задержка ~40 мкс при кварце 4 МГц l4: dec r18 ; brne l4 ; ret delay: ldi r17,9 ;задержка ~1,8 ms при кварце 4 МГц l: ldi r18,255 ; l1: dec r18 ; brne l1 ; dec r17 ; brne l ; ret

Примеры программ initlcd_8515: ldi r16, (1

Программатор AVR

МК Dallas Semiconductor Контроллеры, производимые этой компанией, очень быстрые, но дорогие. Продаются, как ни удивительно, довольно хорошо. Их приобретают большей частью те, кто занимается системами разграничения доступа им очень нравится, что у этих МК два независимых последовательных порта. К тому же, у некоторых из этих контроллеров 1 кбайт ОЗУ на кристалле, что тоже очень нравится разработчикам. Но Dallas это не массовый контроллер, как PIC, перед ним не ставится задача завалить им весь рынок, контроллеры ценой от 8 до 30 долларов это не ширпотреб, а эксклюзив. Идут они только в специальные разработки, где разработчикам не хочется уходить от х51, но нужна повышенная скорость, два последовательных порта и т. д.

Типы клавиатур Отдельные кнопки (как в пейджере) Цифровая клавиатура 3х4 (простой телефон или калькулятор) Цифро-буквенная клавиатура (мобильный телефон) Кодирующие типы клавиатур (в ПК – на базе МК)

Пример подключения – одна кнопка

Пример подключения – три кнопки

Пример подключения клавиатуры к PIC24

Пример подключения клаиатуры к МК 51

Типы индикаторов Промышленно выпускается огромное количество моделей индикаторов, начиная от светодиодов и оканчивая матричными дисплеями, наиболее часто встречаются: Светодиод – отображает 1 бит 7-сегментный индикатор – отображает 1 цифру Линейка из нескольких 7-сегм. индикаторов Одно- и дву-строчные матричные индикаторы со встроенным контроллером Многострочный дисплей, управляемый видеокартой.

Выбор индикаторов в среде Proteus

8-разрядный АЦП на РIС12

Пример таймера на 4 7- сегментных индикаторах

Измеритель напряжения на МК

Цифровые часы

Пример подключения двустрочного индикатора Кодовая таблица контроллера Hitachi соответствует ASCII (Латиница и специальные символы). Есть возможность запрограммировать свои собственные 8 символов. При отладке пригодились светодиоды на порту B, оставшиеся от светодиодной мигалки. AT90S2313 имеет маленькие EEPROM и RAM, и портов ввода/вывода явно маловато, поэтому подключать его будем к порту D по параллельному 4-х битному интерфейсу.

Кодовые таблицы Буфер данных имеет больше ячеек, чем число знакомест дисплея. Смещая окно индикатора относительно буфера данных (см. систему команд), можно отображать на дисплее различные области буфера. У двустрочных индикаторов первые 40 ячеек буфера данных, обычно, отображаются на верхней строке дисплея, а вторые 40 ячеек - на нижней строке. Сдвиг окна дисплея относительно буфера данных для верхней и нижней строк происходит синхронно. Курсор будет виден на индикаторе только в том случае, если он попал в зону видимости дисплея (и если предварительно была подана команда отображать курсор).

Кодовые таблицы Кроме DDRAM, контроллер ЖКИ содержит еще один блок памяти - знакогенератор. Его "прошивка", то есть соответствие ASCII- кодов начертанию символов, обычно имеется в описании индикатора. Знакогенератор состоит из двух частей. Основная его часть представляет собой ПЗУ (CGROM) и ее, следовательно, нельзя изменить. Вторая часть, в которой задаются начертания символов для первых 16-ти кодов таблицы знакогенератора, представляет собой перепрограммируемое ОЗУ(CGRAM). Имеется возможность задать начертание 8 символов.

Электрическая схема

Пример подключения Порядок инициализации дисплея: включить питание (ждать 30 мкс) 0b (ждать 40 мкс) здесь происходит переход в четырехбитный режим(0b )(ждать 40 мкс) 0b ,0b (ждать 40 мкс) выключить дисплей (0b ,0b )(ждать 40 мкс) установить направление сдвига курсора и разрешить сдвиг дисплея (0b ,0b )(ждать 40 мкс) включить индикатор и разрешить курсор, установить его тип* (0b ,0b )(ждать 40 мкс) очистить индикатор, курсор домой (0b ,0b )(ждать 1500 мкс)

Пример подключения

Пример просмотра состояния регистров

Цифровой осциллограф В наше время портативным цифровым осциллографом с экраном на ЖКИ никого не удивишь. Фирмы Fluke, Velleman, Metrix, Hameg, и др. предлагают разные модели А ведь сделать самодельный осциллограф не сложно. Из крупных деталей потребуются МК, ЖКИ, 3 переменных резистора и кнопка (рис.8). Параметры осциллографа: диапазон входных напряжений 0…5 В; диапазон входных частот 0…33 кГц; количество отображаемых на ЖКИ аналоговых уровней - 8; максимальная частота дискретизации - 66 кГц;

LCD-дисплеи с контроллером HD44780 LCD-дисплеи с контроллером HD44780 являются пожалуй одними из самых популярных символьных дисплеев для встраиваемых систем. Единственным их недостатком можно считать необходимость задействования для управления дисплеем шести I/O-линий микроконтроллера в 4-разрядном режиме либо одиннадцати I/O- линий в 8-разрядном режиме. Для сокращения числа управляющих линий можно использовать преобразователи последовательного кода в параллельный на основе стандартной логики.

LCD-дисплеи с контроллером HD44780 Однако, управлять HD44780-совместимыми LCD-дисплеями можно даже по одной линии. Такую функцию гораздо удобнее возложить не на микросхемы жёсткой логики, а на программируемый микроконтроллер, сократив, таким образом, стоимость и занимаемую схемой на печатной плате площадь. Этим целям в полной мере удовлетворяют микроконтроллеры Microchip серии PIC10F в миниатюрном корпусе SOT23–6.

Вопросы для самоконтроля Перечислите типы клавиатур, приведите пример подключения матричной клавиатуры. Перечислите типы индикаторов, приведите пример подключения матричного индикатора.