Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Учебные пособия » Цифрові обчислювальні пристрої та мікропроцесори приладових комплексів

Реферат Цифрові обчислювальні пристрої та мікропроцесори приладових комплексів





ідпрограми обслуговування

; переривання INT, якщо біт A.3 дорівнює 1

JMP M1; перехід, якщо біт A.3 НЕ дорівнює 1

...;

INT: STOP TCNT; останов таймера

JMP 07; перехід до осередку 7 (вектор переривання

; від лічильника подій)

Приклад 4.3 . Програмне формування тимчасової затримки. Припустимо, що в керуючій програмі необхідно реалізувати тимчасову затримку 100 мкс. Підпрограма формування тимчасової затримки буде мати вигляд:

DELAY: MOV R2, # X; (R2) в†ђ X

COUNT: DJNZ R2, COUNT; декремент R2 і цикл, якщо не нуль

RET; повернення

Для отримання необхідної тимчасової затримки необхідно визначити число X, завантажуване в робочий регістр. Визначення числа X виконується на основі розрахунку часу виконання команд, утворюють дану підпрограму. При цьому необхідно враховувати, що команди MOV і RET виконуються одноразово, а число повторень команди DJNZ дорівнює числу X. Крім того, звернення до підпрограмі тимчасової затримки здійснюється по команді CALL DELAY, час виконання якій також необхідно враховувати при підрахунку тимчасової затримки. В описі команд мікроконтролера вказується, за скільки машинних циклів (МЦ) виповнюється кожна команда. На підставі цих даних визначається сумарний число машинних циклів у підпрограмі: CALL - 2 МЦ, MOV - 2 МЦ, DJNZ - 2 МЦ, RET - 2 МЦ.

При тактовою частоті 6 МГц кожен машинних цикл виконується за 2,5 мкс. Таким чином, підпрограма виконується за час 5 +5 +5 X +5 = 15 +5 X мкс. Для реалізації тимчасової затримки 100 мкс число X = (100-15)/5 = 17.

Приклад 4.4 . Тимчасова затримка великої тривалості. В якості прикладу розглянемо підпрограму, що реалізовує тимчасову затримку 100 мс:

DELAY: MOV R1, # 84; завантаження X

LOOPEX: MOV R2, # 236; завантаження Y

LOOPIN: DJNZ R2, LOOPIN; декремент R2 і внутрішній цикл,

; якщо R2 не дорівнює нулю

DJNZ R1, LOOPEX; декремент R1 і зовнішній цикл,

; якщо R1 не дорівнює нулю

MOV R3, # 4; точна підстроювання тимчасової затримки

LOOPAD: DJNZ R3, LOOPAD;

RET;

Числа X і Y вибираються з співвідношення T = 5 +5 + X (5 +5 Y +5) +5, де T - реалізований тимчасової інтервал у мікросекундах. Максимальний часовий інтервал, реалізований таким чином, при X = Y = 255 становить 327,69 мс, тобто приблизно 0,3 с.

У прикладі два вкладених циклу реалізують тимчасову затримку тривалістю 15 +84 (10 +5 * 236) = 99975 мкс, а додатковий цикл LOOPAD реалізує затримку 25 мкс і тим самим забезпечує точне підстроювання тимчасового інтервалу.

Тимчасова затримка тривалістю 1 с. Секунда є дуже великим інтервалом часу в порівнянні з частотою тактирования мікроконтролера. Такі затримки складно реалізувати методом вкладених циклів, тому їх зазвичай набирають з точно підстроєних затримок меншою тривалості. Наприклад, затримку в 1 с можна реалізувати десятикратним викликом підпрограми, що реалізує затримку 100 мс:

ONESEC: MOV R3, # 10; завантаження в R3 числа викликів

; підпрограми DELAY

LOOP: CALL DELAY; затримка 100 мс

DJNZ R3, LOOP; декремент R3 і цикл, якщо R3 не дорівнює 0

Похибка програми становить 55 мкс.

Приклад 4.5 . Формування тимчасової затримки на основі таймерів. Недоліком програмної реалізації тимчасової затримки є нераціональне використання ресурсів мікроконтролера: під час формування затримки мікроконтролер практично простоює, оскільки не може вирішувати завдання управління об'єктом. У той же час апаратурні засоби мікроконтролера дозволяють реалізувати тимчасові затримки на тлі основної програми роботи.

При використанні таймера в МК48 можна отримати тимчасові затримки тривалістю від 80 мкс до 20 мс. p> Наприклад, для реалізації тимчасової затримки 240 мкс необхідно виконати наступні дії:

MOV A, # NOT (240/80-1); завантаження таймера

MOV T, A;

STRT T; запуск таймера

EN TCNTI; дозвіл переривання

Поява сигналу переривання від таймера відповідає закінченню тимчасового інтервалу 240 мкс. Похибка становитиме 7,5 мкс (час виконання команди передачі управління по вектору переривання і команди STOP TCNT).

Висновок: вивчив структурну схему однокристального мікроконтролера ВЕ48, його центральний процесор, організацію пам'яті програм і даних, засоби розширення пам'яті програм і даних; розглянув систему команд з пересилання та обробці даних; ознайомився з наведеними нижче прикладами програм мовою асемблера; справив введення, налагодження і трансляцію в об'єктний код цих програм; виконав програми по кроках з переглядом результатів виконання в регістрах і оперативної пам'яті.


Назад | сторінка 6 з 6





Схожі реферати:

  • Реферат на тему: Лінія затримки на поверхневих акустичних хвилях
  • Реферат на тему: Імпульсівна поведінка дітей з затримки псіхічного розвитку
  • Реферат на тему: Фізична реабілітація дітей Із затримки псіхічного розвітку ВІКОМ 6-8 років ...
  • Реферат на тему: Особливості діагностікі и корекції затримки псіхічного розвітку в молодшому ...
  • Реферат на тему: Поняття тимчасової непрацездатності. Види тимчасової непрацездатності