Модуль управления кодовым замком

I.Вступ


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

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

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

Всього лише десятиліття тому властивостями програмування характеризувались лише великі блоки і вузли рахувальних і керуючих систем, то на данний час цими особливостями володіє інтегральна елементна основа (мікропроцесор, однокрестальна мікро-ЕОМ), що і обгрунтовує її високі функціональні властивості. Правильне використання цих універсальних ВІС в народному господарстві дозволить сильно впливати на підвищення користі праці і підвищення ефективності виробництва, тобто є однією із властивостей прискорення науково-технічного прогресу. Програмні великі інтегральні схеми (ВІС) – мікропроцесори, однокрестальні мікро-ЕОМ і логічні матриці використовуються в автоматиці, інформаційно-розрахунковій техніці, в автоматичних системах керування виробництвом, транспортом і в інших галузях народного господарства.







КТ КДПУ КП. 19.00.000.ПЗ

Арк





2
Зм.Арк№ ДокумПідписДата

II.Загальний розділ

2.1 Призначення пристрою.


Кодові замки досить широко застосовуються для обмеження доступу сторонніх осіб до охоронних об'єктів. Зручність користування такими замками полягає в можливості як індивідуального, так і колективного доступу (прохід у службові приміщення, доступ до камер схову і т.п.).

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

Пристрій призначений для застосування як вузол таємності електронної замковий лечинки в кодових замках. Системах керування або сигналізацією в інших пристроях, доступ до використання яких необхідно обмежити чи цілком в окремих режимах. Модуль забезпечує появу високого логічного рівня на своєму виході при наборі з клавіатури семизначного десяткового числа - коду. При повторному його наборі на виході виникає низький рівень. У складі модуля – два незалежних друг від друга каналу, кожний з них керує одним виходом. Коди доступу в канал можуть бути задані (модифіковані) користувачем у спеціальному режимі предустановки. У нього канал переходить при наборі з клавіатури семизначного коду предустановки кожен канал має свій код ). З цього режиму можна модифікувати як код доступу, так і сам код предустановки. Усі коди обох каналів зберігаються в электрично програмувальній пам'яті даних (ЕЕР - RОМ) модуля , що доступна для запису програмно.


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


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

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

Блок схема замка показана на Мал. 1.1. Блок запису-обробки коду складається з 5-ти логічних елементів ИЛИ (DD1.1, DD1.2, DD1.3, DD1.4, DD1.5), 5-ти резисторів (R1,R2,R3,R4,R5), 5-ти конденсаторів (С1, С4, С5, С6, С7),а також 7-ми діодів (VD1, VD4, VD5, VD6, VD7, VD8,VD9). Блок вводу коду складається з 10-ти кнопок (SB1..SB10). Блок керування включає в себе конденсатор С1 та два реле К1 і К2. Блок живлення складається з трансформатору та випрямляючого діодного моста.






КТ КДПУ КП. 19.00.000.ПЗ

Арк






3

Зм.

Арк

№ Докум

Підпис

Дата


Блок живлення

Блок

запису/обробки

коду

Блок вводу коду

Блок керування


Посилювач

+5В

Навантаження


Посилювач зібраний на трьох транзисторах(VT1..VT3) та двох діодах(VD10, VD11).

Код складається з 4-х цифр від 0 до 9. Його набирають кнопками SB1-SB10. Установлюють код розпаюванням перемичок на складальному полі. Невикористовані кнопки необхідно з'єднати з загальним проводом.

При включенні живлення конденсатор C1 заряджається через резистор R1 і приблизно через 5 с. елемент DD1.1 переключається у вихідний стан. На виході DD1.1 і DD1.6 також високий рівень – замок готовий до роботи і можна натискати першу кнопку коду.

При натисканні кнопки SB3 високий рівень сигналу з виходу елемента DD1.1 через діод VD1, резистори R3,R4 кнопку SB3 надходить на вхід DD1.2. На виході цього елемента виникає високий рівень, що міститься в плині 2 с. після відпускання кнопки, поки конденсатор С4 розряджається через резистор R5. За цей час потрібно натиснути наступну кнопку, при цьому високий рівень надійде на вхід елемента DD1.3 і т.д. Після натискання останньої кнопки коду високий рівень з виходу DD1.5 відкриває транзистор VT1. Відпрацьовує реле К1, що своїми контактами включає виконавчий пристрій, він працює протягом 5 с. – час зарядки конденсатора С7.

Тепер розглянемо, що відбудеться при натисканні кнопок, що не входять у код, якщо порушиться послідовність набору коду, а також у період паузи між натисканням, що триває більш 2-х секунд. Допустимо, першою була натиснута кнопка SB4 (замість SB3). Конденсатор С1 швидко розрядиться через резистор R4, кнопку SB4, діод VD6 і вихід елемента DD1.3, на якому в цей момент низький рівень. Натискання кнопки, що не входить у код, також приводить до розрядки конденсатора С1.


Мал. 1.1





КТ КДПУ КП. 19.00.000.ПЗ

Арк






4

Зм.

Арк

№ Докум

Підпис

Дата


При цьому замок заблокований на вході і виході елемента DD1.6 низький логічний рівень, транзистор VT2 –закривається, VT3 відкривається, спрацьовує реле К2 і своїми контактами включає сигналізацію. Якщо людина, що не знає коду і принципу роботи замка, стане продовжувати натискати на кнопки, конденсатор З1 буде увесь час розряджатися, підтримуючи тим самим замок у закритому стані. Для того щоб замок заробив необхідно почекати, не натискаючи кнопок, 5...6 с.

Діод VD1 заважає розрядці конденсатора С1 через вихід елемента DD1.1, що знаходиться в нульовому стані під час зарядки С1 через резистор R1. Діоди VD4, VD6,VD8,перешкоджають проходженню високого рівня на входи наступних елементів, а діоди VD5,VD7,VD9 не дають розряджатися конденсаторам С5,С6,С7 відповідно.

Якщо сигналізація не потрібна, то елементи DD1.6,R10,R11, VT2,VT3,R2,VD1.1 можно виключити зі схеми, при цьому вільний вхід элементаDD1.6 повинний бути з'єднаний із загальним чи проводом із плюсовим висновком джерела живлення (+10в). У пристрої застосовані резистори МЛТ, керамічні конденсатори К10-17, К50-35.Електромагнітні реле К1,К2-РЭС-6 (паспорт РФО,452.104) чи інші з напругою спрацьовування не більш 20В і опором не менш 500Ом. Трансформатор Т1 можна застосувати саморобний чи заводський з напругою на вторинній обмотці 12-15В и струмом не менш100 мА. Транзистори – з будь-яким буквеним індексом , а діоди –будь-які малопотужні кремнієві.

Мікросхему DD1 можна замінити на К561ПУ4, КР1561ПУ4 .Якщо не виявиться під рукою зазначених мікросхем, кожен елемент припустимо замінити ланцюгом із двох послідовно включених інверторів, застосовуючи мікросхеми К561ЛН2,К561ЛА7, К561ЛЕ5 (чи аналогічні серії К176).

Зібраний зі справних деталей замок починає працювати відразу і налагодження не вимагає. Тривалості тимчасових затримок змінюють підбором конденсаторів, що задають час С1,С4-С7.


Опублікований варіант кодового замка відрізняються простотою, але ця гідність аж ніяк не саме головне. Більш істотним треба вважати надійність роботи, а з цим найважливішим параметром справа не завжди обстоїть благополучно. Наприклад, не обмежений час роботи виконавчого пристрою, що може викликати його вихід з ладу (у гіршому випадку – перегрів і загоряння обмотки електромагніта).
Конструкція замка, описаного нижче(Мал. 1.2), має, на мій погляд, ряд переваг. Код замка складається з чотирьох знаків. Вузол зворотного переключення дозволяє набирати чотири закодовані цифри тільки у визначеному порядку. Будь-яке порушення порядку набору веде за собою зворотне переключення навіть при правильно набраних перших цифрах коду. Час роботи виконавчого пристрою - 2 с; цього цілком достатньо для відкривання дверей. Якщо за цей час двері не буде відкрита, набір коду прийдеться повторити.







КТ КДПУ КП. 19.00.000.ПЗ

Арк






5

Зм.

Арк

№ Докум

Підпис

Дата


Блок

вводу

коду

Блок

зворотнього

переключення


Одновібратор


Нагрузка

рівнем на його виході дорівнює: R6*C5=2 с. Цей імпульс включає виконавчий пристрій.
Вузол зворотнього переключення зібраний на елементах DD3.3, DD3.4, DD4.1 - DD4.4. При натисканні на кнопку SB1(SB2), а слідом за нею - на кнопку SB3 (чи SB4), на R-вході тригера DD1.1 з'являється високий рівень, що переводить його у вихідний стан. Тригер DD1.1 має пріоритет - до його D-входу постійно прикладений одиничний рівень. При натисканні на кнопку SB1(SB2) на прямому виході цього тригера з'являється одиничний рівень і дозволяє роботу другого тригера DD1.2 і т.д. При натисканні на кнопку SB4 на інверсному виході тригера DD2.2 з'являється низький рівень, що запускає одновібратор, зібраний на логічних елементах DD3.1, DD3.2. Тривалість імпульсу з низьким При натисканні послідовно на кнопки SB1(SB2), SB2(SB2) і SB4 тригери DD1.1 і DD1.2 також переходять у вихідний стан. Якщо ж послідовність набору не порушена, і після натискання на перші дві кнопки натискають на кнопку SB3, що з'явившийся на інверсному виході тригера DD1.2 і відповідно на одному з входів елемента DD4.2 сигнал 0 блокує спрацьовування вузла зворотнього переключення тригерів від натискання на кнопку SB3. Далі, при натисканні на кнопку SB4, тригери DU1.1 і DD1.2 переходять у вихідний стан, а поява низького рівня на одному з входів елемента DD4.3, зв'язаним з виходом одновібратора, веде за собою зворотнє переключення тригерів DD2.1, DD2.2., пристрій приходить у вихідний стан.

При натисканні на кнопку SB5 і включені паралельно їй інші п'ять кнопок відбувається зворотнє переключення всіх тригерів, незалежно від числа правильно набраних знаків коду. Таким чином, імовірність розпізнавання коду дуже мала.
Для виготовлення кодового замка, крім зазначених, можна також використовувати мікросхеми серій К164, К561, К564.
Для живлення замка збирають найпростіший параметричний стабілізатор, що складається з резистора опором 6,2-10 кОМ стабілітрона Д814Б и конденсатора ємністю 1...10 мкф. Стабілізатор і виконавчий пристрій бажано живити постійним струмом напругою 24...60 В.


Мал.1.2





КТ КДПУ КП. 19.00.000.ПЗ

Арк






6

Зм.

Арк

№ Докум

Підпис

Дата



Описані вище конструкції кодови замків мають ряд недоліків, серед яких є дуже суттєві. Для першої схеми ряд недоліків має вигляд:

  • Занижена захисна здатність замку від неправильного набору коду;

  • Занижені експлуатаційні властивості по рівнянню з іншими пристроями;

  • Живлення від 220В забезпечує установку замка тільки поблизу мережі струму;

  • Велика елементна база;

  • Нездатність до перепрограмування;

  • Не обмежений час роботи виконавчого пристрою.


Друга схема, хоч і виправляє деякі недоліки першої схеми, але натомість добавляє інші:

  • Код складається з 4-х цифр, що знижує кількість комбінацій;

  • Замалий час роботи виконавчого пристрою;

  • Як і в першій схемі, нездатність до перепрограмування коду.


Тому, для виправлення цих недоліків, я вирішив при розробці кодового замка використовувати мікроконтролер (PIC 16F84). Блок-схема такого кодового замку представлена на мал.1.3.

Основним елементом блоку керування є мікроконтролер, який керує всією схемою, а також сприймає і виробляє сигнали керування (сигнали відкривання замку, або сигнали що надходять від кнопок). Ядром блоку живлення є стабілізатор КР142ЕН5. Блок синхронізації - це кварцевий резонатор. Блоки індикації та звукової індикації – це набір світлодіодів і п’єзовипромінювач. Блок вводу коду – це набір з 12-ти кнопочних перемикачів. Блок-механізм відпирання замка (навантаження) преставлений на мал.1.4.

Принцип дії запірного пристрою

Вісь обертання обрезиненого ролика 6, забита під шліц чи обладнана ручкою, виведена на зовнішню сторону дверей. При повороті осі ролик передає обертання маховику 3, на якому закріплені тяги 4 і 5, що перетворять обертальний рух маховика в поступальний рух запірних пристроїв 7. Запирання відбувається в двох точках вгорі і внизу. Глибина заходу запірних пристроїв визначається діаметром маховика і може складати 50...100 мм. Положення маховика відповідне закритому стану фіксує засувка 2. Вісь обертання ролика не фіксується. Ролик буде провертатися з зусиллям, обумовленим його ступенем притиснення до маховика. Таким чином, виключається можливість виводу з ладу запірного механізму. Він відкривається тільки при спрацьовуванні електромагніта 1, для чого необхідно набрати встановлений в електронному блоці код.







КТ КДПУ КП. 19.00.000.ПЗ

Арк






7

Зм.

Арк

№ Докум

Підпис

Дата







КТ КДПУ КП. 19.00.000.ПЗ

Арк






8

Зм.

Арк

№ Докум

Підпис

Дата


III.Спеціальний розділ

3.1 Технічні характеристики пристрою.


Вихідні данні


3.2 Аналіз роботи пристрою по принциповій електричній схемі


Схема модуля показана на малюнку. Його основа мікроконтролер PIC 16F84 фірми MIKROCHIP, що забезпечує мале енергоспоживання і мінімальні витрати. Усі функції реалізовані програмно. Виводи порту В мікроконтролера DD1 (RBO-RB6) використовуються для підключення стандартної 12-кнопкової клавіатури. RBO-RB3 запрограмовані на введення даних, а RB4-RB6- на вивід. Вивід RB7, запрограмований як вихід, застосовується для подачі звукових сигналів.

При кожному натисканні на будь-яку клавішу, що виявляється й оцінюється програмою як «правдиве», на виводі 13DD1 з'являється пачка з 124 імпульсів з періодом між ними близько 4мс. Звучить короткий звуковий сигнал. При втриманні клавіші пачки ідуть друг за другом без пауз (постійний сигнал). При наборі правильного коду ( доступу чи предустановки) на цьому виводі з'являються 1240 таких імпульсів (звуковий сигнал тривалістю близько 5 с).

На елементах R5, R6, C4, VD1 виконаний вузол зовнішнього скидання мікроконтролера при включенні живлення. Виводи порту А мікроконтролера RA0-RA4 запрограмовані як виводи RА0 є прапором дозволу режиму предустановки для обох каналів. Установка цього прапора (дозвіл режиму






КТ КДПУ КП. 19.00.000.ПЗ

Арк






10

Зм.

Арк

№ Докум

Підпис

Дата



предустановки) індицирується світінням світлодіода HL1. Прапор установлюється при натисканні на кнопку "*" клавіатури, а скидається при натисканні на кнопку "#" чи по закінченню модифікації кодів у режимі предустановки в будь-якому каналі чи в момент системного скидання (при відключенні - включенні живлення).

RA1 і RА2 – прапори режимів предустановки каналів 1 і 2. Кожний з них установлюється при наборі відповідного коду предустановки, а скидається при натисканні на кнопку “#” чи по закінченню модифікації кодів у режимі предустановки у відповідному каналі чи при системному скиданні. Установка кожного з цих прапорів індицирується світінням відповідного світлодіода HL2, HL3. Модифікація кодів в обраному каналі можлива тільки в тому випадку, якщо встановлені прапор режиму предустановки цього каналу і прапор дозволу режиму предустановки.

RA3 і RА4 –виходи каналів 1 і 2 відповідно. На кожнім з них виникає високий рівень під час набору відповідного коду доступу, а скидається при повторному наборі цього коду чи системному скиданні. RA3 має ТТЛ-рівні, а RA4 - вихід з відкритим стоком.. До виходів каналів підключаються виконавчі пристрої.

Зі сказаного випливає, що модуль фактично є чотирьохканальним: крім двох повних каналів, встановлюваних і скидаємих тільки набором кодів доступу, маються ще два «неповних» канали (RA1 і RA2) . Їх установлюють набором кодів предустановки, а скидають натисканням на кнопку "#", тобто вони обмежують доступ тільки до включення виконавчих пристроїв, але не до їх вимикання. Щоб уникнути помилкової модифікації кодів у EEPROM, при використанні «неповних» каналів варто стежити, щоб прапор дозволу режиму предустановки був скинутий.

Спрощена блок – схема алгоритму роботи програми показана на мал.2. Після включення живлення відбувається системне скидання, обнуління всіх прапорів і виходів порту А. Далі програма починає опитувати клавіатуру. При виявленні натиснутої клавіші опитування припиняється, поки клавіша не буде відпущена. Захист від коливання контактів клавіш реалізований програмно. Код, що набирається, накопичується в реєстровому ОЗУ мікроконтролера.

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

Слідом за введенням із клавіатури кожної цифри програма перевіряє, чи встановлений прапор дозволу режиму предустановки. Переконавши, що це відбулося, програма послідовно уточнює, чи встановлені прапори режиму предустановки каналів 1 і 2. Якщо хоча б один з них установлений, відбудеться перехід у режим предустановки. У результаті кожного натискання







КТ КДПУ КП. 19.00.000.ПЗ

Арк






11

Зм.

Арк

№ Докум

Підпис

Дата



на клавіші «0»-«9» у цьому режимі виробляється запис в осередок EEPROM коду відповідної цифри, стираючи код, що знаходився там раніше. Після введення чотирнадцяти цифр ( семи цифр коду доступу і семи –коду предустановки) автоматично здійснюється вихід з режиму предустановки (скидання всіх прапорів).

Вийти з режиму предустановки можна шляхом набору будь-якої кількості цифр (менше чотирнадцяти), наприклад, коли потрібно модифікувати тільки код доступу. Для цього треба натиснути кнопку "#" після набору семи цифр.

При програмуванні кристалу варто установити OSC=XT, WDT=Off, PWRTE=On, CP=Off, a у EEPROM даних записати код 00h по всіх адресах.

Для живлення модуля можна використовувати джерело постійної напруги +7,5...+15В. струм споживання мікроконтролера DD1 від інтегрального стабілізатора DA1 при погашених світлодіодах HL1-HL3 складає близько 1 мА. кварцовий резонатор ZQ1 можна застосувати кожний на частоту 2...4Мгц (можна замінити RC ланцюгом),однак варто враховувати, що від частоти тактового генератора залежить тональність звукових сигналів на виводі 13DD1. НА1 – ЗП-3.

Для узгодження логічних рівнів на виході каналу 2 (вивід 3 DD1) з виконавчим пристроєм нижній за схемою вивід резистора R12 відключають від стабілізатора і підключають до плюсового виводу джерела живлення виконавчого пристрою.

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







КТ КДПУ КП. 19.00.000.ПЗ

Арк






12

Зм.

Арк

№ Докум

Підпис

Дата


IV. Проектно розрахунковий розділ


4.1 Обгрунтування використовуємої елементної бази


Інтегральний стабілізатор КР142ЕН5А


Мікросхема 142ЕН5А, являє собою інтегральний стабілізатор з фіксованою вихідною напругою, виконаною по планарно-дифузійній технології з ізоляцією діелектриком. Мікросхема призначена для застосування в стабілізованих джерелах живлення радіоелектронної апаратури постійної напруги.

Для відводу тепла і кріплення мікросхеми передбачений фланець із двома кріпильними отворами. Мікросхему КР142ЕН5А випускають у прямокутному полімерному корпусі КТ-28-2 із трьома пластинчастими виводами (мал. 2.1). Для відводу тепла і кріплення мікросхеми використовується фланець з однім кріпильним отвором. Мікросхему кріплять до друкованої плати пайкою чи через перехідні елементи. Теплоотвід установлюють на плату і пригвинчують до нього мікросхему.

Прилад розрахований на тривалу експлуатацію в жорстких умовах: при температурі навколишнього середовища від –60 до +125 °С, зниженому до 5 мм рт.ст. атмосферному тиску, впливі інею і соляного тумана, механічних перевантажень. Мінімальний наробіток на відмовлення — 50000 годин, збереження — 25 років.


Мал 2.1 Мікросхема КР142ЕН5А


Основні технічні характеристики мікросхеми КР142ЕН5А

Uвх.min=7.5 В Uпд.max=2.5 В

Uвх.max=15 В Ppac.max=10 Вт

Uвих.min=4,9 В Ku.max=0.05 %

Uвих.max=5,1 В KI.max=1 %

Iвих.max=3 A Kсг.max=70 дБ







КТ КДПУ КП. 19.00.000.ПЗ

Арк





13
Зм.Арк№ ДокумПідписДата


де:

Uпд.max – мінімальне падіння напруги на стабілізаторі

Ppac.max – падіння потужності при температурі корпусу від –60° до +80°

Ku.max – коефіціент нестабільності по напрузі

KI.max – коефіціент нестабільності по току

Kсг.max - коефіціент сглажування пульсацій при частоті 1 кГц


  1. Мікроконтроллер PIC 16F84


PIC16F84 - це 8-pазpядні мікроконтролери з RISC архітектурою, вироблені фірмою Microchip Technology. Це сімейство мікроконтролерів відрізняється низькою ціною, низьким енергоспоживанням і високою швидкістю. Мікроконтролери мають убудоване ЭППЗУ програми, ОЗУ даних і випускаються в 18 і 28 вивідних корпусах.

Для налагодження програм і макетування випускається варіант контролерів з ультрафіолетовим стиранням. Ці контролери допускають велике число циклів запису/стирання і мають дуже малий час стирання ( звичайно 1-2 хвилини. Однак ціна таких контролерів істотно вище, ніж однократно програмувальних, тому їх невигідно встановлювати в серійну продукцію.

Для виробів, програма яких може мінятися, або містить які-небудь перемінні частини, таблиці, параметри калібрування, ключі і т.д., випускається электрично стираємий і перепрограмувальний контролер PIC16F84. Він також містить электрично перепрограмувальне ПЗУ даних. Саме такий контролер я і використовував в своїй роботі.

PIC16F84 відноситься до сімейства КМОП мікроконтролерів. Відрізняється тим, що має внутрішнє 1Kx14 біт EEPROM для програм, 8-бітові дані і 64-байт EEPROM пам'яті даних. При цьому відрізняються низькою вартістю і високою продуктивністю. Усі команди складаються з одного слова (шириною 14 біт) і виповнюються за один цикл (400 нс. при 10 Мгц), крім команд переходу, що виконуються за два цикли (800 нс.). PIC16F84 має переривання, що спрацьовують від чотирьох джерел, і восьмирівневий апаратний стік.

Периферія містить у собі 8-бітний таймер/лічильник з 8-бітним програмувальним попереднім дільником (фактично 16 - бітний таймер) і 13 ліній двунаправленного введення/виводу. Висока навантажувальна здатність (25 мА макс. Струм, що втікає, 20 мА макс. струм, що випливає,) ліній введення/вивода спрощують зовнішні драйвери і, тим самим, зменшується загальна вартість системи. Розробки на базі контролерів PIC16F84 підтримується ассемблером, програмним симулятором, внутрисхемним емулятором (тільки фірми Microchip) і програматором.

Серія PIC16F84 підходить для широкого спектра додатків від схем високошвидкісного керування автомобільними й електричними двигунами до економічних віддалених прийомопередатчиків, що показують приладів і зв'язних процесорів. Наявність ПЗУ дозволяє підбудовувати параметри







КТ КДПУ КП. 19.00.000.ПЗ

Арк





14
Зм.Арк№ ДокумПідписДата


в прикладних програмах (коди передавача, швидкості двигуна, частоти приймача і т.д.). Малі розміри корпусів, як для звичайного, так і для поверхневого монтажу, роблять цю серію мікроконтролерів придатної для портативних додатків. Низька ціна, економічність, швидкодія, простота використання і гнучкість введення/виводу робить PIC16F84 привабливим навіть у тих галузях, де раніше не застосовувалися мікроконтролери. Наприклад, таймери, заміна жорсткої логіки у великих системах, співпроцесори.


Позначення виводів мікроконтролера PIC 16F84


Варто додати, що убудований автомат програмування EEPROM кристала PIC16F84 дозволяє легко підбудовувати програму і дані під конкретні вимоги навіть після завершення ассемблювання і тестування. Ця можливість може бути використана як для тиражування, так і для занесення каліброваних даних уже після остаточного тестування.Кожна команда PIC16F84 - це 14-бітове слово, що розділене за змістом на наступні частини: поле коду операції OPCODE, поле для одного і більш операндов, що можуть брати участь чи ні в цій команді.

Система команд PIC16F84 містить у собі байт(орієнтовані команди, біт(орієнтовані, операції з константами і команди передачі керування (Табл. 1). Для байт(орієнтованих команд 'f' позначає собою регістр, з яким провадиться дія; 'd' ( біт обумовлює, куди записати результат. Якщо 'd' = 0, то результат буде поміщений у W регістр, при 'd' = 1 результат буде поміщений у регістр 'f', згаданий у команді.

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

Усі команди виконуються протягом одного командного циклу. У двох випадках виконання команди займає два командних цикли: перевірка умови і перехід, зміна програмного лічильника як результат виконання команди. Один командний цикл складається з чотирьох періодів генератора. Таким чином, для генератора з частотою 4 Мгц час виконання командного циклу буде 1 мкс.


Набір команд мікроконтролера PIC16F84 Таблиця 1






КТ КДПУ КП. 19.00.000.ПЗ

Арк





15
Зм.Арк№ ДокумПідписДата



Переривання в PIC16F84 можуть бути від чотирьох джерел:

-зовнішнє переривання з ніжки RB0/INT,

-переривання від переповнення лічильника/таймера T0CKI,

-переривання по закінченні запису даних у EEPROM

-переривання від зміни сигналів на ніжках порту RB<7:4>.

У PIC16F84 існують розходження між варіантами скидань:

  1. Скидання по включенню живлення.

  2. Скидання по зовнішньому сигналі при нормальній роботі.

  3. Скидання по зовнішньому сигналі в режимі SLEEP.

  4. Скидання по закінченню затримки таймера WDT при нормальній роботі.

  5. Скидання по закінченню затримки таймера WDT у режимі SLEEP.

8-бітова шина даних з'єднує два основних функціональних елементи разом: набір регістрів (включаючи порти) і арифметико-логічний пристрій. Перші 32 байта ОЗУ адресуються прямо і називаються "Банк 0". Область ОЗУ організована як 128 х 8. До осередків ОЗУ можна адресуватися прямо чи побічно, через регістр покажчик банку FSR (04h). Це також відноситься і до EEPROM пам'яті данних констант.







КТ КДПУ КП. 19.00.000.ПЗ

Арк





16
Зм.Арк№ ДокумПідписДата


f0 – Регістр непрямої адресації Indirect add (00h)

Регістр непрямої адресації фізично не існує. Він указує завжди тільки на один регістр – покажчик непрямої адресації (FSR). Будь-яка команда, що використовує його, насправді звертається до регістра даних, на який указує FSR.

f1 – Регістр таймера/лічильника TMR0 (01h)

Основне застосування таймера/лічильника підрахунок числа зовнішніх подій і вимір часу. У регістр TMR0 можна завантажити дані чи зчитати з нього, як з будь-якого іншого регістра. Вміст цього регістра може бути інкрементовано фронтом зовнішнього сигналу, що надходить на вхід RA4/T0CKI кристалу, чи внутрішнім сигналом синхронізації (CLKOUT=FOSC / 4).

f2 Програмний лічильник PCL (02h чи 82h)

Програмний лічильник забезпечує доступ до 14-бітних комірок вбудованої постійної пам'яті (EEPROM). Ширина програмного лічильника 13 біт, що дозволяє прямо адресувати 8Кх14 комірок ПЗУ. Однак, для PIC16F84, фізично доступно тільки 1К комірок (адреси 0000h(03FFh). Звертання до адресу вище 3FFh фактично є адресація в той же перший кілобайт. Вектор скидання знаходиться за адресою 0000h, вектор переривання знаходиться за адресою 0004h.

f3 Регістр статусу STATUS (03h)

Регістр f3 містить арифметичні прапори АЛУ, стан контролера при скиданні і біти вибору сторінок для пам'яті даних. f3 доступний для будь-якої команди так само, як будь-який інший регістр

f4 Покажчик непрямої адресації FSR (04h)

Будь-яка команда, що використовує f0 (адресу 00h) як регістр фактично звертається до покажчика, що зберігається в FSR (04h). Необхідна 9 - бітна адреса формується об'єднанням умісту 8- бітного FSR регістра і біта IRP з регістра статусу..

f5, f6 Регістри введення/виводу PORTA, PORTB (05h, 06h)

Регістри f5 і f6 відповідають двом портам введення/виводу, що мається в PIC16F84. Порт A має 5 розрядів RA4(RA0, що можуть бути індивідуально запрограмовані як входи чи виходи за допомогою регістра TRISA, розташованого на першій сторінці регістрів за адресою 85h. Порт В ( це двонаправлений порт, шириною у вісім біт (адреса регістра 06h). Стосовний до порту В керуючий регістр TRISB розташований на першій сторінці регістрів за адресою 86h.

f8, f9 Регістри EEPROM EEDATA, EEADR (08h, 09h)

Пам'ять даних EEPROM дозволяє прочитати і записати байт інформації. При записі байта автоматично стирається попереднє значення, і записуються нові дані. Усі ці операції робить убудований автомат запису EEPROM. Доступ до пам'яті здійснюється через два регістри: EEDATA (08h), що містить у собі восьмибітні дані для читання/запису і EEADR (09h), що містить адресу поточної комірки.







КТ КДПУ КП. 19.00.000.ПЗ

Арк





17
Зм.Арк№ ДокумПідписДата


Керування записом і зчитуванням здійснюється через керуючі регістри: EECON1 (88h) і EECON2 (89h). При зчитуванні даних з пам'яті EEPROM необхідно записати необхідну адресу в EEADR регістр і потім установити біт RD EECON1<0> в одиницю.

Регістри EECON1, EECON2 (88h, 89h)

Регістр EECON1 - це керуючий регістр шириною п'ять біт. Молодші п'ять біт фізично існують, а старші три біти читаються завжди як `0`.Регістр EECON2 не реалізований фізично, його читання повертає 00h. Регістр EECON2 використовується винятково в циклі запису даних.

Регістри W, INTCON, OPTION

Робочий регістр W використовується в більшості команд як регістр акумулятора. З його допомогою провадяться всі арифметичні і логічні операції. Регістр переривань INTCON (адреса 0Bh) служить для керування режимами переривання і містить біти дозволу переривань від різних джерел і прапори переривань. Регістр режимів OPTION (адрес

Актуально: