Розробка структурної схеми пристрою і її опис



Огляд характеристик.

- Тільки 33 простих команди;

- Всі команди виконуються за один цикл (200ns), крім команд переходу -2 циклу;

- Робоча частота 0 Гц ... 20 МГц (200 нс цикл команди)

- 12 - бітові команди;

- 8 - бітові дані;

- 512 ... 2К х 12 програмної пам'яті на кристалі EPROM;

- 25 ... 72 х 8 регістрів загального використання;

- 7 спеціальних апаратних регістрів SFR;

- Дворівневий апаратний стек;

- Пряма, непряма і відносна адресація даних і команд;

Периферія й Введення / Висновок

 

- 12 ... 20 ліній вводу-виводу з індивідуальною настройкою;

- 8 - бітний таймер / лічильник RTCC з 8- бітним програмованим попередніми дільником;

- Автоматичне скидання при включенні;

- Таймер запуску генератора;

- Watchdog таймер WDT із власним вбудованим генератором, що забезпечує підвищену надійність;

- EPROM біт секретності для захисту коду;

- Економічний режим SLEEP;

- Програмовані EPROM біти для установки режиму збудження вбудованого генератора:

- RC генератор: RC

- Звичайний кварцовий резонатор: XT

Власник документа
Назва, додаткова назва
Аркуш 11           
- Високочастотний кварцовий резонатор: HS

- Економічний низькочастотний кристал: LP

КМОП технологія

- Економічна високошвидкісна КМОП EPROM технологія;

- Статичний принцип в архітектурі;

- Широкий діапазон напруг живлення:

- Комерційний: 2.5 ... 6.25 У

- Промисловий: 2.5 ... 6.25 У

 

У проектованому пристрої можна виділити наступні функціональні блоки: контакт управління; мікроконтролер, пульт управління, що дозволяє змінити режими вимірювань; стабілізатор напруги; кварцовий резонатор; семисегментні світлодіоди - індикатор.

Структурна схема тахометра

 

 

 

Власник документа
Назва, додаткова назва
Аркуш 12           


Розташування виводів:

Розташування виводів МКРIС16F84Aзображено на рис. 2.

 

Рис. 2 –Розташування виводів МКРIС16F84A

 

 

Виконання мікроконтролера:

Мікроконтролер випускається в двох видах корпусів.

Розташування виводів і конструктивні розміри різних корпусів наведені наРис. 3 и Рис. 4.

 

Власник документа
Назва, додаткова назва
Аркуш 13           

Рис. 3 –Конструктивні розміриРIС16F84A(додаток 1)

 

 

 

 

Власник документа
Назва, додаткова назва
Аркуш 14

 

Рис. 4 –Конструктивні розміри мікроконтроллераРIС16F84A(додаток 2)

Розробка алгоритму роботи пристроюз поясненнями призначення кожного блоку.

Алгоритм програми тахометра представлений на рис. 6. Після включення живлення відбувається початкова ініціалізація всіх регістрів з подальшою індикацією. Після ініціалізації вступає в роботу таймер TMR0. Таймер має коефіцієнт ділення, рівний 256, що разом з предделітеля , які мають коефіцієнт розподілу , рівний 32 , і циклом процесора , рівним 4 , дає переривання кожну секунду (4 х 32 х 256 = 32768 ) .

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

Таким чином, підраховується кількість переривань з входу RB0 між перериваннями від переповнення таймера, тобто за 1 секунду. Кожне

Власник документаВласник документа
Назва, додаткова назваНазва, додаткова назва
Аркуш   15           
переривання закінчується відновленням раніше збережених значень регістрів, і процесор перемикається на роботу з індикацією.

Якщо переривання відбулося по переповненню таймера, то визначається стан перемикача межі вимірювання і, якщо перемикач на межі однієї секунди, двійкове значення 16- розрядного лічильника множиться на 3 (2N х 3). 16- розрядний лічильник обнуляється, готуючись до нового циклу вимірювання. Отримане двійкове значення перекодується в трьохрозрядне десяткове число і переписується в регістри індикації. Після відновлення значень регістрів індикація відбувається з новими даними. Тобто індикація оновлюється кожну секунду. Якщо встановлена межа вимірювання, рівний 3 секундам, то при переповненні таймера значення лічильника секунд збільшується на одиницю.

Якщо значення лічильника секунд ще не дорівнює трьом, переривання завершується без обнулення 16-розрядного лічильника.

В іншому випадку в 16-розрядному лічильнику накопичується кількість переривань з входу RB0 за три секунди. Це значення перекодируется в двійкове-десяткове число і переписується в регістри індикації. Двійковий лічильник обнуляється і цикл повторюється. У даному випадку індикація оновлюється кожні три секунди.

Призначення блоків алгоритму:

Блок 1.Ініціалізація всіх регістрів з подальшою індикацією.

Блок 2.Вступає в роботу таймер TMR0.

Блок 3.Переривання.

Блок 4.Зберігаються значення регістрів.

Блок 5. Перевіряється, з якого входу переривання.

Блок 6. Двійковий 16- розрядний лічильник збільшується на одиницю.

Блок 7. Переривання.

Блок 8. Визначається стан перемикача та межі вимірювання.

Власник документаВласник документа
Назва, додаткова назваНазва, додаткова назва
Аркуш   16           
Блок 9. Двійкове значення 16- розрядного лічильника множиться на 3 (2N х 3)

Блок 10.Якщо встановлена межа вимірювання, рівний 3 секундам, то при переповненні таймера значення лічильника секунд збільшується на одиницю.

Блок 11.Якщо значення лічильника секунд ще не дорівнює трьом, переривання завершується без обнулення 16-розрядного лічильника.

Блок 12. В 16-розрядному лічильнику накопичується кількість переривань з входу RB0 за три секунди. Це значення перекодируется в двійкове-десяткове число.

Блок 13. Це число записується в регістри індикації.

Блок 14.Двійковий лічильник онулюється і цикл повторюється.

 

 

Власник документа
Назва, додаткова назва
Аркуш 17           


Алгоритм роботи пристрою


Власник документа
Назва, додаткова назва
Аркуш 19           
8. Опис вибору елементної бази та розробка принципової схеми

Схема тахометра показана на рис. 8. Вхідний сигнал з контактів переривника стабілізується стабілітроном VD1 на рівень ТТЛ і подається на вхід RB0. При безконтактної системі запалювання сигнал знімається з виходу комутатора, що видає перепад напруги 3 В.

Входи RA0 - RA2 коммутіруют аноди світлодіодів, реалізуючи динамічну індикацію. Вхід RA3 навантажений перемикачем межі вимірювання «ls - 3s». Входи RBI - RB7 використані для виведення значень сегментів. Оскільки мікроконтролер працює при верхньому живлячій напрузі 6 В, то мікросхему стабілізатора напруги КР142ЕН5 можна взяти з будь-якою літерою, що забезпечує цю напругу. Споживаний тахометром струм близько 25 мА, тому мікросхема стабілізатора напруги не потребує радіаторі. Діод VD2 захищає прилад від переполюсовкі. Якщо тахометр буде використовуватися при регулюванні карбюраторів, то світлодіоди АЛ304Г небажано замінювати індикаторами з великими розмірами цифр.

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

Перевірку працездатності тахометра можна виконати за допомогою будь-якого низькочастотного імпульсного генератора.

 

 

Залежність частоти Fr -ц від показань тахометра N наступна: Fpu х 3 = N. І навпаки, щоб мати уявлення про частоту обертання колінчастого валу в герцах, необхідно свідчення тахометра розділити на три. Наприклад, якщо подати на вхід

Власник документа
Назва, додаткова назва
Аркуш 20           
тахометра частоту 100 Гц, то показання індикатора повинні бути рівні 300, що відповідає 3000 хв-1. При показанні тахометра, що дорівнює 150 (відповідає 1500 хв -1), частота обертання колінчастого валу в герцах буде дорівнює 50 Гц. Для визначення частоти обертання двоциліндрових двигунів, наприклад автомобілів «Ока» , показання тахометра необхідно множити на два.

 

 

.


Власник документа
Назва, додаткова назва
Аркуш 22           
9. Висновки

В даному курсовому курсовому проекті розроблений пристрій для перевірки та діагностики двигунів внутрішнього згорання. Цей пристрій може бути рекомендовано станціями техобслуговування і автолюбителям. Розроблено електричну принципову схему пристрою і програму для мікроконтролера.

В результаті асемблення отримана прошивка програми для пам’яті мікроконтролера. Застосування мікроконтролера дозволило спростити принципову схему і розширити функціональні можливості мікроконтролера, так як для зміни функцій пристрою достатньо внести зміни в програму мікроконтролера.


Власник документа
Назва, додаткова назва
Аркуш 22           
10. Список використаної літератури

1. Техническая документация на микроконтроллеры PIC16F87X компании MicrochipTechnologyIncorporated. ООО «Микро-Чип», Москва, 2002.-184 с.

2. Проектирование цифровых устройств на однокристальных микроконтроллерах / В.В. Сташин [и др.]. – М.: Энергоатомиздат,1990.

3. Евстифеев А.В. Микроконтроллеры Microchip: практическое руководство/А.В.Евстифеев. – М.: Горячая линия – Телеком, 2002. – 296 с.

4. Ульрих В.А. Микроконтроллеры PIC16F84A В.А. Ульрих. Изд. 2-е, перераб. и доп. – СПб.: Наука и техника, 2002. – 320 с.


Власник документа
Назва, додаткова назва
Аркуш 3           
11. Додатки

11.1. Система команд використаного мікроконтролера

Позначення Функція Циклы Код команди Біти состояния
ADDLW Сложение константы и W 1 11 111x kkkk kkkk C, DC, Z
ADDWF Сложение W c f 1 00 0111 dfff ffff C, DC, Z
ANDLW Логическое И константы и W 1 11 1001 kkkk kkkk Z
ANDWF Логическое И W и f 1 00 0101 dfff ffff Z
BCF Сброс бита в регистре f 1 01 00bb bfff ffff  
BSF Установка бита в регистре f 1 01 01bb bfff ffff  
BTFSC Пропустить команду, если бит в f равен нулю 1 (2) 01 10bb bfff ffff  
BTFSS Пропустить команду, если бит в f равен единице 1 (2) 01 11bb bfff ffff  
CALL Вызов подпрограммы 2 10 0kkk kkkk kkkk  
CLRF Сброс регистра f 1 00 0001 1fff ffff Z
CLRW Сброс регистра W 1 00 0001 0xxx xxxx Z
CLRWDT Сброс сторожевого таймера WDT 1 00 0000 0110 0100 __ __ TO, PD
COMF Инверсия регистра f 1 00 1001 dfff ffff Z
DECF Декремент регистра f 1 00 0011 dfff ffff Z
DECFSZ Декремент f, пропустить команду, если 0 1 (2) 00 1011 dfff ffff  
GOTO Переход по адресу 2 10 1kkk kkkk kkkk  
INCF Инкремент регистра f 1 00 1010 dfff ffff Z
INCFSZ Инкремент f, пропустить команду, если 0 1 (2) 00 1111 dfff ffff  
IORLW Логическое ИЛИ константы и W 1 11 1000 kkkk kkkk Z
IORWF Логическое ИЛИ W и f 1 00 0100 dfff ffff Z
MOVF Пересылка регистра f 1 00 1000 dfff ffff Z
MOVLW Пересылка константы в W 1 11 00xx kkkk kkkk  
MOVWF Пересылка W в f 1 00 0000 1fff ffff  
NOP Холостая команда 1 00 0000 0xx0 0000  
OPTION Загрузка регистра OPTION 1 00 0000 0110 0010  
RETFIE Возврат из прерывания 2 00 0000 0000 1001  
RETLW Возврат из подпрограммы с загрузкой константы в W 2 11 01xx kkkk kkkk  
RETURN Возврат из подпрограммы 2 00 0000 0000 1000  
RLF Сдвиг f влево через перенос 1 00 1101 dfff ffff C
RRF Сдвиг f вправо через перенос 1 00 1100 dfff ffff C
SLEEP Переход в режим SLEEP 1 00 0000 0110 0011 __ __ TO, PD
SUBLW Вычитание W из константы 1 11 110x kkkk kkkk C, DC, Z
SUBWF Вычитание W из f 1 00 0010 dfff ffff C, DC, Z
SWAPF Обмен местами тетрад вf 1 00 1110 dfff ffff  
TRIS Загрузка регистра TRIS 1 00 0000 0110 0fff  
XORLW Исключающее ИЛИ константы и W 1 11 1010 kkkk kkkk Z
XORWF Исключающее ИЛИ W и f 1 00 0110 dfff ffff  

 

 






Дата добавления: 2018-04-05; просмотров: 316; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!