Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Приклад програми для лабораторної роботи №1




Приклад програми для лабораторної роботи №1

На світлодіодній лінійці засвітити біжучу точку.

// address of LEDs 0x07

// define DATA transfer register

DAT EQU R0

// define ADDRESS transfer register

ADDR EQU R1

// define temporary0 register

Temp0 EQU R2

// Address for PUSH and POP commands

_Temp0 EQU 0x02

//Interrupt vector

ORG 0x0000

JMP RESET

ORG 0x0033

RESET:

MOV DAT, #11111111b

MOV ADDR, #00000111b

CALL write

MOV A, #0x01

Forever:

  Rr A

  MOV DAT, A

  MOV ADDR, #0x07

  CALL write

  CALL LDelay

  CALL LDelay

  CALL LDelay

  CALL LDelay

  CALL LDelay

  CALL LDelay

  CALL LDelay

JMP Forever

// Write to periferal device subroutine

write: setb P3. 6      // Set Data bus buffer to TX

        mov P0, DAT    //moving data to bus buffer

        mov P2, ADDR // set periferals address

        nop                    //wait

        nop

        mov P2, #0x00 //clock pulse for device latch

ret                    //exit from subroutine

// Delay 17. 9 ms

LDelay:

  MOV Temp0, #0xFF

LD1:

  DEC Temp0

  PUSH _Temp0

        MOV Temp0, #0xFF

        DJNZ Temp0, $

  POP _Temp0

  CJNE Temp0, #0x00, LD1

RET

END

Варіанти індивідуальних завдань

Текст індивідуального завдання
На світлодіодній лінійці засвітити індикатори (LED 8 …. LED 15) через один, нижній індикатор засвічений, час засвітки 1с., після цього погасити індикатор, час витримати 1с., повторити процедуру спочатку.
На світлодіодній лінійці засвітити індикатори (LED 8 …. LED 15) через один, нижній індикатор загашений, час засвітки 2с., після цього засвітити всі індикатори, час світіння 1с. дальше повторити процедуру спочатку.
На світлодіодній лінійці засвітити індикатори (LED 8 …. LED 11), потім погасити, процедуру повторювати з частотою 1Гц
На світлодіодній лінійці засвітити індикатори (LED 12 …. LED 15), потім погасити, процедуру повторювати з частотою 0, 5Гц
На світлодіодній лінійці засвітити біжучу точку, напрямок від LED 8 до LED 15, швидкість переміщення 1 сегмент всекенду
На світлодіодній лінійці засвітити біжучу точку, напрямок від LED 15 до LED 8, швидкість переміщення 2 сегмент всекенду
На світлодіодній лінійці засвітити індикатори в режимі “інкрементного термометра”, напрямок від LED 15 до LED 8, швидкість наростання 1 сегмент в секенду (початковий стан: засвічено LED 15, черз 1 с. засвічено LED 15 і LED 14, коли засвічено всі світлодіоди повертаємось в початковий стан)
На світлодіодній лінійці засвітити індикатори в режимі “інкрементного термометра”, напрямок від LED 8 до LED 15, швидкість наростання 2 сегмент в секенду (початковий стан: засвічено LED 8, черз 0, 5с. засвічено LED 8 і LED 9, коли засвічено всі світлодіоди повертаємось в початковий стан)
На світлодіодній лінійці засвітити індикатори в режимі “декриментно термометра”, напрямок від LED 15 до LED 8, швидкість спадання 2 сегмент в секенду (початковий стан: засвічено всі світлодіоди, черз 2 с. засвічено з LED 15 по LED 9, коли всі світлодіоди погаснуть повертаємось в початковий стан)
На світлодіодній лінійці засвітити індикатори в режимі “декриментно термометра”, напрямок від LED 8 до LED 15, швидкість спадання 1 сегмент в секенду (початковий стан: засвічено всі світлодіоди, черз 1 с. засвічено з LED 14 по LED 8, коли всі світлодіоди погаснуть повертаємось в початковий стан)

Лабораторна робода №2. Схема статичного відображення інформації та робода з семисегментним індикатором

Тема: Схема статичного відображення інформаціїта робода з семисегментним індикатором.

Мета: Вивчити метод статичного відображення інформації на прикладі семисегментного індикатора.

 

Порядок виконання роботи:

1. Вивчити принцип статичного методу відображення інформації на прикладі семисегментного індикатора.

2. Розробити алгоритм індивідуального завдання до початку заняття.

3. Розробити програму і скомпілювати її.

4. Завантажити програму в стенд, переконатись в правильності її роботи, при негативному результаті виявити допущені помилки і виправити їх. Повторити завантаження програми в стенд.

 

 

Рисунок 2. 1 – Схема для лабораторної роботи №2

 

Короткі теоретичні відомості

До вузла статичної індикації входять: 4 регістри-фіксатори, струмообмежуючі резистори і чотири цифровий світлодіодний семисегментний дисплей. Схема їх увімкнення показана на рисунку 3. 1. Зміст статичної індикації полягає у тому, щоб кожен індикатор постійно висвічувався від свого джерела інформації.

Число, яке виводиться на індикатор, фіксується відповідним регістром. Після запису числа в регістр, шина даних може приймати довільне значення, воно не буде впливати на значення, що висвічується на індикаторі. Хоча застосування статичної індикації і потребує відносно великих апаратних затрат, зате відпадає потреба в постійному переключенні індикаторів, як у випадку динамічної індикації, спрощується програмне забезпечення, контролер звільняється від необхідності постійної почергової передачі чисел на кожен індикатор, як у випадку динамічної індикації.

Коли потрібно засвітити сегмент індикатора, слід встановити відповідний біт регістра, рівний логічному нулю. Для того, щоб погасити відповідний індикатор, у регістр потрібно записати число 0FFh. Оскільки індикатори підключені без дешифраторів, то процес дешифрування слід проводити програмно. Програмне дешифрування дозволяє виводити на індикатор не тільки числа, а й деякі букви та інші символи.

 

Рисунок 3. 1 – Схема позначення сегментів індикатора

 

Таблиця 3. 1 – Дешифрування двійкового коду для семисегментного індикатора

Сегмент/цифра
Dat0 (a)
Dat1 (b)
Dat2 (c)
Dat3 (d)
Dat4 (e)
Dat5 (f)
Dat6 (g)
Dat7 (dp)

 

Для засвічування десяткової коми (dp, decimal point) потрібно встановити біт 7 дешифратора, рівний 0.

Адреси цифр дисплея розміщені наступним чином:

для запису в перший (справа наліво) розряд адрес рівний 01h;

для запису в другий розряд Р2 адрес рівний 02h;

для запису в третій розряд Р2 адрес рівний 03h;

для запису в четвертий розряд Р2 адрес рівний 04h.

Запис відбувається згідно послідовності, вказаної в лабораторній рободі №2.


Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...