Приклад виконання завдання

Завдання до лабораторної роботи

 

Написати програму для мікроконтролера AT90S2313, яка:

a) виконує пересилку до регістру R числа з SRAM і відображає його на статичному світлодіодному індикаторі, який підключений до порта B мікроконтролера;

b) відображає на індикаторі по черзі молодшу та старшу частину числа з регістру R на індикаторі (схему розробити самостійно).

Перевірити виконання програми в AVR STUDIO. Зібрати схему лабораторного макету у середовищі Proteus. Перевірити працездатність розробленої програми.

 

Таблиця 1 – Таблиця варіантів завдань

Номер SRAM CONST1 R
A5 A6 C7 6a 7B 8C 9D AE 7F 6E 8A 8D 9C D6 D5 CF 6D 8A 9E 7F FE FF FD FC FB FA F1 F2 F3 F4 F5 F6 F7 F8 F8 F9 F1 F2 F3 F4 FF 1F 2E 3D 4C 5B 6A

Зміст звіту

1. Схема лабораторного макета (схему розробити самостійно).

2. Завдання до лабораторної роботи.

3. Текст програми з поясненнями.

4. Результати виконання програми в AVR STUDIO.

5. Результати роботи лабораторного макета в середовищі Proteus.

 

Приклад виконання завдання

Написати програму для мікроконтролера AT90S2313, яка:

a) виконує пересилку до регістру R2 числа $6A з комірки SRAM з адресою $7F і відображає його на статичному світлодіодному індикаторі, який підключений до порта B мікроконтролера;

b) відображає на індикаторі по черзі молодшу та старшу частину числа $6A Перевірити виконання програми в AVR STUDIO. Зібрати схему лабораторного макету у середовищі Proteus. Перевірити працездатність розробленої програми.

Виконання першої частини завдання

 

.def temp =R16 ; присвоїти temp значення R16

clr R27; очистити старший байт Х

LDI R26,$7F; встановити $7F у молодший байт Х

LD R1,X; завантажити в R1 зміст SRAM за адресою 7F

LDI temp,$FF; ініціалізація порта В

OUT $17,temp; порт В настроєний на вивід

M1: OUT $18,R1; вивід через порт В змісту R1 (загорання

; світлодіодів)

RJMP M1

Рисунок 5 – Результат виконання першої частини завдання в AVR Studio

 

Програма виконання другої частини завдання.

 

.include "2313def.inc"

.def temp =R16 ;присвоїти temp значення R16

.def fine =R18 ;мітка затримки

.def medium =R19 ;мітка затримки

.def coarse =R20 ;мітка затримки

LDI R17, RamEND ;налаштування стеку

OUT SPL, R17

LDI R17, $6A ;запис в комірку SRAM $7F

STS $7F, R17 ;числа $6A

clr R27 ;очистити старший байт Х

LDI R26,$7F ;встановити $7F у молодший байт Х

LD R1,X ;завантажити в R1 зміст SRAM за адресою $7F

LDI temp,$FF ;ініціалізація порта D, В

OUT $11,temp ;порт D налаштований на вивід

OUT $17,temp ;порт В налаштований на вивід

L1: MOV R17,R1 ;копіювання інформації в R17 з R1

ANDI R17,$0F ;маскування старшого байту числа

OUT $18,R17 ;запис в порт В молодшої частини R17 (загорання ;світлодіодів)

OUT $12, R17 ;запис в порт D молодшої частини R17 (на індикатор)

RCALL delay ;виклик підпрограми затримки

MOV R17,R1 ;копіювання інформації в R17 з R1

ANDI R17,$F0 ;маскування молодшого байту числа

OUT $18,R17 ;запис в порт В старшої частини R17 (загорання ;світлодіодів)

LSR R17 ;зсув усіх біт праворуч (для виводу на індикатор)

LSR R17 ;зсув усіх біт праворуч

LSR R17 ;зсув усіх біт праворуч

LSR R17 ;зсув усіх біт праворуч

OUT $12,R17 ;запис в порт D старшої частини R17

RCALL delay ;виклик підпрограми затримки

RJMP L1

 

delay: LDI coarse,8;

cagain: LDI medium,255 ;отримання затримки 1/2 секунди

magain: LDI fine,255 ;при 4МГц тактовій частоті

fagain: dec fine;

brne fagain;

DEC medium;

BRNE magain;

DEC coarse;

BRNE cagain;

RET

 

 

Рисунок 6 – Результат виконання другої частини завдання (вивід молодшої частини числа)

Рисунок 7 – Результат виконання другої частини завдання (вивід старшої частини числа)

 


<== предыдущая лекция | следующая лекция ==>
Виконання арифметичних операцій з цілими числами | Опитування дискретних датчиків




Дата добавления: 2015-10-19; просмотров: 814;


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

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.