- •Магомедов и. А. Микропроцессорные системы. Теория и практика применения микроконтроллеров
- •Глава I. Микроконтроллеры
- •Глава III. Лабораторный практикум по микроконтроллерам семейства avr фирмы atmel
- •Предисловие
- •Введение
- •Глава I. Микроконтроллеры
- •1.1. Классификация микроконтроллеров
- •Области применения:
- •1.2. Направление развития элементной базы 8-разрядных микроконтроллеров
- •Контрольные вопросы
- •Глава II. Высокопроизводительные risc микроконтроллеры семейства avr
- •2.1. Микроконтроллер фирмы Atmel aTmega1281
- •2.2. Системное управление и сброс микроконтроллера
- •Контрольные вопросы
- •2.3. Программная модель микроконтроллера2
- •Регистр управления коэффициентом деления частоты кварцевого генератора - xtal Divide Control Register – xdiv.
- •Контрольные вопросы
- •Регистр управления коэффициентом деления частоты кварцевого генератора xdiv и его назначение. Пример использования регистра.
- •2.4 Подсистема памяти микроконтроллера
- •2.4.1 Статическое озу памяти данных
- •2.4.2 Система команд процессоров avr в семействе avr система команд у микроконтроллеров разных типов содержат от 89 до 130 команд.
- •2.4.3 Режимы адресации памяти программ и данных
- •2.4.5 Память данных на eeprom
- •2.4.6 Конфигурационные биты
- •2.4.7 Системная синхронизация и тактовые источники
- •Контрольные вопросы
- •2.5. Периферийные модули микроконтроллера aTmega128
- •2.5.1. Параллельные порты ввода-вывода
- •Порты в качестве универсального цифрового ввода-вывода. Все порты являются двунаправленными портами ввода-вывода с опциональными подтягивающими резисторами.
- •Описание регистров портов ввода-вывода.
- •Использование параллельных портов для управления жидкокристаллическим индикатором и
- •Контрольные вопросы
- •2.6. Подсистема таймера/счетчика микроконтроллера aTmega128
- •Описание регистров 8-разрядного таймера-счетчика 0.
- •Описание регистров 16-разрядных таймеров-счетчиков.
- •Контрольные вопросы
- •2.7. Подсистема ввода аналоговых сигналов мк
- •Контрольные вопросы
- •2.8. Аналоговый компаратор
- •Контрольные вопросы
- •2.9. Последовательный периферийный интерфейс – spi
- •Функционирование вывода ss.
- •2.9.1. Пример использования интерфейса spi микроконтроллера aTmega128
- •Контрольные вопросы
- •2.10. Универсальный синхронно - асинхронный последовательный приемопередатчик
- •Описание регистров усапп
- •2.10.1. Пример использования порта uart
- •Контрольные вопросы
- •2.11. Последовательный двухпроводной интерфейс twi
- •2.11.1. Формат посылки и передаваемых данных
- •2.11.2. Модуль twi микроконтроллера avr
- •Описание регистров twi.
- •2.11,3. Подключение схемы ds1307 к микроконтроллеру по интерфейсу twi
- •Глава III. Лабораторный практикум по микроконтроллерам семейства avr фирмы atmel6
- •Оформление отчета
- •Правила выполнение работы в лаборатории
- •Подготовки стенда к выполнению лабораторной работы
- •Лабораторная работа № 1. Разработка и отладка программ в среде avr Studio 4. Изучение системы команд микроконтроллеров семейства avr
- •Режимы работы отладчика
- •Индивидуальные задания к выполнению лабораторной работы №1
- •Контрольные вопросы к лабораторной работе №1
- •Лабораторная работа №2. Параллельные порты ввода/вывода микроконтроллера
- •Индивидуальные задания к выполнению лабораторной работы №2
- •Контрольные вопросы к лабораторной работе №2
- •Лабораторная работа №3 Подсистема ввода аналоговых сигналов микроконтроллера
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работы №3
- •Контрольные вопросы к лабораторной работе №3
- •Лабораторная работа №4.
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работы №4
- •Контрольные вопросы к лабораторной работе №4
- •Лабораторная работа №5 Изучение режимов работы Таймера/Счетчика
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работы №5
- •Контрольные вопросы к лабораторной работе № 5
- •Лабораторная работа №6 Последовательный периферийный интерфейс – spi
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работы №6
- •Контрольные вопросы к лабораторной работе № 6
- •Лабораторная работа №7 Подсистема памяти микроконтроллера.
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работе №7
- •Контрольные вопросы к лабораторной работе №7
- •Лабораторная работа №8 Последовательный двухпроводной интерфейс i2c (twi)
- •Краткие теоретические сведения
- •Индивидуальные задания к выполнению лабораторной работы №8
- •Контрольные вопросы к лабораторной работе №8
- •Список использованной литературы
- •Костин г.Ю. Микроконтроллеры фирмы Motorola. М.: ктц-мк, 1998.
- •Микроконтроллеры семейства avr
- •Приложение 2
- •Include - Вложить другой файл
- •Выражения
- •Набор инструкций
- •Приложение 3
- •Семейства avr
- •Приложение 4
Индивидуальные задания к выполнению лабораторной работы №6
Разработать программу (варианты)
передачи данных, расположенных в ОЗУ, начиная со старшего бита, по порту SPI.
приема данных в режиме ведомого по порту SPI с сохранением их в ОЗУ по сигналу «Запрос прерывания».
приема данных по порту SPI. Если количество единиц в байте четное, то сохранить байт в одной области ОЗУ, нечетное - в другой области.
приема данных по порту SPI. Если количество единиц в байте четное, то записать байт в порт A, иначе - в порт В.
приема данных по порту SPI. Если четное число, то сохранить в одной области ОЗУ, иначе - в другой области.
приема данных по порту SPI. Если четное число, то записать в порт A, иначе - в порт В.
передачи данных по порту SPI в режиме ведущего по двум адресам. Передаваемые данные расположены в ОЗУ.
передачи и приема данных по порту SPI с контролем по паритету.
Контрольные вопросы к лабораторной работе № 6
Назначение SPI порта МК и его основные характеристики.
Режимы работы SPI и отличительные особенности.
Формат регистра статуса SPI - SPSR и назначение битов регистра. Привести пример использования регистра статуса SPI
Регистр управления SPI - SPCR и назначение битов регистра. Привести пример использования регистра управления SPI.
Выбор частоты тактового сигнала и требования к выбору частоты обмена данными.
Назначение регистра данных SPI - SPDR.
Привести пример считывания содержимого регистра статуса SPI, записи данных в регистры управления и данных SPI.
Вектора прерывания SPI и их назначение. Привести пример организации приема/передачи в режиме прерывания.
Приведите временные диаграммы приема/передачи информации SPI порту.
Привести схему соединения ведущего и ведомого МК по SPI порту.
Особенности использования SPI при программировании МК.
Чем отличается работа ведущего-приемника от ведомого-приемника?
Чем отличается работа ведущего-передатчика от ведомого-передатчика?
Лабораторная работа №7 Подсистема памяти микроконтроллера.
Цель работы. Изучение принципов построения подсистемы памяти МК. Разработка и отладка обращения к EEPROM.
Краткие теоретические сведения
EEPROM память данных. EEPROM память данных организована как отдельное пространство данных с возможность считывания и записи отдельного байта. EEPROM обеспечивает 100000 циклов стирания/записи. Взаимодействие между EEPROM и CPU определяется регистром адреса EEARH_L, регистром данных EEDR и регистром управления EECR.
Назначение битов регистра управления:
D7-D4 – зарезервированны.
D3-EERIE – разрешение прерывания по готовности EEPROM.
D2-EEMWE – управление записью в EEPROM, при установленном бите и бите EEWE производится запись байта данных из регистра данных в EEPROM по адресу хранящемуся в регистрах адреса.
D1-EEWE – разрешение записи EEPROM, процесс записи выполняется следующим образом:
Подождать, пока EEWE не сброситься.
Записать новый адрес в EEARH_L.
Записать данные в регистр данных EEDR.
Установить EEMWE в «1»
В течение 4 тактовых циклов после установки EEMWE установить в единичное состояние EEWE.
D0-EERE – разрешение чтения. сигнал является командой чтения данных из ячейки памяти, адрес которой находится в регистрах адреса. Подробно см. раздел 2.4.
Пример программ обращения к 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
