- •Микропроцессорные системы мпс (Полетаев Игорь Алексеевич) 4-й курс Iсеместр 2000/2001 гг.
- •Классификация процессоров
- •Классификация контроллеров. Сферы применения 32-разрядных контроллеров
- •Обзор 8-разрядных контроллеров
- •Общая структура контроллеров семейства mCs-51i8x51
- •Структура контроллеров семейства pic16Схх
- •Структура команд и методы адресации
- •Методы адресации в pic-контроллерах
- •Язык Ассемблер
- •Программирование арифметических операций
- •Табличные вычисления
- •Порты ввода-вывода
- •Таймер-счётчик
- •Последовательный интерфейс mCs51
- •Работа последовательного порта в мультиконтроллерных системах
- •Определение тактовой частоты при работе с последовательным портом
- •Интерфейсы контроллеров pic
- •Последовательный связной интерфейс
- •Структурная схема приёмника
- •Модуль прерываниёMCs51
- •Система прерываний pic16
- •16-Ти разрядные контроллеры на примере mCs96
- •Вопросы
Классификация контроллеров. Сферы применения 32-разрядных контроллеров
Контроллеры направлены на минимальную стоимость устройства в целом. Классификация контроллеров по разрядности:
8-разрядные (наиболее выпускаемые);
16-разрядные (быстродействующие);
32-разрядные (довольно простые, быстродействующие).
Сферы применения:
– везде;
– поуже;
– специализированная.
Области применения 32-разрядных контроллеров:
миниатюрные и сверхминиатюрные компьютеры;
автомобильные и сетевые PC, которые требуют управления виртуальной памятью и стандартной периферией + сниженное энергопотребление;
приставки для видеоигр, требующие высокой графической производительности;
сотовые телефоны и мобильные персональные коммутаторы, предъявляемые к процессорам требования к повышенной мощности;
модемы, факсы и принтеры, требующие дешевых компонентов;
телевизионные приставки – декодеры и проигрыватели видеодисков (DVD);
цифровые камеры (фото и видео).
32-разрядные контроллеры выпускают более 20 различных фирм, основные представители которых: Motorola,Sun,ARM,Hitachi,AMD. Контроллеры можно классифицировать и по производительности.
Критерии существенные для контроллеров:
соотношение цена/производительность;
потребляемая мощность
большинство контроллеров имеют несколько режимов:
а) оперативный (на полную мощность);
б) резервный (с низко потребляемой мощностью);
в) режим с отключенным генератором частоты (спящий режим);
плотность кода;
интеграция периферийных устройств.
Обзор 8-разрядных контроллеров
Архитектура Intel |
Motorola |
MCS 51 |
|
Philips |
PCFxxx |
Семейства | |
Dallas |
DS xxx | ||
Atmen |
AT89 |
Низкая стоимость, наличие flash-памяти программ | |
Архитектура AVR |
Atmen |
AT90 |
|
|
Microchip |
PIC |
|
13.09.2000
Общая структура контроллеров семейства mCs-51i8x51
Это семейство состоит из разновидностей, отличающихся по составу внутренних устройств, энергопотреблению, объёму памяти, типу исполнения ПЗУ и типу корпуса. Структурная схема для 8051AHи8751H:
Рг
временного хранения Порт
0
Счётчик
команд
Память
программ 4kx8 Порт
2
Рг
аккумулятора
Рг
состояния программы аккумулятор Рг
B Блок
управления
Таймер/Счётчик
0,1
Порт
1
Порт
3
Последовательный
интерфейс, периферия
Микросхема имеет 40 выводов: 32 линии ввода-вывода; 2 – нулевое питание; 2 – общий генератор; линия RST– общий сброс; линияALE– фиксация адреса(для работы с внешней памятью); линияPME– выборка внешней программы памяти; линияDEMA–блокировка работы с внутренней программной памятью(для отладки программ).
Контроллеры имеют расширяемую архитектуру: при необходимости увеличения объёма памяти программ или данных можно подключить соответственно внешние ПЗУ или ОЗУ, а также большое количество внешних устройств.
Аппаратная и программная реализация обращения к памяти различны. Используются разные сигналы чтения и разные команды. Т.е. адресное пространство разных типов памяти разделено по 64кбайтов.
Альтернативные функции порта 3 (P3.)
Биты |
Обозначение |
Назначение |
P 3.0 |
R x D |
Вход последовательного порта УАПП (универсальный асинхронный приемопередатчик) |
P 3.1 |
T x D |
Выход УАПП |
P3.2 |
INT0 |
Внешний запрос прерывания №0 |
P3.3 |
INT1 |
Внешний запрос прерывания №1 |
P3.4 |
T0 |
Вход счётчика внешних событий Т/С 0 |
P3.5 |
T1 |
Вход счётчика внешних событий Т/С 1 |
P3.6 |
WR |
Строб записи во внешнюю память данных |
P3.7 |
RD |
Строб чтения с внешней памяти данных |
Устройство выработки внешних интервалов предназначено для формирования внутренних синхросигналов: фаз, тактов и циклов. Количество машинных циклов определяет продолжительность выполнения команд. Максимальная частота Fq=12 МГц, длительность машинного цикла 12 тактов, т.е. при выполнении команды за один цикл производительность = 1MIPS. Все команды выполняются за 1 или 2 машинных цикла, операцииMulиDiv– за 4 машинных цикла.
18.09.2000
Отличительная черта системы команд контроллеров – возможность манипулировать не только байтами, но и отдельными битами. Наличие команд для работы с отдельными битами называется булевым процессором.
Внутреннее устройство контроллера:
Два 16-ти разрядных таймера-счётчика предназначены для подсчёта внешних событий, получения программно-управляемых временных задержек, выполнения времязадающих функций. Содержимое счётчика инкрементируется каждой машиной за цикл при работе от внутреннего генератора. При переходе из всех единиц в нули устанавливается флаг переполнения, и могут вызываться прерывания.
Последовательный порт является универсальным асинхронным приемопередатчиком и может работать в четырёх режимах на разных частотах. Может работать на стандартные интерфейсы RS232 и другие.
В контроллер возможна обработка до пяти прерываний: 2 внешних, 2 от таймера и 1 от последовательного порта. Каждое может отдельно маскироваться, используется два уровня приоритета прерываний. Обработка прерывания начинается с индивидуального адреса.
Внутренняя память данных состоит из двух областей:
память общего назначения (РОН);
регистры специальных функций (SFR).
Адрес |
Обозначение |
Назначение |
00 – 07h |
R0 – R7 |
Банк данных 0 |
08 – 0fh |
R0 –R7 |
Банк данных 1 |
10 – 17h |
R0 – R7 |
Банк данных 2 |
18 – 1fh |
R0 –R7 |
Банк данных 3 |
20 – 2fh |
|
Байты и прямоадресные биты |
30 – 7fh |
|
Байты |
Регистры специальных функций | ||
80h |
P0* |
Порт 0 |
81h |
SP |
Указатель стека |
82h |
DPL |
Указатель данных (предназначен для работы с внешней памятью) |
83h |
DPH | |
87h |
PCON |
Управление энергопотреблением |
88h |
TCON* |
Регистры управления таймеров/счётчиков |
89h |
TMOD |
Регистр режимов таймеров/счётчиков и прерываний |
8Ah |
TL0 |
Младший байт содержимого Т/С 0 |
8Bh |
TL1 |
Младший байт содержимого Т/С 1 |
8Ch |
TH0 |
Старший байт содержимого Т/С 0 |
8Dh |
TH1 |
Старший байт содержимого Т/С 1 |
90h |
P1* |
Порт 1 |
98h |
SCON* |
Регистр управления портом |
99h |
SBUF |
Буфер последовательного порта |
A0h |
P2* |
Порт 2 |
A8h |
IE* |
Регистр динамических прерываний |
B0h |
P3* |
Порт 3 |
B8h |
IP* |
Регистр приоритетов прерываний |
D0h |
PSW* |
Регистр состояния программы |
E0h |
ACC*, A* |
Аккумулятор |
F0h |
B* |
Дополнительный РОН |
* означает, что данному байту можно обращаться побитно.