Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Ввід дискретної інформації ззовні в контролер можливий двома основними способами – програмним і по перериванню.
|
Розглянемо введення програмним способом на наступному прикладі.
Приклад:
Скласти блок – схему алгоритму програм введення інформації.
Вихідні дані:
- вхід синхронізації РВ4;
- вхід даних РС3.
Необхідно виконати чекання появи імпульсу на вході синхронізації тобто переходу від значення «0» до значення «1». Після цього виконати одну підпрограму, якщо рівень сигналу на вході даних дорівнює «0» і іншу, якщо він дорівнює «1».
Блок-схема алгоритму програми приведена на рис. 7.
Програма, що відповідає цьому алгоритму приведена нижче:
rjmp RESET
{таблиця переривань}
MAIN: rcall INIT
L001: sbic PINB, PB4
rjmp L001
L002: sbis PINB, PB4
rjmp L002
sbic PINC, PC3
rjmp SUBR1
rjmp SUBR0
RESET: ldi r16, low(RAMEND)
out SPL, r16
ldi r16, high(RAMEND)
out SPH, r16
rjmp MAIN
INIT: ldi r16, 0Bxxx0xxxx
out DDRB, r16
ldi r16, 0Bxxxx0xxx
out DDRc, r16
ret
Ініціалізація передбачає настроювання апаратних засобів контролера на необхідну роботу – настроювання стека, напрямки роботи портів вводу-виводу і т.п.
Рис. 7
Дата публикования: 2015-01-13; Прочитано: 246 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!