Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Тривалості
При побудові систем обробки і управління досить часто виникає потреба вводу сигналів. Нехай, наприклад, необхідно за допомогою мікроконтролера PIC16F84 здійснити опитування двійкового датчика і, в залежності від його стану, або організувати процедуру «очікування події», або сформувати і видати керуючий сигнал у вигляді позитивного імпульсу заданої тривалості.
Для вирішення даної задачі необхідно: 1) вибрати лінії (розряди) порту А і В для вводу сигналів від датчика і виводу імпульсних сигналів (наприклад, RB0 – на ввід, а RA0 – на вивід); 2) заборонити всі переривання; 3) здійснити опитування стану датчика; 4) проаналізувати його (наприклад, перевіривши біт, що сигналізує про стан датчика, тобто визначити, відбулася в поточному циклі опитування подія в об'єкті управління або ні – чи був зафіксований черговий перехід з " 0" в " 1)"; 5) організувати процедуру передачі управління на дві підпрограми в залежності від рівня сигналу, отриманого від датчика; 6) сформувати позитивний імпульсний сигнал (IMPULS) заданої тривалості у випадку, якщо, наприклад, стан датчика дорівнює " 1" (D = 1). Для організації затримки (DELAY) можна використати: · одну або декілька холостих команд NOP; · програмний лічильник, працюючий, наприклад, в декрементному режимі. При цьому в лічильник заноситься константа, лічильник декрементується. Онулення лічильника є сигналом закінчення часового інтервалу; · внутрішній таймер-лічильник (TMRO); · зовнішній (додатковий) таймер-лічильник у випадку, якщо TMRO з будь-якої причини використати неможливо; 7) Організувати процедуру «очікування події», що полягає в безперервному опитуванні датчика і аналізі його стану.
На підставі попередніх міркувань можна запропонувати варіант функціональної схеми і блок-схеми алгоритму (БСА) робочої програми мікроконтролерного устаткування (МКУ).
Рисунок 13 – Блок-схема алгоритма опитування стану датчика
Рисунок 14 – Алгоритми підпрограм Перш ніж розпочати написання вхідного тексту робочої програми, необхідно остаточно визначити всі ресурси мікроконтролера і змінні, що знадобляться для вирішення поставленої задачі, а також здійснити розподіл пам'яті даних (ПД). Тобто закріпити за означеними ресурсами і змінними певні адреси в адресному просторі ПД. Цей розподіл ПД відбивається в секції заголовка робочої програми мікроконтролера.
Рисунок 15 - Функціональна схема приладу прийому сигналу
Варіант тексту програми, що дозволяє реалізувати всі функції, закладені у вхідному технічному завданні, наведений нижче (ОЗНАЙОМИТИСЬ З ТЕКСТОМ ПРОГРАМИ!):
LIST p = 16F84A
|