
- •Классификация современных мп.
- •Организация мп систем
- •Організація однокристального мікроконтролера мсs-51. Типи пам'яті. Карта пам'яті. Режими адресації. Особливості системи команд: команди пересилання.
- •Команды пересылки данных.
- •Регістрова структура мікроконтролера мс5-51. Особливості системи команд: арифметичні команди, логічні команди, бітові операції, команди передачі керування.
- •Блок регистров специальных функций(sfr)
- •Однокристальний мікро контролер mcs-51: порти вводу-виводу, система переривань. Службові регістри переривань, процедура обробки переривань.
- •Регистр приоритетов прерываний (ip)
- •Однокристальний мікро контролер mcs-51: система таймерів-лічильників. Структура таймерів-лічильників. Службові регістри. Режими роботи. Приклад обробки переривань від таймера 0.
- •2.7 Платформа java. Створення та виконання програм. Принципи об’єктно-орієнтованого підходу. Інкапсуляція. Композиція. Наслідування. Поліморфізм.
- •Платформа java. Типи даних. Організація пам’яті. Структура класів. Статичні елементи. Конструктори. Абстрактні класи та інтерфейси. Внутрішні класи. Все является объектом
- •Примитивные типы (примитивы)
- •Создание новых типов данных
- •Поля и методы
- •Методы, аргументы и возвращаемые значения
- •Ключевое слово static
- •Статические методы
- •Конструктор гарантирует инициализацию
- •Класс Class
- •Абстрактные классы и методы
- •Интерфейсы
- •Внутренние классы Вложенные классы (Inner)
- •Классы, вложенные в методы (локальные внутренние классы)
- •Анонимные внутренние классы
- •Статические внутренние классы (nested)
- •Компоненты и контейнеры
- •Диспетчеры компоновки
- •Обработка событий
- •Платформа java: потоки вводу-виводу, Класифікація потоків. Класи-фільтри. Байтові та текствові потоки. Потоки ввода/вывода и файлы
- •Классификация классов ввода-вывода
- •Потоки фильтров
- •Текстовые потоки
Організація однокристального мікроконтролера мсs-51. Типи пам'яті. Карта пам'яті. Режими адресації. Особливості системи команд: команди пересилання.
Отличием микроконтроллера семейства MCS-51 от микропроцессоров широкого применения:
- кроме процессора на кристалле есть периферийные устройства
- на кристалле расположена память ОЗУ (оперативное запомин. устройство), ПЗО (постоянное запомин. устройство)
- выполнение программы из ПЗУ
Состав микроконтроллера:
- восьмиразрядный микропроцессор
- ОЗУ для хранения данных (128 байт) [RAM] (.. 2к)
- ПЗО (4к… 64к) [RОM]
- 4х8р порта ввода-вывода
GPIO (general purpose input/output)
(можно использовать как 4х8р линии так и 32 отдельных линии)
- 2х16р таймера счетчика Т/С – timer/counter
- блок обработки прерываний Interupt (2 внешних прерывания)
- последовательный порт UART
- тактовый генератор
- блок обмена с внешней памятью (64к программ, 64к данных)
Типы памяти
Архитектура микроконтроллера – гарвардская. Для хранения программных данных используются отдельные блоки памяти, со своими адресами. с нимим работают разные команды и управляются от разных сигналов.
Карта памяти
Внутренняя память данных
SFG – special functional register
Внутренняя память программ (кодов)
2^10=> 1к (килобайт)
2^10=> 1М (мегабайт)
2^10=> 1Г (гигабайт)
2^10=> 1Т (терабайт)
Внешняя память данных
кроме памяти есть регистры, с ними быстрее работать + адрес у регистра короче
Стек-специально организованная область памяти
БР0 – 00h-07h
БР1 - 08h-0Fh
БР2 - 10h-17h
БР3 - 18h-1Fh
Система команд семейства MCS-51 содержит 111 базовых команд, которые по функциональному признаку можно подразделить на пять групп:
команды пересылки данных (Data Transfer);
арифметические команды (Arithmetic);
логические команды (Logic);
команды передачи управления (Control Transfer or Program Branching);
команды обработки битовых переменных (Boolean Variable Manipulation).
Формат команд - одно-, двух- и трехбайтовый, причем большинство команд (94) имеют формат один или два байта. Первый байт любых типа и формата всегда содержит код операции, второй и третий байты содержат либо адреса операндов, либо непосредственные операнды.
Состав операндов включает в себя операнды четырех типов: биты, ниблы (4 разряда), байты и 16-битные слова. Время исполнения команд составляет 1, 2 или 4 машинных цикла. При тактовой частоте 12 мГц длительность машинного цикла составляет 1 мкс, при этом 64 команды исполняются за 1 мкс, 45 команд - за 2 мкс и 2 команды (умножение и деление) - за 4 мкс.
Набор команд MCS-51 поддерживает следующие режимы адресации.
Прямая адресация (Direct Addressing).
Операнд определяется 8-битным адресом в инструкции. Эта адресация используется только для внутренней памяти данных и регистров SFR.
Косвенная адресация (Indirect Addressing).
В этом случае инструкция адресует регистр, содержащий адрес операнда. Данный вид адресации может применяться при обращении как к внутреннему, так и внешнему ОЗУ. Для указания 8-битных адресов могут использоваться регистры R0 и R1 выбранного регистрового банка или указатель стека SP.
Для 16-битной адресации используется только регистр "указатель данных" (DPTR - Data Pointer).
Регистровая адресация (Register Instruction).
Данная адресация применяется для доступа к регистрам R0+R7 выбранного банка. Команды с регистровой адресацией содержат в байте кода операции трехбитовое поле, определяющее номер регистра. Выбор одного из четырех регистровых банков осуществляется программированием битов селектора банка (RS1, RS0) в PSW.
Непосредственная адресация (Immediate constants).
Операнд содержится непосредственно в поле команды вслед за кодом операции и может занимать один или два байта (data8, data16).
Индексная адресация (Indexed Addressing).
Индексная адресация используется при обращении к памяти программ и только при чтении. В этом режиме осуществляется просмотр таблиц в памяти программ. 16-битовый регистр (DPTR или PC) указывает базовый адрес требуемой таблицы, а аккумулятор указывает на точку входа в нее. Адрес элемента таблицы находится сложением базы с индексом (содержимым аккумулятора).
Другой тип индексной адресации применяется в командах "перехода по выбору" (Case Jump). При этом адрес перехода вычисляется как сумма указателя базы и аккумулятора.
Неявная адресация (Register-Specific Instructions).
Некоторые инструкции используют индивидуальные регистры (например, операции с аккумулятором, DPTR), при этом данные регистры не имеют адреса, указывающего на них; это заложено в код операции.