Микроконтроллеры семейства AVR
Общая характеристика микроконтроллеров семейства AVR, приоритеты регистров в архитектуре данных процессоров. Описание регистров общего назначения, адресация устройств ввода-вывода и памяти. Программный счетчик и стек, прерывания, способы адресации данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 26.04.2011 |
Размер файла | 665,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА AVR
1.Регистры общего назначения и АЛУ
2.Регистр состояния
3.Адресация устройств ввода-вывода и памяти SRAM
4.Программный счетчик и стек
5.Прерывания
6.Способы адресации данных
7.Регистры общего назначения
ВЫВОДЫ
СПИСОК ЛИТЕРАТУРЫ
ВВЕДЕНИЕ
Тема реферата «Микроконтроллеры семейства AVR» по дисциплине «Однокристальные микроконтроллеры и микроЭВМ».
Цель работы - описать аппаратные средства, дать обобщенную архитектуру микроконтроллеров семейства AVR, привести особенности программирования.
Микроконтроллеры AVR считаются одним из направлений, активно развиваемых корпорацией Atmel. На настоящий момент соотношение «цена - производительность - энергопотребление» для микроконтроллеров AVR остается едва ли не лучшим в разряде 8-разрядных микроконтроллеров. Семейство интенсивно развивается, усложняется и совершенствуется. AVR - продукт корпорации Atmel (1997 г.). В августе 1999 года уже были три семейства AVR - tiny, classic и mega (www.atmel.com).
МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА AVR
Как и в любом процессоре, особенности AVR являются следствием общих принципов, использованных при их разработке. Контроллеры реализованы на базе набора регистров, представленных в графическом виде на рисунке 1. Структура микроконтроллера AVR показана на рисунке 2. Эта организация обеспечивает высокую эффективность процессора при обработке данных. Архитектура AVR оптимизирована, чтобы соединить достоинства Гарвардской и Принстонской архитектур для достижения очень быстрого и эффективного выполнения программ [11].
Рис. 1. Приоритеты регистров в архитектуре процессоров AVR
1.Регистры общего назначения и АЛУ
Простое ядро процессора, которое содержит регистры общего назначения и АЛУ, может выполнять 91 из 120 команд, реализуемых AVR. Каждая из этих команд использует содержимое регистров общего назначения при выполнении операций (рисунок 3).
Есть два типа команд, которые могут выполняться этим ядром. Арифметические операции выполняются над содержимым РОН, а операции изменения последовательности команд могут реализовать только переходы в программе, но не могут производить вызов подпрограмм или сохранение содержимого программного счетчика.
При обращении к РОН и АЛУ используется только один способ адресации - прямая регистровая адресация, которая осуществляется путем указания адреса выбираемого регистра. В команде могут быть указаны адреса одного или двух регистров. Например, сложение содержимого двух регистров с сохранением результата в первом из них выполняется при помощи команды add: (add А, В), которая может быть записана в виде: А = А + В - или представлена графически (рисунок 4).
Если второй операнд не требуется, в команде указывается только один регистр, как, например, в команде инверсии. Второй операнд может являться частью команды (непосредственная адресация), в этом случае данные с шины команд поступают на шину данных.
Рис. 2. Структура микроконтроллера AVR 8515 фирмы Atmel
Рис. 3. Структурная схема регистров общего назначения и АЛУ
Рис. 4. Пути передачи данных при выполнении команды AVR add А,В
Прибавление константы выполняется при помощи команды addiw A, const, что означает А = А + const и показано графически на рисунке 5. Содержимое программного счетчика инкрементируется после того, как очередная команда считывается из памяти или принимает новое значение при выполнении команды безусловного перехода jmp (рисунок 6).
Рис. 5. Пути передачи данных при выполнении команды adiw A, const
Рис. 6. Пути передачи данных при команде безусловного перехода jump label
2.Регистр состояния
При первом взгляде на описание регистра состояния в документации на микроконтроллеры AVR вас может удивить количество битов в нем и кажущаяся сложность выполняемых ими функций. После включения регистра состояния структура AVR будет иметь вид, показанный на рисунке 7.
Рис. 7. Архитектура AVR с учетом регистра состояния SREG
Регистр состояния является частью адресного пространства ввода-вывода и в нём устанавливаются признаки результата арифметических операций. Отдельные биты регистра имеют следующее назначение (таблица 1):
Таблица 1
Биты регистра состояния
Номер бита |
Обозначение |
Назначение |
|
0 |
С |
Флаг переноса-заёма |
|
1 |
Z |
Флаг нуля |
|
2 |
N |
Флаг отрицательного результата |
|
3 |
V |
Флаг переполнения |
|
4 |
S |
Флаг знака |
|
5 |
H |
Флаг переноса между тетрадами (полупереноса) |
|
6 |
T |
Временный бит |
|
7 |
I |
Бит общего разрешения прерываний |
Основным признаком в регистре состояния является флаг нуля, который устанавливается в «l», когда результатом операции является ноль. Многие команды могут изменить этот флаг, что делает его неудобным для передачи параметров. Вместо него лучше использовать флаг переноса С, который применяется для этих целей другими процессорами во многих приложениях. В ряде случаев более удобным может оказаться использование временного бита Т, с помощью которого можно задавать значение одного бита, в качестве условия ветвления программы.
Как и в большинстве микроконтроллеров и микропроцессоров, флаг переноса-заёма С в AVR устанавливается после каждой операции сложения или вычитания. Он также используется для временного сохранения старшего или младшего бита операнда при операциях обыкновенных и циклических сдвигов, что типично для многих микроконтроллеров. При сложении флаг переноса устанавливается в «l», если результат больше $FF, а при вычитании - если результат меньше нуля.
Флаг переноса между тетрадами Н (полуперенос) устанавливается после выполнения сложения или вычитания, в процессе которого произошел перенос из младшей или заем в старшей тетраде (полубайте). Например, если прибавили 7 к содержимому регистра, в котором хранилось число 9:
add R16, R17 ; R16 = 9, R17 = 7
Регистр R17 содержит число 7, и после сложения с содержимым R16, в котором хранится 9, результатом будет число $10, которое не может быть размещено в младшей тетраде. В этом случае будет установлен флаг Н в регистре состояния. Если младшая тетрада результата имеет значение меньшее, чем 10, то флаг Н будет сброшен в «0».
Как и флаги полупереноса для всех других контроллеров, бит Н меняется при переносе-заёме из младшего шестнадцатиричного разряда (тетрады). Его изменение не основано на десятичном результате операции. Но если требуется контролировать декадный перенос при операциях с двоично-десятичными числами, бит полупереноса может быть непосредственно использован при выполнении операции сложения, как это показано выше. Если результат операции больше или равен 10, то устанавливается значение флага Н = 1, которое указывает, что правильный двоично-десятичный результат может быть получен путем прибавлении числа 6.
Использование флагов отрицательного результата N, переполнения V и знака S может показаться довольно сложным, если рассматривать, как они устанавливаются в «1» или сбрасываются в «0» при арифметических операциях. Следует понять их назначение, и тогда их применение станет простым и логичным. Эти биты надо проверять только после операции сложения или вычитания, в процессе которых используются или получаются отрицательные числа, представляемые в дополнительном коде.
Флаг отрицательного результата N устанавливается в «1», если старший (знаковый) разряд результата (бит 7) равен «1». Когда знаковый разряд установлен в «1», это часто означает, что результат отрицателен. Следует, однако, отметить, что знаковый разряд может быть установлен в «1» и в результате логической операции. В этом случае знаковый разряд не должен использоваться в каких-либо других целях, кроме указания на то, что он был установлен в 1 после соответствующей операции.
Флаг переполнения V устанавливается при сложении или вычитании двух чисел со знаком, представленных в дополнительном коде (дополнение до двух) в случае, если значение полученного результата выходит за пределы допустимого диапазона, который для восьмибитового числа со знаком составляет от минус 128 до плюс 127. При сложении двух положительных чисел флаг V устанавливается в «1» если сумма больше 127, в случае сложения двух отрицательных чисел - если результат меньше минус 128. Этот флаг показывает, что результат не является правильным 8-разрядным числом со знаком.
Вы можете сказать, что на самом деле результат является правильным, только его нельзя разместить в 8-разрядном регистре, и будете правы. Для разрешения этой ситуации служит флаг знака S, который позволяет представить результат сложения или вычитания 8-разрядных чисел в дополнительном коде в виде 9-разрядного числа со знаком. Если после операций сложения или вычитания чисел со знаком флаг переполнения V установлен в «1», то результатом будет 9-разрядное число со знаком, причем старшим (знаковым) разрядом числа является флаг S, а восемь бит результата будут храниться в 8-разрядном регистре-приемнике.
Бит Т - временный бит, который используется для хранения результата команд BST и BLD или для передачи однобитовых параметров. Хотя бит Т не изменяется никакими другими командами, он должен быть сохранен вместе с другими битами регистра состояния при выполнении прерываний или подпрограмм, которые могут изменить содержимое этого регистра.
Последним является общий флаг разрешения прерываний I. Когда он установлен в «1», запросы прерываний будут обслуживаться. Если флаг I сброшен в «0», то обслуживание прерываний будет отложено до тех пор, пока этот флаг не будет установлен в «1».
3.Адресация устройств ввода-вывода и памяти SRAM
микроконтроллер процессор регистр память адресация
Понимание того, как адресуются регистры общего назначения, а как - SRAM, может быть затруднено. Это верно, когда контроллеры младших моделей семейства AVR1200 работают вместе с контроллерами AVR8515, реализующими полный набор функций. Реализация обращения к памяти, регистрам общего назначения и регистрам ввода-вывода может показаться сложной, так как существует два способа обращения к ним. Первый способ - прямое обращение к каждой из этих областей данных. Этот способ прямого доступа является основным при выполнении арифметических операций. Второй способ доступа объединяет все три области регистров и памяти, включая внешнюю память, образуя общее адресное пространство данных (рисунок 8).
Регистры ввода-вывода - это 64-байтовый блок, который содержит как регистры управления процессором, так и регистры интерфейса ввода-вывода. Команды in и out используются для обмена данными между РОН и регистрами ввода-вывода. Внутренняя память SRAM - это блок оперативной памяти для хранения переменных. Эта память доступна при помощи команд load и store, которые позволяют также обращаться к РОН и регистрам ввода-вывода, которые располагаются в соответствующих областях адресного пространства данных.
Рис. 8. Организация адресного пространства процессоров AVR
Последней областью в адресном пространстве данных является внешняя память. Вся оставшаяся часть 64-килобайтного пространства данных может быть использована для адресации внешней памяти SRAM или устройств ввода-вывода. Хотя различные модели микроконтроллеров семейства AVR отличаются составом регистров, имеется ряд регистров, общих для всех моделей, которые располагаются по одним и тем же адресам (таблица 2).
Таблица 2
Адреса |
||||
Регистры ввода-вывода |
Область данных |
Имя регистра |
Назначение |
|
$3F |
$5F |
SREG |
Регистр состояния |
|
$ЗЕ |
$5Е |
SPH |
Указатель стека - старший байт |
|
$3D |
$5D |
SPL |
Указатель стека - младший байт |
|
$ЗВ |
$5В |
GIMSK |
Регистр маски прерываний |
|
$ЗА |
$5А |
GIFR |
Регистр запросов прерываний |
|
$35 |
$55 |
MCUCR |
Регистр управления микроконтроллера |
Адреса в пространстве регистров ввода-вывода
Другие регистры выполняют функции ввода-вывода, которые специфичны для определенных моделей микроконтроллеров.
При выполнении арифметических операций используются только регистры общего назначения, и их адреса не зависят от того, используется ли для обращения к ним адреса РОН (при использовании арифметических инструкций) или адресное пространство данных (при использовании команд load, store). Обращение к регистрам ввода-вывода производится либо при помощи команд in, out с использованием области адресов ввода-вывода или при помощи команд load, store в адресном пространстве данных. Если используются команды load, store, то к абсолютному адресу должно быть прибавлено начальное смещение $20 (десятичное число 32), как показано в приведенной выше таблице адресов регистров ввода-вывода.
Обращение к внутренней памяти SRAM или внешней памяти производится только через адресное пространство данных при помощи команд load, store, которые используют абсолютные адреса. Если надо считать операнд из внешней памяти, то обращение займет на один или два цикла больше, чем при использовании внутренней памяти.
Команды load, store позволяют использовать индексные регистры. В адресном пространстве РОН последние 6 регистров могут использоваться как три 16-разрядных индексных регистра, содержимое которых загружается либо из адресного пространства данных, либо из памяти программ. Эти индексные регистры имеют имена X (адреса $1А-$1В), Y (адреса $1C-$1D) и Z (адреса $1E-$1F). Индексный регистр Z может также использоваться для чтения из памяти программ отдельных байтов, что позволяет хранить в ней таблицы данных.
После всего указанного структура AVR становится такой, как показано на рисунке 7.9. В этой структуре показана шина адреса, которая используется для адресации регистров и оперативной памяти. Адрес может формироваться разными способами, например, он может быть указан в команде или определяться с использованием индексного регистра
Младшие модели микроконтроллеров AVR1200 не содержат оперативной памяти SRAM и не выполняют команды обращения к РОН и регистрам ввода-вывода, использующие единое адресное пространство данных (рисунок 10). В этой модели имеются три отдельных адресных пространства для памяти программ, РОН и регистров ввода-вывода, которые не объединяются в единое адресное пространство данных. К регистрам ввода-вывода можно обратиться только при помощи команд in и out, а команды load, store фактически не используются. Младшие модели AVR имеют также только один индексный регистр Z, расположенный по адресам $1E-$1F в области регистров общего назначения. Этот индексный регистр может использоваться для выборки данных, хранящихся или в РОН, или в памяти программ.
Рис. 9. Структура AVR с памятью SRAM и регистрами ввода-вывода
Рис. 10. Области памяти в архитектуре младших моделей AVR
4.Программный счетчик и стек
Реализация стека - главное отличие между младшими моделями AVR и другими микроконтроллерами этого семейства. В младших моделях AVR стек реализован в виде оперативной памяти типа LIFO («последний пришел - первый ушел»), добавленной к программному счетчику. Когда вызывается подпрограмма или происходит запрос прерывания, содержимое счетчика команд вводится в этот стек (рисунок 11). В AVR1200 такой стек имеет глубину в три элемента. Это значит, что вы можете иметь только три вложенные подпрограммы или два вложенных вызова функции в активном обработчике прерывания. Данное обстоятельство значительно ограничивает возможности этого микроконтроллера.
Структурная схема для AVR1200 и других младших моделей приведена на рисунке 12.
Другие модели семейства AVR не имеют таких жестких ограничений на объем стека, так как они используют для размещения стека внутреннюю память SRAM и, возможно, внешнюю память (рисунок 13). Такая структура позволяет использовать в качестве стека весь доступный объем оперативной памяти.
Использование значительного объема памяти RAM в качестве стека дает ряд преимуществ при разработке приложений. Окончательная структурная схема микроконтроллеров AVR имеет вид, показанный на рисунке 14.
Рис. 11. Счетчик команд и стек в младших моделях AVR
Рис. 12. Структурная схема младших моделей AVR с учетом стека
Рис.13. Программный счетчик и стек в старших моделях AVR
Рис. 14. Полная архитектура процессора AVR с указателем стека
5.Прерывания
Реализация прерываний в AVR является специфичной для конкретных приложений, так как легко можно написать обработчик прерываний, который абсолютно не будет менять контекстовую информацию контроллера (содержимое стека, регистра состояния и других регистров), или такой, который будет сохранять содержимое всех РОН и некоторых специальных регистров.
Если произошел запрос прерывания и флаг I в регистре состояния установлен в «1», то адрес следующей команды сохраняется в стеке, а выполнение программы продолжается с адреса, хранящегося в соответствующем векторе прерывания. Когда запрос прерывания получен и программа перешла по этому вектору, флаг I сбрасывается в «0», чтобы предотвратить возможность вызова нового прерывания во время обработки прерывания текущего.
Флаг I будет снова установлен в «1» в конце обработчика прерывания, когда выполняется команда возврата reti. Он также может быть установлен в «1» в процессе обработки (после сохранения контекстовых регистров), чтобы разрешить вложенные прерывания. Средние и старшие модели AVR могут обрабатывать столько вложенных прерываний, на сколько хватит объема стека для сохранения содержимого программного счетчика и регистров контекста.
Младшие модели имеют ограниченный объем стека (три позиции), который может быстро переполниться при выполнении вложенных прерываний или подпрограмм.
6.Способы адресации данных
Основным способом доступа к данным является прямое обращение к регистрам общего назначения. Обычно в формате команды отводятся пять бит, которые позволяют адресоваться к любому регистру. Прямое обращение к одному из РОН показано на рисунке 15. Обычно такая адресация используется для операций с содержимым одного регистра (инкремент, декремент, инверсия знака, очистка и т. д.). Некоторые из этих команд дважды повторяют адрес в коде команды.
Рис. 7.15. Прямая адресация в AVR
7.Регистры общего назначения
Команды, оперирующие с двумя регистрами, действуют, в основном, аналогичным образом. В этих командах регистр-приемник (destination) указывается перед регистром-источником (source), то есть является первым параметром. Таким образом, команда
add R0, R1
реально выполняется так: R0 = R0 + R1. Рассмотренные способы адресации операндов называются прямой регистровой адресацией (рисунок 16).
Рис. 16. Прямая адресация AVR к двум РОН
Операнды могут также входить в состав команды. В других контроллерах это называется «непосредственной адресацией». В AVR будем называть этот способ адресации «непосредственной прямой регистровой» (рисунок 17). Хорошим примером команды с такой адресацией является ORI: так как поле адреса составляет 4 бита, возможно обращаться только к 16 старшим РОН.
Рис. 17. Непосредственная адресация AVR
Это, очевидно, окажет влияние на то, как разместить данные в рабочих регистрах. Чтобы избежать ошибок, можно использовать в качестве рабочих 16 старших регистров общего назначения, имеющих адреса с $10 по $1F.
Последняя форма прямой адресации, применяемая для доступа ко всему объему адресуемой памяти, использует второе слово команды для указания 16-разрядного адреса. При этом способе адресации данные, размещенные в любой точке адресуемой памяти, поступают в РОН или выбираются из них. Есть две особенности, на которые стоит обратить внимание при такой адресации. Первая особенность - опять доступны только 16 старших РОН. Вторая особенность - команды с такой адресацией не реализуются в младших моделях AVR1200. В этих моделях для передачи данных между РОН и набором регистров ввода-вывода используются команды in и out, реализующие прямую адресацию двух регистров.
Последний способ обращения к данным - косвенная адресация. По технической документации на микроконтроллеры AVR видно, что в ней используется пять рисунков для описания этого способа адресации, реализация которого иллюстрируется на рисунке 18. На этом рисунке показана только косвенно-регистровая адресация и не приведены ее варианты с предекрементом и постинкрементом. Основные команды косвенной адресации используют содержимое индексных регистров в качестве адреса для выборки данных. Это похоже на индексную адресацию в большинстве других микроконтроллеров. Это единственный режим, доступный в младших моделях AVR, где для обращения к РОН может использоваться только индексный регистр Z, а РОН и регистры ввода-вывода не образуют общее регистровое пространство.
Рис. 18. Косвенная адресация к РОН-памяти данных в AVR
При обычной косвенно-регистровой адресации содержимое индексного регистра не изменяется при выполнении операции. Для получения эффективного адреса можно использовать положительное смещение, прибавляемое к содержимому индексного регистра. Такой способ адресации называется косвенно-регистровой адресацией со смешением. Смещение может иметь значение от нуля до 63 и прибавляется к величине, хранящейся в индексном регистре. Такой способ адресации наиболее эффективен при обращении к структуре данных, когда смещение указывает на нужный элемент в структуре. Полученный эффективный адрес не сохраняется после операции.
Есть и другие варианты косвенной адресации: косвенно-регистровая с предекрементом и косвенно-регистровая с постинкрементом. При их использовании происходит изменение содержимого индексного регистра в процессе выполнения команды - либо до обращения к памяти (предекремент), либо после (постинкремент). Значительным преимуществом этих команд является возможность организации стека, кроме того они могут служить для индексации элементов в структурах данных. Это позволяет эффективно применять AVR при разработке компиляторов для языков высокого уровня, которые используют локальные переменные.
В технической документации для микроконтроллеров AVR показано, каким образом можно обеспечить обращение к данным, размещенным в памяти программ, и как изменяется содержимое программного счетчика.
ВЫВОДЫ
Эффективность микроконтроллеров семейства AVR поддерживается наличием флаш-памяти для хранения программ с возможностью внутрисхемного программирования. Но наличие только 32 регистров общего назначения является ограничением при написании прикладных программ. Новые модели AVR обладают дополнительными периферийными устройствами и вариантами реализации памяти, что значительно обогащает данное семейство микроконтроллеров.
СПИСОК ЛИТЕРАТУРЫ
1. Мирский Г.Я. Микропроцессоры в измерительных приборах / Г.Я. Мирский. - М.: Радио и связь, 1984. - 160 с.
2. Шилейко А.В. Микропроцессоры / А.В. Шилейко, Т.И. Шилейко. - М.: Радио и связь, 1986. - 112 с.
3. Сташин В.В. Проектирование цифровых устройств на однокристальных микроконтроллерах / В.В. Сташин, А.В. Урусов, О.Ф. Мологонцева. - М.: Энергоатомиздат, 1990. - 224 с.
4. Голубцов М.С. Микроконтроллеры AVR: от простого к сложному / М.С. Голубцов, А.В. Кириченкова. - М.: СОЛОН-Пресс, 2006. - 304 с.
5. Предко М. Руководство по микроконтроллерам. Т. 1 / М. Предко. - М.: Постмаркет, 2001. - 416 с.
6. Басманов А.С. Микропроцессоры и однокристалные микроЭВМ: Номенклатура и функциональные возможности / А.С. Басманов, Ю.Ф. Широков под ред. В.Г. Домрачёва. - М.: Энергоатомиздат, 1988. - 128 с.
7. Варламов И.В. Микропроцессоры в бытовой технике / И.В. Варламов, И.Л. Касаткин. - М.: Радио и связь, 1990. - 104 с.
8. Никонов А.В. Однокристальные микроЭВМ и микроконтроллеры: учеб. пособие / А.В. Никонов. - Омск: Изд-во ОмГТУ, 2009. - 56 с.
9. Токхейм Р. Основы цифровой электроники. - М.: Мир, 1998. - 392 с.
10. Денисов К.М. Микропроцессорная техника. Конспект лекций [Электронный ресурс] . - URL: http://ets.ifmo.ru/denisov/lec/oglavlen.htm .
11. Евстифеев А.В. Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL / А.В. Евстифеев. - М.: Издательский дом «Додэка-XXI», 2004. - 560 с.
12. Хартов В.Я. Микроконтроллеры AVR. Практикум для начинающих / В.Я. Хартов. - М: Изд-во МГТУ им. Н.Э. Баумана, 2007. - 240 с.
13. Баранов В.Н. Применение микроконтроллеров AVR: схемы, алгоритмы, программы / В.Н. Баранов. - М.: Издательский дом «Додэка-ХХ1», 2004. - 288 с.
14. International Journal of Electrical Engineering Education. FindArticles.com. [Электронный ресурс] http://findarticles.com/p/articles/
Размещено на Allbest.ru
Подобные документы
Использование пользовательских регистров. Регистры общего назначения. Элементарные и базовые типы данных. Язык микроопераций, ассемблер. Директивы резервирования памяти. Система команд, организация вычислений. Сложные структуры данных. Схемы ввода-вывода.
курс лекций [280,7 K], добавлен 02.12.2009Архитектура микроконтроллеров семейства Mega. Организация памяти. Способы адресации памяти данных. Энергонезависимая память данных. Таблица векторов прерываний. Счетчик команд и выполнение программы. Абсолютный вызов подпрограммы. Сторожевой таймер.
дипломная работа [213,9 K], добавлен 02.04.2009Участие регистров ввода-вывода в работе периферийных устройств. Отражение состояния периферийных устройств в состоянии разрядов регистров состояния. Перечень имен и номеров регистров ввода-вывода, управления и состояния микроконтроллеров разных типов.
курсовая работа [171,2 K], добавлен 22.08.2010Отличительные особенности микроконтроллеров AVR семейства Mega. Характеристики процессора, подсистемы ввода-вывода. Архитектура ядра и организация памяти. Регистры общего назначения. Алгоритмы моделирования команд. Реализация модели внешнего устройства.
курсовая работа [3,7 M], добавлен 24.06.2013Архитектура микроконтроллеров AVR и PIC. Описание и структура регистров из области ввода/вывода. Внутренняя и внешняя память SRAM микроконтроллеров AVR. Особенности аналого-цифрового преобразования. Переключение в режим параллельного программирования.
лекция [755,2 K], добавлен 28.05.2010Принципы сегментации памяти. Классификация регистров по назначению и способу использования. "Перевернутое" представление данных в центральном процессоре. Адресация ввода/вывода информации. Программное, внутреннее и аппаратное прерывание выполнения команд.
презентация [107,4 K], добавлен 27.08.2013Определение основных функций процессора. Микросхема процессора и выводы шин адреса, данных и управления. Функции памяти и устройств ввода/вывода (мыши, клавиатуры, джойстика). Описание функций внутренних регистров микропроцессора. Оперативная память.
презентация [603,1 K], добавлен 17.06.2014Нахождение наибольшего элемента массива, расположенного во внутренней памяти, сохранение его значения в стеке. Описание используемых команд: запись из внутренней памяти в аккумулятор данных, безусловный переход по метке. Составление кода программы.
лабораторная работа [41,4 K], добавлен 18.11.2014Характеристика, разновидности, архитектура процессоров. Понятие интерфейса, описание видов шин, внешних запоминающих устройств, особенности конструкции. Специфика файловой системы устройства подсистемы ввода/вывода, достоинства, недостатки, база данных.
курс лекций [747,0 K], добавлен 24.06.2009Назначение, особенности, структура и функционирование различных моделей микроконтроллеров. Средства их отладки и программирования. Способы адресации и система команд. Набор периферийных устройств. Порты ввода/вывода. Модуль формирования ШИМ-сигналов.
курсовая работа [201,9 K], добавлен 25.12.2014