Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

БИБЛИОГРАФИЧЕСКИЙ СПИСОК. 1. Гребнев В.В. Микроконтроллеры семейства AVR фирмы Atmel / В.В



1. Гребнев В.В. Микроконтроллеры семейства AVR фирмы Atmel /
В.В. Гребнев. – M.: ИП Радиософт, 2002. – 176 с.

2. Assembler для DOS, Windows UNIX / С.В. Зубков. – М.: ДМК Пресс, 2000. – 608 с.

3. Козаченко В.Ф. Микроконтроллеры: руководство по применению
16-разрядных микроконтроллеров Intel MCS-196/296 во встроенных системах управления / В.Ф. Козаченко. – М.: Издательство ЭКОМ, 1997. – 688 с.

4. Лабораторный комплекс «Микроконтроллеры и автоматизация»: Техническое описание и методические указания к проведению лабораторных работ. ПМА90.00.000: ТО Уральский филиал РНПО «Росучприбор», Министерство образования и науки Российской Федерации, 2005. – 138 с.

5. Лабораторный комплекс «Микроконтроллеры и автоматизация»: Учебное пособие. ПМА90.00.000: ТО Уральский филиал РНПО «Росучприбор», Министерство образования и науки Российской Федерации, 2005. – 138 с.

6. Основы микропроцессорной техники. Курс лекций. Учебное пособие. / Издание второе, исправленное / Новиков Ю.В., Скоробогатов П.К / – М.: ИНТУИТ.РУ «Интернет университет информационных технологий», 2004. – 440 с.

7. Трамперт В. AVR-RISC микроконтроллеры.: Пер. с нем. / В.Трамперт. – Киев: «МК-Пресс», 2006. – 464 с.

8. Финогенов К.Г. Использование языка Ассемблера: Учебное пособие для вузов / К.Г. Финогенов К.Г. – М.: Горячая линия - Телеком, 2004. – 438 с.

9. AVR-микроконтроллеры: семь ярких лет становления. что дальше? часть 1. / Игорь Кривченко Елена Ламберт / – URL: http://www.atmel.ru/Articles/Atmel25.htm. Дата обращения: 01.12.2008.

 


Приложение. Пример оформления отчета

По лабораторной работе

КАЗАНСКИЙ ГОСУДАРСТВЕННЫЙ ЭНЕРГЕТИЧЕСКИЙ УНИВЕРСИТЕТ

 

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ И ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ

 

ЛАБОРАТОРНАЯ РАБОТА № 1.

Изучение системы команд микроконтроллера и директив ассемблера

Группа Выполнили оценка балл Подпись
ЭАБ 1 -06 Толковкин Т.Т.      
Вариант 1 Иванов Б.Б      
         

 

Цель работы: Ознакомиться с лабораторным комплексом «Микроконтроллеры и автоматизация», получить навык работы с программой AVR Studio, ознакомиться с системой команд программируемого микроконтроллера AT90S8535, подготовить простейшую программу, отладить её, записать в микроконтроллер и продемонстрировать работу подготовленной программы.

 

Условие задачи: Вычесть из числа 5 число 3. Если на блоке управления включен тумблер SA1, то на индикацию выдать результат вычитания. Если тумблер SA1отключен – на индикацию вывести цифру ноль.

 

 

СТРУКТУРА ДАННЫХ

 

Таблица 1. Порядок настройки портов

ПОРТЫ Выводы на вход Выводы на выход
Порт А 0–7
Порт В 0, 1, 4–7 2, 3
Порт С 0–7
Порт D 0–3 4–7

 

Таблица 2. Размещение структурных элементов программы

ЭЛЕМЕНТ СТРУКТУРЫ ДАННЫХ Имя Адрес Память
Вершина стека SP $025f Регистры I/O
Начало программы $0030 FLASH

 

 

Таблица 3. Перечень констант

КОНСТАНТЫ Имя Значение Адрес Память
Адрес кода 0 cod0 $3f $64 SRAM
Адрес кода 1 cod1 $06 $65 SRAM
Адрес кода 2 cod2 $5b $66 SRAM
Адрес кода 3 Cod3 $4f $67 SRAM
Адрес кода 4 Cod4 $66 $68 SRAM
Адрес кода 5 Cod5 $6d $69 SRAM
Адрес кода 6 Cod6 $7d $6a SRAM
Адрес кода 7 Cod7 $07 $6b SRAM
Адрес кода 8 Cod8 $7f $6c SRAM
Адрес кода 9 Cod9 $6f $6d SRAM

 

 

Таблица 4. Перечень переменных

ПЕРЕМЕННЫЕ Имя Значение Адрес Память
Уменьшаемое r17 РОН
Вычитаемое r19 РОН
Результат (разность) r20 РОН
Адрес ячейки кода индикации разности r0 РОН
Адрес первого из кодов индикации $64 Z (zh, zl) (r31, r30) РОН
Вспомогательные регистры для промежуточных значений r16, r17 РОН

 


АЛГОРИТМ

 

Запись кода в порт С
$3f   $6d
$06   $7d
$5b   $07
$4f   $7f
$66   $6f

 

Рекомендуется выбирать максимально возможный из доступных адресов SRAM
К начальному адресу прибавляяется результат вычитания или ноль
Рекомендуется выбирать максимально возможный из доступных адресов SRAM
Определение имен констант для хранения адресов кодов


 


  Задание стека

 

 


задание адреса начала зарезервированных ячеек

 


Начало  
Присвоение имен ячейкам SRAM

 

  Настройка портов
Задание уменьшаемого и вычитаемого
Задание семисегментных кодов
Произвести вычитание
Да
Нет
Результату присвоить значение нуля  
Тумблер включен?
Определение адреса ячейки с кодом результата
Из ячейки выдать код на индикацию

 

ТЕКСТ ПРОГРАММЫ

;*****************************************************

;Работа № 1. Вариант № 1

;************************************** **********************

;******подключаемые дополнительные файлы******

.include "8535def.inc" ;включить файл – описание для AT90S8535

 

.dseg ;объявление сегмента данных

 

;******* ;присвоение имен ячейкам SRAM **********************

.equ cod0=$64

.equ cod1=$65

.equ cod2=$66

.equ cod3=$67

.equ cod4=$68

.equ cod5=$69

.equ cod6=$6a

.equ cod7=$6b

.equ cod8=$6c

.equ cod9=$6d

 

.cseg ;объявление сегмента кодов

.org 0 ; адрес начала программы в программной памяти

rjmp reset ;прерывание по сбросу

 

;*******начало основной программы**********

.org $30

reset:

 

; ******* задание стека с вершиной по адресу $025f *******

ldi r16,$02

out sph,r16

ldi r16,$5f

out spl,r16

 

; ******* задание адреса начала зарезервированных ячеек *******

ldi zl,$64

ldi zh,$00

 

; ******* Настройка портов ****************************

ldi r16,$ff ;настроить порт С на выход

out ddrc,r16

ldi r16,00 ;настроить порт А на вход

out ddra,r16

ldi r16,$c ;настроить порт В: биты 2 и 3 на выход, остальные на вход

out ddrb,r16

ldi r16,$f0 ;настроить порт D: биты 0...4 на вход, остальные на выход

out ddrd,r16

sbi portB,3 ;выдать 1 на разряд 3 порта В (активен HG2)

 

; ******* задание семисегментных кодов *******

ldi r17,$3f

sts cod0,r17

ldi r17,$06

sts cod1,r17

ldi r17,$5b

sts cod2,r17

ldi r17,$4f

sts cod3,r17

ldi r17,$66

sts cod4,r17

ldi r17,$6d

sts cod5,r17

ldi r17,$7d

sts cod6,r17

ldi r17,$07

sts cod7,r17

ldi r17,$7f

sts cod8,r17

ldi r17,$6f

sts cod9,r17

 

;******* Задание уменьшаемого и вычитаемого *******

ldi r17,5 ;задание уменьшаемого

ldi r18,3 ;задание вычитаемого

 

m1:

 

;******* Проверка «Тумблер включен?» *******

sbis pina,4 ;если включен тумблер SA1,то пропустить

rjmp m2 ;следующую команду

;******* Произвести вычитание *******

mov r20,r17 ; в r20 поместить уменьшаемое

sub r20,r18 ; вычесть вычитаемое результат остается в r20

rjmp vv

 

;******* Результату присвоить значение нуля *******

 

m2:

ldi r20,0 ;в r20 записать ноль

 

;******* Определение адреса ячейки с кодом результата *******

 

vv:

 

push zl ;сохранить zl в стеке

add zl,r20 ;сложить zl с результатом

ld r0,z ;семисегментный код результата переслать в r0

pop zl ;извлечь zl из стека

 

;******* Из ячейки выдать код на индикацию *******

out portc,r0 ;запись кода в порт С

 

rjmp m1

 

 

ВЫВОДЫ ПО РАБОТЕ:

 

 

Выполнили   Толковкин Т.Т.
  (Подпись)  
    Иванов Д.Д
  (Подпись)  
     
  (Подпись)  

 

 


СОДЕРЖАНИЕ

ВВЕДЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1. МИКРОКОНТРОЛЛЕРЫ AT90S4434/8535 СЕМЕЙСТВА AVR . . . .
1.1. Структура микроконтроллеров AVR . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Представление данных в языке ассемблера . . . . . . . . . . . . . . . . . . .
1.2.1. Двоичная система счисления . . . . . . . . . . . . . . . . . . . . . .
1.2.2. Биты, байты и слова . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3. Шестнадцатеричная система счисления . . . . . . . . . . . . . . . . .
1.3 Адресное пространство микроконтроллеров AVR . . . . . . . . . . .
2. ЛАБОРАТОРНЫЙ КОМПЛЕКС . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1. Назначение и состав комплекса . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Блок управления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3. ДИРЕКТИВЫ АССЕМБЛЕРА . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1. Директивы организации сегментов . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Директивы счетчика текущего адреса . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Директивы определения данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4. Директивы присваивания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5. Директивы задания набора допустимых команд . . . . . . . . . . . . . . . .
3.6. Директивы управления файлами . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7. Директивы управления листингом . . . . . . . . . . . . . . . . . . . . . . . . . . .
4. СИСТЕМА КОМАНД МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВА AVR
4.1. Команды пересылки данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2. Арифметические команды . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3. Логические команды . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4.Команды перехода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5. ПРОГРАММА НА АССЕМБЛЕРЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1. Структура программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2. Алгоритм решения задачи и структура данных . . . . . . . . . . . . . . . . .
5.3. Пример алгоритма программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4. Пример текста программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6. НАБОР И ОТЛАДКА ПРОГРАММ . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1. Набор программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2. Отладка программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3. Запись программы в микроконтроллер . . . . . . . . . . . . . . . . . . . . . . . .
7. МЕРЫ БЕЗОПАСНОСТИ ПРИ ЭКСПЛУАТАЦИИ КОМПЛЕКСА
8. ОБЩИЕ МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОНЫМ РАБОТАМ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  
   
9. ЛАБОРАТОРНАЯ РАБОТА № 1. ИЗУЧЕНИЕ СИСТЕМЫ КОМАНД МИКРОКОНТРОЛЛЕРА И ДИРЕКТИВ АССЕМБЛЕРА  
9.1. Цель работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.2. Пояснение к работе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.3. Варианты индивидуальных заданий . . . . . . . . . . . . . . . . . . . . . . . . . .
10. ЛАБОРАТОРНАЯ РАБОТА № 2. СИСТЕМА ПАРАЛЛЕЛЬНОГО ВВОДА/ВЫВОДА . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  
10.1. Цель работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.2. Пояснение к работе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.3. Варианты индивидуальных заданий . . . . . . . . . . . . . . . . . . . . . . . .
11. лабораторная работа № 3. ДИНАМИЧЕСКАЯ ИНДИКАЦИЯ
11.1. Цель работы . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.2. Пояснения к работе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.3. Варианты индивидуальных заданий . . . . . . . . . . . . . . . . . . . . . . . .
12. ЛАБОРАТОРНАЯ РАБОТА №4. СИСТЕМА ВНЕШНИХ ПРЕРЫВАНИЙ МИКРОКОНТРОЛЛЕРА . . . . . . . . . . . . . . . . . . . . . . . .  
12.1. Цель работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.2. Пояснения к работе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.3. Варианты индивидуальных заданий . . . . . . . . . . . . . . . . . . . . . . . .
13. ЛАБОРАТОРНАЯ РАБОТА № 5. ПРОГРАММИРОВАНИЕ ТАЙМЕРОВ/СЧЕТЧИКОВ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  
13.1. Цель работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.2. Пояснения к работе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.3.1. Работа в режиме счетчика . . . . . . . . . . . . . . . . . . . . . . . . . .
13.3.2. Работа в режиме таймера . . . . . . . . . . . . . . . . . . . . . . . . . . ..
13.3.3. Работа в режиме широтно-импульсного модулятора . . . .
13.3. Варианты индивидуальных заданий . . . . . . . . . . . . . . . . . . . . . . . .
БИБЛИОГРАФИЧЕСКИЙ СПИСОК . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ПРИЛОЖЕНИЕ. ПРИМЕР ОФОРМЛЕНИЯ ОТЧЕТА ПО ЛАБОРАТОРНОЙ РАБОТЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  

 

 


 

 

Учебное издание

 

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.