- •Національний університет „Львівська політехніка” Кафедра атхп Курсовий проект
- •1. Індивідуальне завдання до курсового проекту з дисципліни «мікропроцесорна техніка» на тему «проектування інтелектуального давача на базі мікоконтролера 89с51»
- •Структурна схема інтелектуального давача, побудованого на базі мікроконтролера 89с51 .
- •2.1 Мікроконтролер 89с51 .
- •Опис роботи інтелектуального давача.
- •Побудова контролера клавіатури та семисегментного індикатора.
- •3.1. Ввід інформації з клавіатури.
- •3.2. Вивід інформації на семисегментний індикатор.
- •3.3. Програма для програмування програмованого логічного пристрою контролера
- •3.4. Часові діаграми pоботи програмованого логічного пристрою контролера
- •4. Робота аналого-цифрового перетворювача
- •Контролери послідовного каналу вводу-виводу.
- •Програма для роботи мікропроцесорного пристрою, побудованого на базі мікроконтролера 89с51
- •Висновки
- •Література
Опис роботи інтелектуального давача.
Температура і тиск перетворюються первинними перетворювачами у аналоговий уніфікований електричний сигнал (від 0 до 5 вольт), поступає на вхід аналого-цифрового перетворювача. На аналого-цифровому перетворювачі аналоговий (неперервний) сигнал перетворюється на послідовний чи паралельний цифровий код, який вже може сприймати мікроконтролер. Далі мікроконтролер обраховує величину µвп - динамічна в’язкість вологої водяної пари
згідно програми, та виводить результат на рідкокристалічний індикатор та, через канал послідовного вводу/виводу, на ЕОМ.
-
Побудова контролера клавіатури та семисегментного індикатора.
Розглянемо роботу контролера при обслуговуванні клавіатури розміром 5х3 та семисегментного рідкокристалічного індикатора. Для цього вибираємо програмований логічний пристрій серії 5c090.
Нумерація ніжок серії 5С090 наведена на рисунку 3.1:
Рис 3.1. Нумерація ніжок мікросхем серії 5С090
3.1. Ввід інформації з клавіатури.
Для обслуговування клавіатури в мікропроцесорних системах використовується процедура вводу натиснутої клавіші.
Виявлення мікропроцесорним пристроєм натиснення клавіші на клавіатурі здійснюється за допомогою сканування клавіатури. Розглянемо процедуру вводу інформації з некодованої матричної клавіатури 5х3, яка включає 10 цифр (0-9) та 5 керуючих клавіші. Спосіб підключення клавіатури до мікропроцесорного пристрою показаний на рис 3.2.
Рис 3.2. Структурна схема під’єднання клавіатури та дев’ятирозрядного індикатора до контролера.
Лінія порту Ri використовується для сканування, а лінія порту Ki - для опиту матриці клавіш. Значення сигналів R0-R8 змінюються за законом зсуваючого регістру з активним вихідним нульовим сигналом. При натисненій клавіші сигнал з лінії Ri поступає на ніжку Ki. Якщо клавіша натиснута, то на ніжці Ri та на ніжці Кі буде активний нульовий сигнал.
Наприклад, якщо буде натиснута клавіша 0, то нульовий сигнал буде на ніжках R0 та К0. Кожна клавіша в такій матриці має свій номер, який відповідає її місцезнаходженню. Діоди забезпечують захист від замикання між собою скануючих ліній у випадку одночасного натиснення більше ніж однієї клавіші.
Для зменшення використання зовнішніх портів мікроконтролера 89С51 контролер клавіатури та дев’ятирозрядного індикатора видає на шину даних порту Р0 мікроконтролера 89С51 код заданої клавіші. Код заданої клавіші формується контролером клавіатури та дев’ятирозрядного індикатора, побудованого на програмованому логічному пристрої типу 5С090.
Процедура вводу коду натисненої клавіші складається із послідовності часткових процедур: сканування матриці клавіш, усунення дребезгу контактів, очікування звільнення клавіші та ідентифікації коду натисненої клавіші. Для деяких клавіатур може бути відсутня процедура усунення дребезгу контактів (для клавіатури на базі герконів). Процедуру сканування іноді об’єднують з процедурою ідентифікації.
Таблиця 3.1
Формування коду заданої клавіші.
R0 |
R1 |
R2 |
R3 |
R4 |
K0 |
K1 |
K2 |
P03 |
P02 |
P01 |
P00 |
Символ |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
2 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
3 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
4 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
5 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
6 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
7 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
8 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
9 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
Ent |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
Del |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
F |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
+ |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
- |