Сборка лекции, страница 7
Описание файла
Документ из архива "Сборка лекции", который расположен в категории "". Всё это находится в предмете "электроника" из , которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "электроника и микропроцессорная техника" в общих файлах.
Онлайн просмотр документа "Сборка лекции"
Текст 7 страницы из документа "Сборка лекции"
.include "8535def.inc"
; Задание символических имен регистрам
.def temp=r19
.def temp1=r18
.def rz8=r21 ; младший байт АЦП,
.def h10=r22 ; старший байт АЦП
.cseg
.org 0
rjmp start
.org ADCCaddr
rjmp Adc
;инициализация
start:ldi temp,LOW(RAMEND)
out spl,temp
ldi temp,HIGH(RAMEND)
out sph,temp
rcall port_init
rcall adc_init
sei
loop:
rjmp loop
Adc:
in temp,sreg
push temp
in rz8,adcl
in h10,adch
sbi adcsr,adsc ;уст-ка в 1 adsc
pop temp
out sreg,temp
reti
port_init:
ldi temp,00
out ddra,temp
ldi temp,$ff
out ddrb,temp
ret
adc_init:
ldi temp,0b10001101;3 мл.разр.3.69 МГц/32
out adcsr,temp
ldi temp,$01 ; 1-й вывод КА - аналог.вх.
out admux,temp
sbi adcsr,adsc ;уст-ка в 1 adsc
ret
Микроконтроллеры INTEL.
Корпорация INTEL является пионером в области разработки и выпуска МК. По количеству выпускаемых INTEL изделий этого класса, а значит, по числу их пользователей МК почти в 10 раз превосходят микропроцессоры.
В 1976 году на рынке появился первый 8-разрядный МК 8048. В настоящее время INTEL производит несколько семейств МК, включающих в себя более сотни моделей.
Появление отечественных однокристальных МК позволило создать целый ряд унифицированных устройств, который используются в серийно выпускаемых медицинских приборах и аппаратах.
Основные технические характеристики отечественных микроконтроллеров и их зарубежных аналогов приведены в таблице, которая не включает модели серии 1830 с низким потреблением электрической энергии.
Микросхема КР1816 | Аналог INTEL | Объём внутренней памяти команд (байт) | Тип памяти команд | Объём памяти данных (байт) | Максимальная частота (МГц) |
ВЕ35 | 8035 | Нет | Внешний | 64 | 6 |
ВЕ48 | 8748 | 1К | УФППЗУ | 64 | 6 |
ВЕ39 | 8039 | Нет | Внешний | 128 | 11 |
ВЕ49 | 8049 | 2К | ПЗУ | 128 | 11 |
УФППЗУ – постоянное запоминающее устройство с УФ стиранием.
Микроконтроллеры семейства MCS-51.
Архитектура семейства MCS-51 фирмы INTEL была в своё время определена настолько удачно, что является сегодня фактическим стандартом на рынке 8-разрядных МК.
МК семейства MCS-51 на сегодняшний день являются самыми распространёнными среди однокристальных МК для встроенных применений, несмотря на жёсткую конкуренцию и наличие широкой гаммы альтернативных предложений. Данные МК выпускают более 20 всемирно известных фирм-производителей.
Семейство MCS-51 насчитывает около 200 модификаций, в т.ч. микросхемы повышенной производительности и контроллеры с чрезвычайно развитой периферией.
8-разрядный МК архитектуры С51, разработанной фирмой INTEL, уже много лет лидируют на мировом рынке как по количеству разновидностей, так и по количеству выпускающих их фирм.
Основными производителями «семейств» С51 являются:
• Philips
• Atmel
• Siemens
• Intel
• Winbond
• Dallas
• OKI
• Cygnal и другие.
Первый МК семейства 8051 АН (КР1816ВЕ51) по сравнению с МК 48 имел следующие преимущества:
• Объём адресуемой памяти программ и данных по 64 кБайт
• Объём внутренней памяти программ 4 кБайта
• Реализованы команды умножения и деления
• Увеличено количество линий связи и таймеров-счётчиков
• Введён последовательный интерфейс
PCA - programmable counter array.
PCA предназначен для выполнения операций счёта и определения длительности интервалов времени без участия процессора.
На рисунке приведена структурная схема МК 8051АН, которая включает следующий набор функциональных моделей:
• 8-разрядное АЛУ
• Память программ 4 кБайта
• Память данных 128 кБайт
• 4 8-разрядных программируемых канала ввода-вывода
• 2 16-битовх таймера-счётчика
• Блок прерываний
• Последовательный интерфейс
• Тактовый генератор
• Блок управления
В состав АЛУ входят:
• Аккумулятор, предназначенный для приёма и хранения результата, полученного при выполнении арифметических и логических операций.
• Регистр В, используемый во время операций умножения и деления. При выполнении других команд он может использоваться как дополнительный сверхоперативный регистр.
• Регистр состояния хранит информацию о состоянии АЛУ при выполнении программы.
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CY | AC | F0 | RS1 | RS0 | OV | - | P |
P – бит четности. Аппаратно сбрасывается / устанавливается в каждом командном цикле для указания четного / нечетного количества разрядов А, находящихся в 1 состоянии;
OV – бит переполнения, аппаратно устанавливается в 1 состояние при переполнении в процессе выполнения арифметических операций;
RS0, RS1 – указатели банков рабочих регистров;
F0 - бит состояния, определяемый пользователем;
CY, AC – признаки переноса и дополнительного переноса.
Счётчик команд предназначен для формирования текущего 16-разрядного адреса программы.
Регистр указатель данных (DPTR) предназначен для хранения 16-разрядного адреса внешней памяти данных. Состоит из 2 8-разрядных программно доступных регистров.
Лекция 12. 05.12.2006.
Основное различие состоит в том, что в нашем новом МК реализована аккумуляторная архитектура.
Организация памяти.
Все МК данного семейства имеют несколько адресных пространств, функционально и логически разделённых за счёт разницы в механизмах адресации и сигнальных управлениях:
• Память программ;
• Внутренняя память данных;
• Внешняя память данных.
Память программ имеет 16-разрядную адресную шину и программный счётчик. Для МК, содержащих внутреннюю память программ, внутренняя и внешняя память разделены как 4/60 кБайт. Однако для программиста имеется только один вид памяти объёмом 64 кБайта.
(А постоянной памяти данных, как у AVR-МК, нет; адресная шина имеет ту же разрядность.)
Внутренняя память данных.
При включении питания содержимое ячеек ОЗУ будет иметь случайное значение.
Состоит из двух областей: 128 байт оперативной памяти с адресами 00-7F и области регистров специальных функций, занимающей адреса 80-FF. Внутренне ОЗУ и область регистров специальных функций физически являются отдельными устройствами.
Все ячейки внутреннего ЗУ данных могут адресоваться с использованием прямой и косвенной адресации. Младшие 32 байта сгруппированы в 4 банка по 8 регистров. Команды программы могут обращаться к регистрам, используя их имена R0-R7. Два бита ССП (слово состояния процессора) определяют, с регистрами какого банка производятся действия.
Регистры специальных функций = регистры ввода-вывода.
Следующие после банков 16 регистров (с адресами 20-2F) образуют область ячеек, к которым возможна поразрядная адресация.
Область регистров специальных функций РСФ содержит регистры:
• Портов;
• Таймеров-счётчиков;
• Управления и т.п.
Полный список регистров приведён в справочниках.
При обращении к этим регистрам используется только прямая адресация.
Адрес однобайтовый.
Порты РО,Р1,Р2,Р3 являются двунаправленными каналами ввода-вывода и образуют 32 линии связи. Каждый из каналов содержит фиксатор – защёлку, который представляет собой 8-разрядный регистр, имеющий байтовую и битовую адресацию для установки – сброса разрядов.
Адреса регистров каналов:
Р0 – 80Н (при адресации к битам 80 – 87);
Р1 – 90Н ( 90 –97);
Р2 – А0 и
Р3 – В0.
Кроме того, каналы выполняют дополнительные функции:
Через порт Р0:
• выводится младший байт адреса памяти программ и данных;
• осуществляется обмен данными с внешней памятью;
• вводится информация при программировании внутренней ППЗУ и
• производится чтение ППЗУ.
Через порт Р1:
• задается младший байт адреса при программировании и чтении внутренней памяти программ.
Через порт Р2:
• выводится старший байт адреса памяти программ и данных;
• вводятся старшие разряды адреса при программировании ППЗУ (перепрограммируемое постоянное запоминающее устройство).
Линии порта Р3 выполняют следующие функции:
Р30 – RxD, вход последовательного интерфейса;
Р31 - TxD, выход последовательного интерфейса;
Р32 – вход 0, внешнего запроса прерывания;
Р33 - вход 1, внешнего запроса прерывания;
Р34 – вход Т0 счетчика внешних событий;
Р35 - вход Т1 счетчика внешних событий;
Р36 – WR, вывод строба записи во внешнюю память данных;
Р37 – RD, вывод строба чтения из внешней памяти данных.
У рассматриваемых МК предусмотрен только один последовательный порт.
Формирователь временных интервалов вырабатывает внутренние сигналы синхронизации.
Все команды МК, за исключением умножения и деления, выполняются за 1 или 2 машинных цикла, а исключённые команды выполняются за 4 цикла. Каждый цикл содержит 12 тактов внутреннего генератора.
Лекция 13. 12.12.2006.
Блок таймеров-счётчиков предназначен для подсчёта внешних событий и для получения программно управляемых задержек.
В состав блока входят:
• 2 16-разрядных регистра Т0 (ТН0, TL0)
• 8-разрядный регистр режимов (TMOD)
• 8-разрядный регистр управления (TCON)
Каждый из 8-разрядных регистров TH и TL имеет свой адрес и может быть использован как РОН, если таймер-счётчик не используется по назначению.
При счёте содержимое регистров инкрементируется до конечного числа FFFF.
Все регистры доступны для чтения, и контроль достижения требуемой величины счёта может выполняться программно.
В регистр режимов TMOD записывается УС, определяющие один из 4 режимов работы таймера-счётчика, работу в качестве таймера или счётчика, возможность управления внешним источником.
При работе в качестве таймера содержимое регистра ТС увеличивается на 1 в каждом машинном цикле, а цикл выполняется за 12 машинных тактов, следовательно, частота счёта равна Fгти/12.
При работе ТС в качестве счётчика внешних событий содержимое ТС инкрементируется при переходе от 1 в 0 сигнала на счётном входе МК (Т0 для ТС0 и Т1 для ТС1). Для распознавания такого перехода требуется 2 машинных цикла.
Регистр управления хранит УС, отображающее следующие признаки:
-
Переполнения. Если при этом разрешено прерывание, то МК переходит к программе обслуживания прерывания, а флаги переполнения TF0, TF1 сбрасываются в 0. Биты TF0, TF1 программно доступны.
-
Признаки IE0, IE1 устанавливаются аппаратно подачей сигналов на входы INT0,INT1 МК или программно и инициируют вызов программы обработки прерывания.
-
Программно устанавливаемые признаки разрешения работы каждого ТС и признаки, определяющие вид сигнала прерывания (по уровню или по фронту). Данное УС может быть считано в процессор МК и проанализировано.
Блок прерываний и последовательного интерфейса ППИ предназначен для организации ввода-вывода последовательных потоков информации и организации системы прерывания программ.
Логика управления ППИ предназначена для выработки сигналов управления, обеспечивающих 4 режима работы последовательного интерфейса, и организации прерывания программы.
Последовательный интерфейс ПИ может использоваться в качестве УАПП с фиксированной или переменной скоростью обмена.
Регистр приоритетов прерываний (IP) предназначен для установки уровня приоритета прерывания для каждого из 5 источников прерывания. 1 уровень выше, 0 уровень ниже. Источники прерываний, их обозначения и разряды РПП приведены ниже.
РХ0 – внешний источник, соединённый с линией INT0, PT0.
TC0, PC0 – внешний источник, соединённый с линией INT1, PT1
ЕС1б ЗЫ – последовательный интерфейс