Помощь в написании студенческих работ
Антистрессовый сервис

Методическое обеспечение комплекса для выполнения лабораторных и практических работ по дисциплине «Применение микропроцессоров»

РефератПомощь в написанииУзнать стоимостьмоей работы

Краткие теоретические сведения Последовательный порт UART используется, для организации обмена данными между несколькими устройствами в последовательном коде. По порту можно одновременно и передавать и получать данные. Для этого используются отдельные линии связи. Скорость приема-передачи можно изменять программно. Разрядность данных может быть 8 или 9 бит. Микроконтроллер ATmega8535 имеет 4… Читать ещё >

Методическое обеспечение комплекса для выполнения лабораторных и практических работ по дисциплине «Применение микропроцессоров» (реферат, курсовая, диплом, контрольная)

Рассматриваемый ниже, набор работ, позволяет провести цикл лабораторных работ и практических занятий по дисциплине «Применение микропроцессоров». Набор включает в себя 3 работы, рассматриваемые ниже.

Лабораторная работа № 1.

Подсистема памяти микроконтроллера.

Цель работы. Изучение принципов построения подсистемы памяти МК. Разработка и отладка обращения к EEPROM.

Краткие теоретические сведения.

EEPROM память данных. EEPROM память данных организована как отдельное пространство данных с возможность считывания и записи отдельного байта. EEPROM обеспечивает 100 000 циклов стирания/записи. Взаимодействие между EEPROM и CPU определяется регистром адреса EEARH_L, регистром данных EEDR и регистром управления EECR.

Назначение битов регистра управления:

  • · D7-D4 — зарезервированны.
  • · D3-EERIE — разрешение прерывания по готовности EEPROM.
  • · D2-EEMWE — управление записью в EEPROM, при установленном бите и бите EEWE производится запись байта данных из регистра данных в EEPROM по адресу хранящемуся в регистрах адреса.
  • · D1-EEWE — разрешение записи EEPROM, процесс записи выполняется следующим образом:
    • 1. Подождать, пока EEWE не сброситься.
    • 2. Записать новый адрес в EEARH_L.
    • 3. Записать данные в регистр данных EEDR.
    • 4. Установить EEMWE в «1»
    • 5. В течение 4 тактовых циклов после установки EEMWE установить в единичное состояние EEWE.
  • · D0-EERE — разрешение чтения. сигнал является командой чтения данных из ячейки памяти, адрес которой находится в регистрах адреса.

Пример программ обращения к EEPROM.

;подпрограмма записи данных в EEPROM.

EEPROM_write:

cli.

;ожидание завершение предыдущей записи.

EE_W:

sbic EECR, EEWE.

rjmp EE_W.

;запись адреса в (r27:r26).

out EEARH, XH.

out EEARL, XL.

;запись данных (r16) в регистр данных.

out EEDR, r16.

;установка бита EECR регистра EEMPE в 1.

sbi EECR, EEMWE.

;инициализация записи в EEPROM.

sbi EECR, EEWE.

sei.

ret.

;подпрограмма чтения данных из EEPROM.

EEPROM_read:

cli.

;ожидание завершение предыдущей записи.

EE_r:

sbic EECR, EEWE.

rjmp EE_r.

;запись адреса в (r27:r26).

out EEARH, XH.

out EEARL, XL.

;инициализация чтения EEPROM установкой EERE.

sbi EECR, EERE.

;чтение данных с регистра данных.

in temp, EEDR.

sei.

ret.

Индивидуальные задания к выполнению лабораторной работе № 1.

Разработать программу (варианты).

  • 1. считывания данных из EEPROM и записи их в PA.
  • 2. считывания данных из порта C и записи в EEPROM.
  • 3. перемещения данных из EEPROM в ОЗУ.
  • 4. перемещения данных из ОЗУ в EEPROM.
  • 5. перестановки массива из 10 чисел, расположенных в EEPROM.
  • 6. записи трех двухбайтовых чисел из портов, А и В в EEPROM.
  • 7. преобразования аналогового сигнала в код с сохранением результата в EEPROM по сигналу «Запрос прерывания» от АЦП.
  • 8. определения суммы 2-х байтовых чисел, расположенных в различных областях EEPROM. Результат сохранить вместо первого операнда.
  • 9. определения разности 2-х байтовых чисел, расположенных в различных областях EEPROM. Результат сохранить вместо первого операнда.
  • 10. использования EEPROM и порта С для формирования временных диаграмм заданного вида (см. табл. ххх).

Контрольные вопросы к лабораторной работе № 1.

  • 1. Назначение блока памяти EEPROM и основные параметры EEPROM.
  • 2. Что означает «единое адресное пространство памяти» МК?
  • 3. Формат регистра управления ECR и назначение битов регистра управления.
  • 4. Как определить сегмент данных в EEPROM?
  • 5. Как резервировать ячейки в EEPROM для хранения байтов или слов?
  • 6. Приведите и прокомментируйте подпрограмму записи данных в EEPROM.
  • 7. Приведите и прокомментируйте подпрограмму чтения данных из EEPROM.
  • 8. Вектор прерывания от EEPROM. Назначение и пример использования.
  • 9. Методы программирования памяти микроконтроллера.

Лабораторная работа № 2.

Универсальный асинхронный приемопередатчик — UART.

Цель работы. Изучение принципа работы UART порта. Получение навыков использования UART порта для приема/передачи данных. Разработка и отладка управляющих программ приема/передачи и программ обработки данных.

Краткие теоретические сведения Последовательный порт UART используется, для организации обмена данными между несколькими устройствами в последовательном коде. По порту можно одновременно и передавать и получать данные. Для этого используются отдельные линии связи. Скорость приема-передачи можно изменять программно. Разрядность данных может быть 8 или 9 бит.

Управление портом производится с помощью регистров: UDR, UCSRnA, UCSRnB, UCSRnC, UBRRnL и UBRRnH (более подобно см. раздел 2.10).

Пример программирования UART порта.

Фрагменты программы, реализующие настройку порта, передачу и прием данных.

;—————————————————————————————-;

;Инициализация передатчика.

ldi r16, 0×55.

out UBRRl, $ 55 ;установка скорости передачи.

ldi r16, (1<<

out UCSRB, r16.

;установка формата кадра передачи: 8-data, 2-stop bit.

ldi r16, (1<<<

out UCSRC, r16.

ret.

;—————————————————————————————-;

;Передачи данных.

Transmit:

sbis UCSRA, UDRE ;ожидание готовности передачи.

rjmp Transmit.

out UDR, r16 ;поместить данные в буфер

ret.

;—————————————————————————————-;

;Прием данных.

Receive:

sbis UCSRA, RXC ;ожидания приёма данных.

rjmp Receive.

in r16, UDR ;получения принятых данных из буфера.

ret.

Индивидуальные задания к выполнению лабораторной работы № 2.

  • (прием и передачу осуществить по сигналу «Запрос прерывания» и по опросу флажка готовности UART)
  • 1. Разработать программу передачи 3-х байт данных, расположенных в ОЗУ. Передачу осуществлять в 8-ми битном режиме с минимальной скоростью.
  • 2. Разработать программу приема 3-х байт данных. Прием осуществлять в 8-ми битном режиме с минимальной скоростью. Данные сохранить в ОЗУ.
  • 3. Разработать программу передачи данных из порта В. Передачу осуществлять в 9-ти битном режиме с контролем по четности.
  • 4. Разработать программу приема байта данных. Прием осуществлять в 9-ти битном режиме с максимальной скоростью. Данные выводить в PORTC.
  • 5. Разработать программу передачи 10-ти байтов данных, расположенных в ОЗУ. Передачу осуществлять по сигналу внешнего прерывания INT0 в 8-ми битном режиме.
  • 6. Разработать программу обмена данными двух УЛС по UART порту.
  • 7. Разработать программу одновременного приема и передачи данных по UART порту.
  • 8. Разработать программу передачи подпрограмм и запуска их на приемной стороне по окончании приема.

Контрольные вопросы к лабораторной работе № 2.

  • 1. Назначение UART порта МК и его основные характеристики.
  • 2. Формат регистра статуса UART-порта и назначение битов регистра. Привести пример использования регистра статуса UART порта.
  • 3. Регистр управления UART-порта и назначение битов регистра. Привести пример использования регистра управления UART порта.
  • 4. Назначение бод-генератор (Baud Rate Generator) UART порта и регистра бод-генератора UARTUBRR.
  • 5. Назначение регистра данных UDR UART-порта.
  • 6. Для чего проводится тестирование выборки битов принимаемых символов?
  • 7. Формат кадра и его содержание. Назначение старт — и стоп-битов
  • 8. Привести пример считывания содержимого регистра статуса UART-порта, записи данных в регистры: бод-генератора UART, управления и данных UART-порта.
  • 9. Каким образом задается скорость приема/передачи данных.
  • 10. Вектора прерываний UART-порта и их назначение. Привести пример организации приема/передачи в режиме прерывания.
  • 11. Привести схему соединения приемника и передатчика по UART-порта.
  • 12. Режимы работы UART-порта и их отличительные особенности.
  • 13. Приведите временные диаграммы приема/передачи информации по UART-порту.
  • 14. В чем различие между UART-портом МК и последовательным интерфейсом RS-232?

Лабораторная работа № 3.

Параллельные порты ввода/вывода микроконтроллера.

Цель работы: Изучение принципа работы портов. Получение навыков использования параллельных портов для ввода/вывода данных. Разработка и отладка управляющих программ и программ ввода/вывода данных.

Краткие теоретические сведения.

Микроконтроллер ATmega8535 имеет 4 восьмиразрядных параллельных порта ввода-вывода: PA, PB, PC и PD. В состав каждого порта входят 3 регистра ввода-вывода с именами DDRх, PORTх, PINх (где х=A, B, C и D. например, порт A имеет регистры DDRA, PORTA, PINA). Регистр PINх не имеет аппаратной реализации. Это имя используется в командах, по которым выполняется чтение байтов на выводах порта.

Состояния разрядов регистра DDRх определяет направление передачи бита через выводы порта. Если i-й разряд регистра DDRх равен 1, то соответствующий вывод порта работает в режиме выхода, а если равен нулю, то в режиме входа.

Например, следующие две команды настраивают порт PB на вывод данных:

ser r16 ;установить все биты регистра r16 в «1».

;в r16 записывается число $FF.

out DDRB, r16 ;вывести содержимое r16 в регистр DDRB.

;все 8 разрядов порта B настроены на вывод.

Значение входного сигнала на отдельном выводе порта может быть определено с использованием команд условного перехода. Например:

SBIC PINA, 5; пропустить следующую команду, если 5-ый бит в порте, А установлен.

SBIS PINC, 7 ;пропустить следующую команду, если 7-ый бит в порте, А сброшен.

При пуске и перезапуске микроконтроллера все разряды регистров DDRх и PORTх всех портов сбрасываются в нулевое состояние и выводы портов работают в режиме входов и находятся в Z состоянии.

Пример программы управления ввод/выводом по параллельным портам.

Программная реализация 8 разрядного распределителя импульсов (порт РА) с программно изменяемой скоростью (порт РВ).

Порт, А настаиваем на вывод, а порт В — на ввод.

.include «m8535def.inc» .

;———————————————————————————————;

;Инициализация стека.

ldi r16, low (ramend) ;загрузить в r16 младший байт RAMEND.

out spl, r16 ;вывести значение r16 в SPL.

ldi r16, high (ramend) ;загрузить в r16 старший байт RAMEND.

out sph, r16 ;вывести значение r16 в SPH.

;———————————————————————————————;

;Инициализация портов МК.

clr r16 ;сброс всех битов в регистре r16.

out ddrd, r16 ;настраиваем все биты PORTD на ввод.

ser r16 ;устанавливаем все биты в регистре r16.

out ddra, r16 ;настраиваем все биты PORTA на вывод.

;———————————————————————————————;

;Основная программа.

ldi r18,$ 01 ;записываем в r16 1.

start:

rol r16 ;команда циклического сдвига влево.

out porta, r18 ;вывод содержимого r18 в PORTA.

rcall delay ;вызов подпрограммы формирование задержки.

rjmp start ;команда безусловного перехода на метку Start.

delay: ;подпрограмма формирования временной задержки.

in r16, portd ;вводим значения из PORTD в r16.

m:

dec r16 ;уменьшаем на 1 содержимое r16.

breq m ;если не равно 0 переходим на метку m.

ret ;выход их подпрограммы Индивидуальные задания к выполнению лабораторной работы № 3.

  • 1. Разработать программу для подсчета количества единиц в 8 разрядном слове порта РВ. Результат записать в РС, если РВ0=1, иначе в РА.
  • 2. Разработать программу для реализации 8 разрядного двоичного счетчика (порт РС). Режим суммирования при РВ0=1, режим вычитания РВ0=0.
  • 3. Разработать программу реализации 8 разрядного распределителя импульсов. Сдвиг слева направо, если PD0=1, справа налево, если PD0=0.
  • 4. Разработать программу для реализации 8 разрядного двоичного счетчика в режиме суммирования (порт РD). При РА0 = 1 с шагом +1импульс, а при РА0=0 с шагом +2 импульса.
  • 5. Разработать программу для реализации 8 разрядного двоичного счетчика в режиме суммирования (порт РD) с прогаммно-изменяемой скоростью работы. Скорость определяется значением порта С.
  • 6. Разработать программу для реализации следующих логических условий: если (РА0=1 и РС0=1) или РА3=1, то записать в РD число FF, иначе в РD число 00.
  • 7. Разработать программу для реализации следующих логических условий: если РА0 = 1 или РС0 = 1, то вызов подпрограммы сдвига данных влево и запись их в РА, иначевправо.
  • 8. Разработать программу формирования на выводах параллельного порта МК временных диаграмм заданного вида (см. таблицу 3.2).

Таблица 3.2.

№ варианта.

Временная диаграмма.

№ варианта.

Временная диаграмма.

Методическое обеспечение комплекса для выполнения лабораторных и практических работ по дисциплине «Применение микропроцессоров».
Методическое обеспечение комплекса для выполнения лабораторных и практических работ по дисциплине «Применение микропроцессоров».

Контрольные вопросы к лабораторной работе № 3.

  • 1. Назначение параллельных портов МК.
  • 2. Приведите примеры применения параллельных портов.
  • 3. Как производит настройка параллельных портов на ввод или вывод данных? Приведите пример настройки портов.
  • 4. Какие регистры используются для настройки параллельных портов?
  • 5. В чем отличие регистров DDRx, PORTx и PINx (где x-A, B, С, D и т. д.)
  • 6. Назначение регистров DDRx, PORTx и PINx параллельных портов.
  • 7. Перечислите команды обращения к портам и приведите их форматы.
  • 8. Привести схему подключения набора кнопок и светодиодной линейки индикации к параллельным портам МК. Разработать программу отображения состояния кнопок на светодиодной линейке индикации.
Показать весь текст
Заполнить форму текущей работой