Реферат по предмету "Информатика, программирование"


Программирование микроконтроллера

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГОТРАНСПОРТА
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
ГРАЖДАНСКОЙ АВИАЦИИ»
Кафедра радиотехнических устройств
Контрольная работа
по дисциплине «Микропроцессорныеустройства РЭО»
студента4 курса заочного факультета
ХраповаВладимира Алексеевича
Специальность160905
Шифр:РС-071511
Адрес:Ростовская область, Чертковский район, пгт Чертково
Москва 2010

Исходные данные.
Таблица 1.№ Номер варианта задания Адресация при пересылке данных из ОЗУ в РОНы Адресация при пересылке данных из РОНов в ОЗУ SP 1 1 Прямая косвенная 10F1
Таблица 2.№ A1 A2 A3 A4 A5 A6 M1 M2 M3 M4 1 17 5 67 76 65 12 0041 0043 0044 0045
Задание на контрольнуюработу
· Сложитьдва числа 17, 5 и 67 (без учета единица переноса), результат уменьшить наединицу и записать в ячейку ОЗУ 0041.
· Загрузитьячейки ОЗУ 0043 и 0044 числами 76 и 65 соответственно, используя косвеннуюадресацию (регистровые пары Yи Z).
· Записатьв регистр R16 число 12.
· Осуществитьвызов подпрограммы, в которой требуется:
¾ сохранитьуказатели Y, Zи содержимое регистра R16в стеке. Начальный адрес стека 10F1;
¾ записатьв регистр R16 содержимое ячейкиОЗУ 0045 и сравнить с содержимым ячейки ОЗУ 0043, в случае неравенстваприбавить к содержимому регистра R16на единицу;
¾ извлечьсохраненные данные из стека, поменяв содержимое указательных регистров XиY местами.
· Припересылке данных из ОЗУ в РОНы использовать прямую адресацию, при пересылкеданных из РОНов в ОЗУ использовать косвенную адресацию (если вид адресации неуказан в задании явно).
· Всечисла и адреса – шестнадцатеричные.
· Выборкоманд для программы.
В начале программынеобходимо задать адрес стека, где будут сохранены необходимые данные привызове подпрограммы. Указатель стека реализован в виде двух регистровввода–вывода, для записи данных в регистры необходимо использовать команду OUT:
· длязаписи в регистр SPL (младшийразряд):
OUTSPL, Rr;
· длязаписи в регистр SPH (старшийразряд):
OUTSPH, Rr,
где r– номер регистра, из которого пересылаются данные в стек (r=0…31).
· Длянепосредственной записи операндов в РОНы используем команду LDIRd, k,
где d– номер регистра, в который записывается операнд (d=16…31);
k– операнд.
· Дляпересылки данных из ОЗУ в РОНы используем команду косвенной адресации
LDRr, X ;
LDRr, Y ;
LDRr, Z,
где X,Y, Z– 16-ти разрядные регистры для хранения адреса ячейки ОЗУ, из которойпересылаются данные. Каждый из этих регистров имеет в своем составе два РОНа.Структура регистров представлена в таблице 3.
Таблица 316-ти разрядный регистр Младший разряд Старший разряд X R26 R27 Y R28 R29 Z R30 R31 РОН

· Передиспользованием команды LDадрес ячейки ОЗУ должен быть предварительно записан в соответствующий регистр,который используется в команде.
· Дляпрямой адресации данных из РОНов в ОЗУ используем команду STSn, Rr, где n – адрес ячейки ОЗУ.
· Длякосвенной адресации данных из РОНов в ОЗУ используем команду
STX, Rr ;
STY, Rr ;
STZ, Rr.
· Адресячейки ОЗУ должен быть предварительно записан в один из регистров X,Y, или Z.
· Длявыполнения операции сложения используем команду ADDRa, Rb, где a, b– номера регистров, где хранятся операнды (a=0…31,b=0…31). Результат будет записан врегистр Ra.
· Дляуменьшения содержимого регистра на единицу используем команду DECRr .
· Длявыполнения требуемой в задании операции сравнения используем команду CPSERa, Rb.
· Командасравнивает содержимое регистров Ra,Rb, и в случае равенства пропускаетследующую команду.
· Длявызова подпрограммы используем команду CALL.
· Длявыхода из подпрограммы и возврата в программу используем команду RET.
· Вподпрограмме для сохранения содержимого регистра Rrв стеке используем команду PUSHRr .
· Дляизвлечения из стека в регистр Rrиспользуем команду POPRr.
· Приэтом учитываем то, что данные должны извлекаться из стека в порядке, обратномзагрузке – «последний вошел – первый вышел».
· Для«зацикливания» программы используем команду RJMP.
Текст программы.
Инициализацияуказателя стека:
Адресстека 10F1, для его задания врегистр SPL помещаем младший байт; F6, в регистр SPH– старший 10.
· LDIR20, $F1; загрузка регистра R20 младшимбайтом адреса начала стека
· OUTSPL, R20; загрузка младшего байта указателя стека из регистра
· LDIR20, $10; загрузка регистра R20старшим байтом адреса начала стека
· OUTSPH, R20; загрузка старшего байта указателя стека из регистра
Выполнениесложения чисел 17, 5 и 67:
· LDIR17, $17; загрузка регистра R16числом 17
· LDIR18, $5; загрузка регистра R17числом 5
· LDIR19, $67; загрузка регистра R18числом 67
· ADDR17, R18;суммирование содержимого регистров R17,R18
· ADDR17, R19; суммирование содержимого регистров R17,R19
· DECR17; уменьшение на единицусодержимого регистра R17
· LDIR30, $41 ;
· LDIR31, $00 ;
· STZ, R17; загрузка ячейки ОЗУс адресом 0075 значением из регистра R17
Загрузкаячеек ОЗУ 0043 и 0044 числами 76 и 65 соответственно:
· LDIR20, $76; загрузка регистра R19числом 76
· LDIR21, $65; загрузка регистра R20числом 65
Загрузка в регистровуюпару X адреса ячейки ОЗУ0043:
· LDIR26, $43
· LDIR27, $00
Загрузкав регистровую пару Y адреса ячейкиОЗУ 0044:
· LDIR28, $44
· LDIR29, $00
· STX, R20; загрузка ячейки ОЗУ с адресом 0043 значением из регистра R20
· STY, R21; загрузка ячейки ОЗУ с адресом 0064 значением из регистра R21
· LDIR16, $12; загрузка регистра R16числом 12
· CALLROUT; вызов подпрограммы ROUT
Зацикливаниепрограммы:
· LOOP:
· RJMPLOOP
ПОДПРОГРАММА:
· ROUT:
Сохранениеуказателя X в стеке:
· PUSHR26
· PUSHR27
Cохранениеуказателя Y в стеке:
· PUSHR28
· PUSHR29
· LDSR16, $0045; загрузка регистра R16содержимым ячейки ОЗУ с адресом 0045
· LDSR17, $0043; загрузка регистра R17содержимым ячейки ОЗУ с адресом 0043
Загрузкав регистровую пару X адреса ячейкиОЗУ 0065:
· CPSER16, R17; пропустить следующую команду, если значения регистров R16и R17 равны
· INCR16; увеличить содержимое регистра R16на единицу
Извлечениесохраненных данных из стека и замена содержимого указательных регистров:
Извлечениесохраненного содержимого Yв X:
· POPR27
· POPR26
Извлечениесохраненного содержимого Xв Y:
· POPR29
· POPR28
· RET; возврат изподпрограммы.

Литература
1. ЯмановД.Н., Жаворонков С.С. Микропроцессорные устройства РЭО. Пособие по изучениюдисциплины и выполнению контрольных работ. – М.: МГТУ ГА, 2008. – 24 с.
2. КалабековБ.А. Микропроцессоры и их применение в системах передачи и обработки сигналов:Учебное пособие для вузов. – М.: Радио и связь, 1988. – 368 с.


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.