Министерство общего и профессионального образования Российской Федерации
Санкт-Петербургский государственный университет аэрокосмического приборостроения
Кафедра №44
Проект защищен соценкой:
Преподаватель:
Пояснительная записка
к курсовой работе
по курсу:
“Микропроцессорные системы”
Работу выполнил
студент группы 4043КФ: Савенко В.Р.
Санкт-Петербург
2013 Год Содержание
Описание микроконтроллера MC68HC11E9. 7
Контроллер MC68HC11E9. 7
В состав МК входит постоянная ROM, загружаемая EEPROM, оперативная RAM память и блок регистров RGBL (рис.1). Программно доступны два байтовых аккумулятора A,B, регистр признаков CCR и двухбайтовые индексные регистры IX, IY, указатель стека SP и счетчик команд PC. Блоки SCI и SPI используются для организации последова- тельного обмена через контакты порта PD, через порт PE в блок ADC может вводится 8 аналоговых сигналов, порт PA обслуживает блок таймера TMR. Адреса всех регистров портов и периферийных блоков находятся в зоне RGBL. К контактам EXTAL и XTAL подключается кварцевый резонатор, на вход RST# подается сигнал сброса, на входы IRQ# и XIRQ# - запросы прерываний. При частоте резонатора F1=8 МГц выходная частота на контакте Е составляет 2 МГц, время выполнения короткой команды - 2 цикла Е (1 мкс). Цифровое питание подается через контакты VDD, VSS, аналоговое - через контакты VRH, VRL. 7
Распределение адресного пространства приведено в табл.1. 7
Если при сбросе установлено состояние контактов MODA=1, MODB=1, то в свободные адресные зоны можно подключать внешнюю память и периферийные устройства, при этом через порт PC выдается младший байт адреса (со стробом AS), затем через РС выдаются (R/W=0) или принимаются (R/W=1) данные по стробу синхронизации Е. Старший байт адреса выдается через порт РВ. Если свободные адреса не нужны, то при сбросе фиксируется состояние контактов MODA=0, MODB=1 и порты РВ и РС можно использовать для прямого управления внешними устрой- ствами. Обозначение сигналов при различных функциях контактов кристалла при- ведено в табл.2, сами функции поясняются ниже. 7
Блок SCI используется для организации асинхронного последовательного канала. Линия приема R*D (PD0), линия выдачи T*D(PD1). Передача начинается со стартового бита низкого уровня, затем следуют 8 или 9 информационных бит (начиная с младшего разряда) и стоп-бит высокого уровня. Формат регистров блока приведен в табл.3. Регистр SCCR1 задает 8 или 9 битовый формат посылки (бит М) и режим активизации пассивного приемника (бит WAKE). При WAKE=0 приемник акти- визируется при отсутствии передачи в течение 10 бит, при WAKE=1 приемник акти- визируется по единичному старшему биту посылки (адресный маркер). Для перевода приемника в пассивный режим достаточно установить бит RWU=1 в регистре SCCR2. Биты R8 и T8 в регистре SCCR1 фиксируют девятые биты посылки при приеме и вы- даче при установленном бите M=1. Основные 8 бит приема и 8 бит выдачи фиксиру- ются в буфере SCDR. 7
4 старших бита SCCR2 разрешают прерывания по различным флагам регистра SCSR, биты TE и RE разрешают выдачу и прием, установка SBK=1 генерирует нуле- вые посылки на линии выдачи. Биты OR, NF, FE в регистре SCSR фиксируют различ- ные ошибки на приеме. Установка бит в регистре BAUD задает различные коэффи- циенты К1 и К2 деления частоты кварца кристалла при генерации скорости приема и выдачи информации. При частоте резонатора F1 (в герцах) скорость передачи в бодах определяется соотношением 7
BOD = F1 / 64 / K1 / K2 7
Блок SPI используется для синхронной последовательной выдачи информации по линии MOSI (PD3) и приема по линии MISO (PD2). Линия синхронизации SCK (PD4) работает на выдачу, если блок является хозяином (master), и на прием, если блок является слугой (slave). Перед выдачей байт загружается в буфер SPDR и передается начиная со старшего бита. Выдача совмещена с приемом и по ее окон- чании из буфера SPDR можно прочитать принятый байт. На вход SS# (PD5) подается SS#=1 для master и SS#=0 для slave. Формат регистров блока SPI приведен в табл. 4 - 5. При частоте резонатора F1 частота синхронизации FSCK определяется соотношением 8
FSCK = F1 / 4 / K 8
где величина К задается полем SPR1-0 в регистре SPCR. При окончании передачи взводится флаг SPIF в регистре SPSR. 8
В блоке ADC имеется аналоговый коммутатор на 8 каналов и 8-разряд- ный АЦП. Если задано одноканальное преобразование (в регистре ADCTL бит MULT=0, табл.5 ), то после записи байта в ADCTL выполняются 4 преобразова- ния для заданного канала (поле CN2-0), результаты последовательно записы- ваются в регистры ADR1,...,ADR4 и взводится флаг CCF. При SCAN=0 работа АЦП останавливается, при SCAN=1 она продолжается по циклу, т.е. пятый резуль- тат записывается в ADR1. При многоканальном преобразовании (MULT=1) в ADR1,...,ADR4 фиксируются результаты из каналов 0,1,2,3 (при CN2=0) либо из каналов 4,5,6,7 (CN2=1). Фиксация также возможна либо 4-кратная (SCAN=0) либо непрерывная (SCAN=1). Время одного преобразования - 32 цикла (16 мкс при E=2 МГц). 8
Система команд приведена в табл.6. Если за именем команды следует опреанд 'op', возможно несколько видов адресации, запись которых на Ассемб- лере и формирование адреса поясняется в табл.8. Содержимое адреса памяти для всех видов в табл.6 обозначено символом М, содержимое двух соседних адресов символами ММ. В отдельных командах пара аккумуляторов A и B могут работать как двухбайтовое слово AB. Формирование признаков одинаково для двух команд одной строки и поясняется в последней графе, сами признаки фиксируются в регистре CCR и поясняются и табл.7. При сбросе устанавливаются в 1 признаки S, X, I, значение остальных признаков не определено. 8
В качестве иллюстрации ниже приводится программа ввода информации из 4 каналов АЦП с записью информации в оперативную память (имена регистров можно употреблять как расширенные адреса). 8
LDX #ADR1 8
LDY #$100 8
LDAB #4 8
LDAA #$20 8
STAA ADCTL ; пуск ADC 8
M1 TST ADCTL 8
BPL M1 ; не готово 8
M3 LDAA 0,X 8
STAA 0,Y ; запись в ОЗУ 9
INX 9
INY 9
DECB 9
BNE M3 ; следующий канал 9
9
Рис.1 Ресурсы контроллера MC68HC11E9 9
Таблица 1. Распределение адресного пространства. 9
0000 - 01FF RAM 9
1000 - 103F Register Block 9
B600 - B7FF EEPROM 9
D000 - FFFF ROM (FFC0-FFF9.. вектора прерываний, 9
FFFE-FFFF .. стартовый адрес) 9
Таблица 2. Альтернативные функции контактов. 9
PA0/IC3 PD0/R*D 9
PA1/IC2 PD1/T*D 9
PA2/IC1 PD2/MISO 9
PA3/OC5 PD3/MOSI 9
PA4/OC4 PD4/SCK 9
PA5/OC3 PD5/SS# 9
PA6/OC2 10
PA7/OC1 10
PB7-0/A15-8 PE7-0/AN7-0 10
PC7-0/A7-0..D7-0 10
Регистр конфигурации OPTION адрес $1039 биты имя сброс назначение 10
7 ADPU 0 1..вкл.пит.ADC (пуск ADC через 100 мкс) 10
6 CSEL 0 0..кварц.синхр.ADC,EEPROM 1..RC синхр (2 МГц) 10
5 IRQE 0 0..прер. по IRQ#=0 1..прер. по пад.фронту IRQ# 10
4 DLY 0 1..пауза 4064 такта при запуске кварца 10
3 CME 0 1..контроль уходов частоты синхронизации 10
2 0 не использ. 10
1-0 CR1-0 00 сторож.пауза (00-16ms, 01-65ms, 10-260ms, 11-1s) 10
Биты 5,4,1,0 записываются только на первых 64 циклах после пуска 10
10
Таблица 3. Формат регистров блока SCI 10
Регистр управления SCCR1 адрес $102C биты имя сброс назначение 10
7 R8 - 9 бит на приеме 10
6 T8 - 9 бит на выдаче 10
5 0 не исп. 10
4 M 0 0/1.. 8/9 бит в посылке 10
3 WAKE 0 0..пауза 1..маркер 10
2-0 000 не исп. 10
Регистр управления SCCR2 адрес $102D биты имя сброс назначение 10
7 TIE 0 1..прерыв если TDRE=1 10
6 TCIE 0 1..прерыв если TC=1 10
5 RIE 0 1..прерыв если RDRF=1 11
4 ILIE 0 1..прерыв если IDLE=1 11
3 TE 0 1..разреш выдачи 11
2 RE 0 1..разреш приема 11
1 RWU 0 1..пассивный приемник 11
0 SBK 0 1..нулевая выдача 11
Регистр состояния SCSR адрес $102E биты имя сброс назначение 11
7 TDRE 1 1..буфер выдачи пуст 11
6 TC 1 1..выдача закончена 11
5 RDRF 0 1..буфер приема полон 11
4 IDLE 0 1..пауза приема 11
3 OR 0 1..ошибка наложения 11
2 NF 0 1..флаг шума 11
1 FE 0 1..ошибка кадра 11
0 0 не использ. 11
Регистр скорости BAUD адрес $102B биты имя сброс назначение 11
7 TCLR 0 фабр.тест 11
6 0 не использ. 11
5-4 SCP1-0 00 K1 (00-1, 01-3, 10-4, 11-13) 11
3 RCKB 0 фабр.тест 11
2-0 SCR2-0 000 K2 (000-1, 001-2, 010-4,...,111-128) 11
Буфер приема и выдачи SCDR адрес $102F 8 бит приема (при чтении) и 8 бит выдачи (при записи). Передача начинается с младшего бита (после старт-бита). 11
Таблица 4 Формат регистров блока SPI. 11
Регистр управления SPCR адрес $1028 биты имя сброс назначение 11
7 SPIE 0 1..разр.прер. по флагу SPIF 11
6 SPE 0 1..разреш. блока SPI 11
5 DWOM 0 0..обыч.выходы PD5-0 1..открытые выходы 11
4 MSTR 0 0/1..slave/master 11
3 CPOL 0 0/1..низк/высок уровень SCK при отсутвии передачи 12
2 CPHA 1 0..сдвиг по SCK|SS# 1..сдвиг по SS# 12
1-0 SPR1-0 UU K (00-2, 01-4, 10-16, 11-32) 12
Регистр состояния SPSR адрес $1029 биты имя сброс назначение 12
7 SPIF 0 1..передача закончена 12
6 WCOL 0 1..запись до окончания передачи 12
5 0 не использ. 12
4 MODF 0 1..конфликт мастер-мастер 12
3-0 0000 не использ. 12
Буфер приема-выдачи SPDR адрес $102A 12
Загружается в master-блоке SPI для начала передачи байта и может быть прочитан в master и slave блоках после ее окончания. Первым при сдвиге в линию MISO выдается старший бит. 12
Таблица 5. Формат регистров блока ADC. 12
Регистр управления/состояния ADCTL адрес $1030 биты имя сброс назначение 12
7 CCF 0 1..все 4 рез-та готовы (CCF=0 при записи в ADCTL) 12
6 0 не использ. 12
5 SCAN U 0..4-крат.преобр. 1..непрерыв.преобр. 12
4 MULT U 0..один канал 1..4 канала 12
3 CN3 U 0..работа 1..фабр. тест 12
2-0 CN2-0 UUU номер стартового канала 12
Описание SN74LS 164 - 555ИР8 (8-разрядный сдвиговый регистр) 13
16
17
Программа на языке ассемблера микроконтроллера Atmel AT4414. 18
Заключение 20
Введение
В ходе курсовой работы необходимо составить программу проверки работоспособности конкретной микросхемы с помощью заданного микроконтроллера, в данном случае микроконтроллера MC68HC11E9
Для решения этой задачи необходимо познакомится с архитектурой микроконтроллера и его системы команд, нарисовать схему подключения проверяемой микросхемы и элементов индикации (светодиодов) к выбранным портам микроконтроллера, программно задать направление работы портов и обеспечить выдачу тестовых воздействий приём и проверку сигналов состояния микросхемы. При обнаружении в ходе выполнения программы некорректных состояний микросхемы сигнал ошибки выводится на индикацию.