Главная » Просмотр файлов » [257]Лабораторные_МС_68HC11

[257]Лабораторные_МС_68HC11 (1086954), страница 5

Файл №1086954 [257]Лабораторные_МС_68HC11 (8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola) 5 страница[257]Лабораторные_МС_68HC11 (1086954) страница 52018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

Приведем простой пример, показывающий один из способов занесения числа 1 в аккумулятор:cpu6811org$c800clra; очистить аккумуляторsec; установить флаг переносаadca #0; прибавить его к аккумуляторуВ реализации отладчика имеется одна особенность - если трассируемая команда запрещаетпрерывания, то выполнение программы будет продолжаться до тех пор, пока либо прерывания не будут разрешены, либо не произойдет прерывания по неправильному коду команды.В частности это относится к командам SEI и SWI (эта команда будет рассмотрена в следующей лабораторной работе.

Так же следует отметить, что если выполнение программы затянется, то отладчик выдаст сообщение об истечении времени ожидания ответа.Почти в каждой программе требуется возможность манипуляции отдельными битамиячейки памяти. Так, блок регистров представляет собой поBCLR (opr), BSET (opr)большей части битовые поля.Команды BCLR и BSET в качестве первого операнда поS X H I N Z V Cлучают ячейку памяти в которой соответственно сбрасываются- - - - ? ? 0 или устанавливаются биты, указанные в маске, заданной непосредственно вторым параметром.Приведем пример, демонстрирующий на светодиодах работу этих команд:cpu6811org$c800ldx#$1f00; настроить регистр Xbset 4,x,#$AA; зажечь через один светодиоды, оставив; незадействованные биты в прежнем; состоянииbclr 4,x,#$55; погасить остальные светодиодыВыполните эту программу в пошаговом режиме при разных начальных состояниях светодиодов (ячейки $1f04).4.

Команды сдвигов.Список команд сдвигов представлен в таблице 4.3. Эти команды позволяют адресоваться к аккумулятору или ячейке памяти.Команды сдвигов обычно подразделяют на три группы:• арифметические сдвиги,• логические сдвиги,• циклические сдвиги.Логические команды. Команды работы с битовыми полями. Команды сдвигов.20Лабораторная работа №4ASLA/ LSLAASLB/ LSLBASLD/ LSLDASL*/ LSL*ASRAASRBASR*LSRALSRBLSRDLSR*Таблица 4.3. Команды сдвигов.ROLARORAROLBRORBROL*ROR*Примечания:*- Команды, использующие расширенную или индексную адресацию.При арифметическом сдвиге происходит сохранение знака первоначального операнда при выполнении сдвига.

При выполнении команды ASR происходит расширение знаковогоразряда. Это позволяет использовать команду для деления знакового числа на 2N. Однако для нечетных чисел деление неS X H I N Z V Cвсегда является корректным (разница в результате может со- - - - ? ? ? ?ставлять 1). При выполнении команды арифметическогосдвига влево всякий раз при смене знакового бита устанавливается флаг V, а освободившиесяразряды заполняются 0.

Таким образом становится возможным при помощи команд ASRпроизводить знаковое умножение числа на 2N.Флаг переноса устанавливается в соответствии с отбрасываемым битом.Все эксперименты в этой части лабораторной работы будут производиться со светодиодами, так как это наиболее наглядный способ для демонстрации операций сдвига.cpu6811org$c800ldaa #%00101001ldx#$1f00staa 4,x; высветить на светодиодах содержимое; аккумулятораasl4,x; умножить на дваasl4,x; еще раз умножить на два (происходит; переполнение)asr4,x; разделить на дваasr4,x; разделить на дваЛогические сдвиги производят сдвиг содержимого аккуLSLA, LSLB, LSL (opr),мулятора или ячейки памяти влево (LSL) или вправо (LSR).LSLD, LSRA, LSRB,При этом освободившиеся разряды всегда заполняются нуляLSR (opr), LSRDми.

Команды групп ASL и LSL выполняют в точности одинаковые действия и имеют одинаковые кода операций, поэтомуS X H I N Z V Cпокажем лишь отличие команд ASR от команд LSR:- - - - ? ? ? ?ASLA, ASLB, ASL (opr),ASLD, ASRA, ASRB,ASR (opr)cpuorgldaastaaasrasrlsrlsr6811$c800#%10101010$1f04$1f04$1f04$1f04$1f04ROLA,ROLB, ROL (opr),RORA,RORB, ROR (opr)S X H I- - - -N Z V C? ? ? ?; зажечь светодиоды через один; арифметический сдвиг вправо:; старший бит сохраняется; логический сдвиг:; старший бит заполняется 0; (светодиод гаснет)Команды циклического сдвига позволяют осуществитьоперацию логического сдвига над многобайтными числами.Отличие этих операций от операций логического сдвига состоит в том, что освободившийся разряд заполняется не нулем, асостоянием флага переноса C.

Рассмотрим пример использова-Логические команды. Команды работы с битовыми полями. Команды сдвигов.21Лабораторная работа №4ния этих команд для сдвига 4-х байтного числа, расположенного в ячейках 0Þ3, влево:cpu6811org$c800ldx#0lsl3,xrol2,xrol1,xrol0,xЛогические команды.

Команды работы с битовыми полями. Команды сдвигов.22Лабораторная работа №45. Контрольные вопросы1. Каков результат выполнения программы:cpu6811org$c800secclraadda #02. Какие методы адресации применимы к командам циклического сдвига?3. Расскажите о командах работы с битами регистра CCR.4. Какие особенности работы с отладчиком следует учитывать при отладке программ, запрещающих прерывания?5.

В чем разность команд ASR и LSR?6. Можно ли использовать команду ROLA вместо команд ASLA, LSLA?7. Какие логические команды Вы знаете?8. Каким образом реализуется команда ASRD (сдвиг регистра D на 1 байт вправо)?9. На какие группы можно подразделить команды сдвигов?10.Дайте определение команд логического сдвига.11.Чем отличается команда COM от команды NEG?12.Каким образом можно съэмулировать команду COM, пользуясь командами, изученнымив данной лабораторной работе?13.Какие параметры имеет команда BSET?14.Чем отличается команда ORAA от команды EORA?6. Задания1.

Напишите программу, осуществляющую сдвиг влево 3-х ячеек памяти таким образом,чтобы выдвигаемый из старшей ячейки памяти бит становился на место младшего бита вмладшей ячейке.2. Произведите операцию “логическое ИЛИ” над регистрами X и Y.3. Напишите программу, производящую обмен старшей и младшей тетрады аккумулятора A.4. Напишите программу, создающую зеркальное отображение битовой карты регистра A врегистре B.5. Реализовать подсчет установленных в регистре A битов с занесением суммы в регистр B.6.

Напишите программу умножения двух двоично-десятичных 8-разрядных чисел.7. Произведите операцию “логическое И” над регистрами X и Y.8. Написать тремя способами установку битов 2 и 3 в ячейке памяти $10.9. Написать программу, копирующую содержимое регистров A и B в регистр X таким образом, что старшая тетрада регистра A и старшая тетрада регистра B составляли старшийбайт регистра X, а младшие тетрады - младший.10.Написать программу, позволяющую инвертировать те биты регистра А, которые сброшены в регистре B.11.Написать программу, сбрасывающую биты в регистре А, если соответствующие биты регистров A и B установлены.

Остальные биты должны оставаться в исходном состоянии.12.Написать программу, которая в четные биты регистра X записывает биты регистра A, а внечетные - регистра B.13.Написать программу, копирующую регистр A в регистр B с обратным порядком следования бит, инвертируя нечетные биты.14.Написать программу, заполняющую ячейки памяти $0Þ$7 соответствующими битамирегистра A. Т.е., например, если бит 0 в регистре A сброшен, то в ячейку $0 записываетсяноль, если установлен - $FF.15.Установить 4 и5 биты в регистра A с помощью команды BSET.Логические команды. Команды работы с битовыми полями.

Команды сдвигов.23Лабораторная работа №5Лабораторная работа №5Команды передачи управления. Специальные команды.1. ВведениеВ данной лабораторной работе изучаются команды передачи управления, служащие дляветвления программы за счет изменения регистра программного счетчика PC, и специальныекоманды STOP и WAI, служащие для организации эффективной работы микроконтроллера всистемах, критичных по параметрам потребляемой мощности.2. Команды передачи управленияКоманды передачи управления можно разделить на 4 группы:• команды безусловного перехода (JMP, BRA, BRN, NOP),• команды работы с подпрограммами (JSR, BSR, RTS),• команды условного перехода (BEQ, BNE, BMI, BPL, BCS/BLO, BCC/BHS, BVS,BVC, BGT, BGE, BLT, BLE, BLS, BHI, BRSET, BRCLR),• команды работы с прерываниями (SWI, RTI).Список команд передачи управления представлен в таблице 5.1.

Все команды передачиуправления не оказывают влияния на состояние регистра статуса.Таблица 5.1. Команды передачи управления.JMP*BEQ**BCS/BLO**BGT**BLS**JSR*****SWI***************BRABNEBCC/BHSBGEBHIBSRRTI***BRN**BMI**BVS**BLT**BRSET****RTS****************NOPBPLBVCBLEBRCLRПримечания:*- Команды, использующие расширенную и индексную адресацию**- Команды, использующие относительную адресацию***- Команды, использующие неявную адресацию****- Команды, использующие смешанную адресацию: первый операнд использует либо прямую, либо индексную адресацию, второй - относительную*****- Команды, использующие прямую, расширенную и индексную адресациюJMP, BRA, BRN, NOPS X H I- - - -N Z V C- - - cpuorgldabldxl0l1l2l3Команды безусловного перехода служат для передачиуправления другому участку программы независимо от состояния регистра статуса микроконтроллера и содержимого ячеекпамяти.

Рассмотрим работу этих команд более подробно наследующем примере:6811$c800#$02#ways; начальный адрес программы; выбор варианта ветвления программы; занести в регистр X адрес таблицы; переходовldy0,x; считать значение в регистр Yjmp0,y; вызвать подпрограмму по адресу,; находящемуся в регистре Ynop; задержка в 2 тактаinx; увеличить регистр X на 2 дляinx; выборки следующего адреса из; таблицы переходовbral0; перейти наметку l0bral1; перейти на метку l1brn*; задержка в 3 тактаКоманды передачи управления.

Характеристики

Тип файла
PDF-файл
Размер
727,84 Kb
Тип материала
Высшее учебное заведение

Список файлов книги

8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola
Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6381
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее