·за розрядністю ін">

Розробка принципової схеми та програмного забезпечення на мікроконтролері ATtiny13

 

ВСТУП


Архітектура ЕОМ - це набір відомостей, необхідний та достатній для написання для даної обчислювальної машини <#"justify">·за розрядністю інтерфейсів і машинних слів: 8 -, 16 -, 32 -, 64-розрядні (ряд ЕОМ має й інші розрядності);

·за особливостями набору регістрів <#"justify">Архітектура ЕОМ включає інформацію про:

·набір машинних команд <#"justify">Мікропроцесор (МП) ? програмно-керований пристрій, що здійснює процес обробки цифрової інформації і управління ним; побудований на одній або декількох великих інтегральних схемах (ВІС).

Все різноманіття МП зручно розділити на два типи:

·однокристальні МП з фіксованою розрядністю слова та фіксованою системою команд і, як правило, пристроєм управління зі "схемною"логікою;

·багатокристальні (секційні) мікропрограмовані МП із змінною розрядністю слова і з фіксованим набором мікрооперацій.

Мікроконтролер (англ. microcontroller), або одно кристальна мікроЕОМ - виконана у вигляді мікросхеми спеціалізована мікропроцесорна система, що включає мікропроцесор, блоки пам'яті для збереження коду програм і даних, порти вводу-виводу і блоки зі спеціальними функціями (лічильники, компаратори, АЦП та інші).

З появою одно кристальних мікро-ЕОМ пов'язують початок ери масового застосування комп'ютерної автоматизації в галузі управління. Мабуть, ця обставина і визначило термін "контролер" ( англ. controller - Регулятор, керуючий пристрій).

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

Курсовий проект передбачає розробку принципової схеми та програмного забезпечення на мікроконтролері ATtiny13[1].


1. АНАЛІЗ ТЕХНІЧНОГО ЗАВДАННЯ


В курсовому проекті необхідно розробити принципову схему та текст програми системи кодового захисту з однією кнопкою на мікроконтролері ATtiny13.

Функціональні можливості системи:

діапазон коду 0..255;

індикація введення 1,2,3 розрядів коду світлодіодами HL1-HL3 відповідно;

індикація збереження коду світлодіодом HL4;

режим введення і задання коду;

індикація помилкового введення коду;

напруга живлення пристрою -5...12В.

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

Для блоку індикації використовуються 4 світлодіоди: 3 - для індикації введення кожного розряду числа відповідно і четвертий для індикації введення правильності комбінації.

Блок керування має 2 кнопки: SETiRESET - для введення коду і його задання. При одночасному натисненні кнопок відкривається режим задання кнопок, а при натисненні лише кнопки SET-режим введення.

Використаний в проекті ATtiny13 - низькоспоживаючий 8 бітний КМОП мікроконтролер з AVR RISC архітектурою.

У схемі застосовані широко поширені, недефіцитні деталі. В якості тактування мікроконтролера, обраний внутрішній RC-генератор з тактовою частотою 128кГц / 8 (16 кГц)[2].


2. РОЗРОБКА АПАРАТНОЇ ЧАСТИНИ


.1 Вибір мікроконтролера та огляд його архітектури


Для реалізації схеми обрано ATTiny13 ? невеликий мікроконтролер (8 ніг), напевно, найдешевший в серії AVR. Випускається у двох варіантах - звичайному (ATTiny13) і зі зниженою напругою (ATTiny13V). За знижену напругу доводиться платити зниженням тактової частоти мікроконтролера (більш повільна робота).

З метою забезпечення максимальної продуктивності і паралелізму, AVR використовує Гарвардську архітектуру - з окремою памяттю та шинами для програм і даних. Команди в програмній пам'яті виконуються з одного рівня конвеєризації. У той час як одна команда виконується, наступна команда наперед обирається з вибірки пам'яті програм. Ця концепція дозволяє виконувати команди у кожному такті. Програмна память знаходиться в внутрішньо системній програмованій флеш-пам'яті.ядро об'єднує багату систему команд і 32 робочих регістра загального призначення. Усі 32 регістра безпосередньо пов'язані з арифметико-логічним пристроєм (АЛП), що дозволяє отримати доступ до двох незалежних регістрів при виконанні однієї команди. У результаті ця архітектура дозволяє забезпечити в десятки разів більшу продуктивність, ніж стандартна CISC архітектура [3].має такі характеристики: 1 КБ внутрішньо системної програмованої Flash-пам'яті програми, 64-байтну EEPROM пам'ять даних, 64-байтну SRAM (статична ОЗУ), 6 ліній введення - виведення загального застосування, 32 робочих регістра загального призначення, 8 бітний таймер / лічильник зі схемою порівняння, внутрішні і зовнішні джерела переривання, 4-канальний 10-бітний АЦП, програмований сторожовий таймер з вбудованим генератором і три програмно ініціалізованих режими зниженого споживання. У режимі Idle зупиняється ядро, але ОЗУ, таймер / лічильник, АЦП, аналоговий компаратор і система переривань продовжують функціонувати. У режимі Power-down регістри зберігають своє значення, але генератор зупиняється, блокуючи всі функції приладу до наступного переривання або апаратного скидання. У режимі ADC NoiseReduction зупиняється обчислювальне ядро і всі модулі введення-виведення за винятком АЦП, що дозволяє мінімізувати шуми при виконанні перетворення. Блок-схема мікроконтролера ATtiny13 зображена на рисунку 2.1.


Рисунок 2.1 ? Блок- схема ATtiny13


Прилад виготовлений за високощільною енергонезалежною технологією виготовлення пам'яті компанії Atmel. Вбудована ISP Flash дозволяє перепрограмувати пам'ять програми в системі через послідовний SPI інтерфейс програмою-завантажувачем, виконуваної в AVR ядрі, або звичайним програматором енергонезалежній пам'яті. ATtiny13 підтримується різними програмними засобами та інтегрованими засобами розробки, такими як компілятори C, макроассемблери, програмні відладчики / симулятори, внутрішньо схемні емулятори та ознайомчі набори.

Відмінні особливості:

·Високоякісний низькоспоживаючий 8 - бітний AVR мікроконтролер.

·Передова RISC архітектура:

120 команд, більшість яких виконується за один тактовий цикл;

32 8-бітних робочих регістра загального застосування;

повністю статична архітектура.

·Незалежна пам'ять програм і даних:

1 КБ внутрішньо системної програмованої Flash-пам'яті програми, здатної витримати 10 000 циклів запису / стирання;

64 байта внутрішньо системної програмованої EEPROM пам'яті даних, здатної витримати 100 000 циклів запису / стирання ;

64 байта вбудованої SRAM пам'яті (статичне ОЗУ);

програмований захист від зчитування самостійно програмуючої Flash-пам'яті програми і EEPROM пам'яті даних.

·Характеристики периферії:

один 8-розрядний таймер / лічильник і два ШІМ каналів;

4-канальний 10 бітний АЦП з вбудованим ІОН;

програмований сторожовий таймер з вбудованим генератором;

вбудований аналоговий компаратор.

·Спеціальні характеристики мікроконтролера:

вбудований відладчикdebugWIRE;

внутрішньо системне програмування через SPI порт;

зовнішні і внутрішні джерела переривання;

режими зниженого споживання Idle, ADC NoiseReduction і Power-down;

удосконалена схема формування скидання при включенні;

програмована схема виявлення короткочасних зникнень харчування;

вбудований відкалібрований генератор.

·Порти введення - виведення і корпусне виконання:

8 вивідні PDIP і SOIC корпусу: 6 програмованих ліній введення-виведення.

·Діапазон напруги живлення: від 2.7 до 5.5 В.

·Споживання:

активний режим: 290 мкА при частоті 1 МГц і напрузі живлення 1.8 В;

режим зниженого споживання: 0.5 мкА при напрузі живлення 1.8 В.

Розміщення виводів мікроконтролера зображено на рисунку 2.2.


Рисунок 2.2 - Розміщення виводів ATtiny13


·VCC- напруга живлення.

·GND - заземлення.

·Порт B (PB5: PB0) - порт B являє собою 6-розрядний двонаправлений порт вводу/виводу з внутрішніми навантажувальними резисторами (вибраними для кожного біта).

·RESET-вхід скидання [4-5].


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


Проаналізувавши архітектуру мікроконтролера ATtiny13 та технічне завдання, була розроблена функціональна схему пристрою (рис. 2.3), яка складається з наступних блоків:

·мікроконтролер;

·блок керування;

·схема скиду;

·стабілізатор напруги;

·керуючий елемент;

·блок індикації;

·реле;

·блок живлення.


Рисунок 2.3 - Функціональна схема пристрою


2.3 Вибір електронних компонентів

мікроконтролер архітектура кодовий адресний

Для роботи мікроконтролера потрібна напруга 5 В, для її забезпечення ми використаємо стабілізатор напруги 78L05. Якщо на вхід даного стабілізатора подати 12 В і 0,2 А то на виході буде 5 В. Його характеристики такі:

вихідна напруга 5 В;

максимальний вихідний струм 0,1 А;

вхідна напруга до 30 В;

робоча температура -20°С ÷ +150°С;

Схема включення стабілізатора зображена на рисунку 2.4.

L05 - найпростіший стабілізатор додатної фіксованої напруги 5 вольт в корпусі з трьома виходами для широкого застосування. Цей стабілізатор розрахований на навантаження в 100mA. Звісно, є захист від перевищення струму навантаження, захист від перегріву. Стабілізатори в цьому виконанні розраховані на застосування в слабкострумових електричних ланцюгах. Напруга на вході також близько 10 вольт.


Рисунок 2.4 - Схема включення стабілізатора 78L05


У якості блоку індикації використовуються 3 світлодіоди. Якщо струм споживання світлодіода в робочому режимі не перевищує 30 мА, а номінальна напруга не перевищує напруги живлення мікроконтролера, то ми можемо підключати його безпосередньо до лінії порту введення / виводу.

Світлодіод треба підключати через резистор (рис.2.5). Справа в тому, що прямий опір світлодіода дуже малий. І якщо не обмежувати струм через резистор, то він згорить. Або, що вірогідніше, спалить вивід мікроконтролера.


Рисунок 2.5 - Схема підключення світлодіода


Для скиду мікроконтролера в схемі є кнопка RESET. Реалізація скиду (рис. 2.6) відбувається наступним чином: при включенні схеми конденсатор розряджений і напруга на RST близька до нуля - мікроконтролер не стартує. Але з часом, через резистор, конденсатор зарядиться і напруга на RST досягне логічної одиниці - МК запуститься. Кнопка дозволяє примусово зробити скидання, якщо треба.


Рисунок 2.6 - Схема скиду мікроконтролера


При конструюванні пристроїв на мікроконтролерах часто виникає необхідність управління різними зовнішніми пристроями за допомогою включення і вимкнення напруги живлення. При цьому напруга живлення і струм споживання таких пристроїв можуть змінюватися в найширших межах. Універсальним способом управління подібними пристроями є електромагнітне реле. В даний час у продажу з'явилися малогабаритні реле з досить непоганими параметрами. Сьогодні реле можуть комутувати навантаження в ланцюзі до 220 вольт при струмі до 10 ампер і вище. Обмотка реле зазвичай розрахована на напругу 12В і споживає струм всього 40 мА. Схема підключення вказана на малюнку 2.7.

Для того, що б включити навантаження мікроконтролер виставляє на своєму виході (в даному випадку на виході PB0) сигнал логічної одиниці. Напруга через резистор R1 поступає на базу транзистора. Транзистор відкривається і реле спрацьовує. Його контакти замикають ланцюг навантаження. Для відключення навантаження мікроконтролер виставляє на своєму виході сигнал логічного нуля. На базі VT1 напруга знижується до нуля. Транзистор закривається і реле відключається. Діод VD1 служить для захисту схеми від напруги самоіндукції, яке виникає в обмотці реле при знятті з неї напруги [6].


Рисунок 2.7 - Схема підключення реле до мікроконтролера


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

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

3. РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ


.1 Розробка алгоритму функціонування


Алгоритм <#"justify">·режим програмування, (запису) для введення 3-х бажаних чисел із занесенням їх значень в енергонезалежну пам'ять мікроконтролера, ці значення зберігаються при знеструмленні пристрою;

·режим введення кодів (чисел) для відкривання кодового замка.

Наприклад, потрібно занести в незалежну пам'ять числа 3, 2, 1. Для цього нам треба увійти в режим програмування ? після подання живлення одночасно утримувати натиснутими обидві кнопки «SET» і «RESET». Після чого спершу відпустити кнопку «RESET», і після початку мигання першого світлодіода HL1, відразу ж відпустити установчу кнопку «SET». Після чого світлодіод HL1 перестає блимати і спалахує постійно, (інші світлодіоди HL2, HL3 погашені) це означає, що пристрій готовий для введення першого числа.

Далі треба натиснути кнопку «SET» і утримувати її в натиснутому стані, відраховуючи одночасне блимання всіх 3-х світлодіодів HL1, HL2, HL3 (щоб блимнуло 3 рази), потім кнопку відпустити. На підтвердження, через секунду, індикація блимне набране нами число ? 3 (три рази). Далі загориться постійно другий світлодіод HL2 (це означає, що треба ввести друге число) у нас це число дорівнює двом. Треба натиснути знову кнопку «SET» і утримувати її, доки світлодіоди HL1-HL3 після натискання не блимнуть два рази, після цього відпустити кнопку, через секунду відбудеться підтвердження набраного нами другого числа -блок індикації блимне одночасно 3-ма світлодіодами два рази. Після цього загориться постійно 3-й світлодіод HL3, третє число ми вибрали рівним - 1. Це означає, що нам потрібно натиснути кнопку, щоб світлодіоди спалахнули після натискання тільки 1 раз і відпустити кнопку. Через секунду на підтвердження, світлодіодний індикатор блимне 1 раз. На цьому процедура програмування (внесення чисел 3,2,1) закінчена.

Далі треба натиснути кнопку «RESET» або вимкнути живлення, щоб після програмування чисел схема увійшла до вихідного режиму очікування ? режиму введення кодів (чисел) для відкривання кодового замка. У цьому режимі вся індикація погашена.

Тепер спробуємо відкрити замок ? нам потрібно занести числа 3, 2, 1. Для цього необхідно натиснути кнопку «SET», схема активізується, це буде видно по блиманню 1-го світлодіода. Після цього відразу відпустити кнопку, тепер перший світлодіод горить постійно, це означає, що треба ввести перше число - 3.

Процедура аналогічна до вище описаної, натискаємо кнопку «SET», і утримуючи її натиснутою чекаємо, щоб всі 3 світлодіоди запалилися 3 рази, після цього відпускаємо кнопку. Через секунду відбувається підтвердження набраних нами чисел ? у відповідь миготіння 3 рази. Далі така ж процедура з другим і третім числом.

Якщо після введення третього числа і підтвердження індикацією, код всіх 3-х чисел введений вірно, то через секунду запалюється світлодіод HL4 і горить близько 15 секунд. У цей час HL1, HL2, HL3 починають мерехтіти, як «бігаючі вогні» один за іншим. Після закінчення 15 секунд всі світлодіоди гаснуть і схема переходить в початковий стан очікування.

Якщо код введений невірно, ніякої реакції не буде до введення 3-ї невдалої спроби, після чого індикація набуває вигляду «бігаючих вогнів» 3-х світлодіодів і переходить в режим блокування схеми на 2,5 хвилини. Після закінчення даного часу, схема знову перейде в початковий стан очікування і можна буде знову спробувати ввести правильний код.

Замінити старі коди на нові можна в режимі програмування, ввівши 3 нові числа.

Для більш наочного розуміння алгоритму, використовуються блок-схеми алгоритму функціонування. У автоматиці <#"justify">

Рисунок 3.1 - Блок-схема алгоритму функціонування


3.2 Організація памяті та розподіл адресного простору


Архітектура AVR має дві основні області пам'яті: пам'ять даних (рис. 3.3) і пам'ять програм (рис. 3.2). Крім того, ATtiny13 має пам'ять EEPROM для зберігання даних. Всі три області пам'яті є лінійними. ATtiny13 містить 1K байт на кристалі внутрішньо системної програмованої флеш-пам'яті для програмного зберігання. Оскільки всі AVR команди по 16 або 32 байти, флеш-пам'ять організована як 512 х 16. Флеш-пам'ять має витривалість не менше 10000 циклів запису / стирання. ATtiny13 програмний лічильник (РС) дев'ятибітний, що дозволяє виконувати 512 локацій пам'яті програм.


Рисунок 3.2 - Організація програмної памяті


Найнижчі 160 локацій пам'яті даних відведені для звертання до реєстровогофайлу, пам'яті введення / виведення і внутрішньої SRAM пам'яті. Перші 32 локації звертаються дореєстрового файлу, наступні 64 локації- до стандартної пам'яті введення / виведення, а останні 64 -до внутрішньої SRAM памяті даних.

При адресації пам'яті даних використовуються п'ять режимів адресації: безпосередня адресація, непряма зі зсувом, непряма, непряма з преддекрементом і непряма з постдекрементом. Регістри з R26 по R31 реєстрового файлу працюють як X, Y і Z регістри показники непрямої адресації.

При використанні непрямої адресації з автоматичним преддекрементом і постдекрементом автоматично декрементуются і інкрементуются адреси записані в регістри X, Y і Z. Усіма цими режимами перекривається весь адресний простір даних, включаючи 32 регістра загального призначення і 64 регістра І/O.


Рисунок 3.3 - Організація памяті даних

містить 64 байти пам'яті даних EEPROM. Вона організована як окремий простір даних, в якому окремі байти можуть бути прочитані і записані. EEPROM має на витривалість щонайменше 100 000 циклів запису / стирання.

Всі I / O локації доступні для LD / LDS / LDD і ST / STS / STD інструкцій, даними, що передаються між 32 робочими регістрами загального призначення і середовищем введення / виводу. Регістри введення / виводу в діапазоні адрес 0x00-0x1F безпосередньо доступні за допомогою SBIі CBI інструкції. У цих регістр f, значення одного біта може бути перевірена за допомогою НВІС і SBIC інструкції. При використанні спеціальних команд введення / виведення IN і OUT,повинні бути використані адреси введення / виведення 0x00 - 0x3F. Для сумісності з майбутніми пристроями, зарезервовані біти повинні бути записані в нуль, якщо є вони доступні [7].


3.3 Розробка програми, що керує роботою мікропроцесора


Всі мови програмування діляться на дві групи:

?мови низького рівня (машинного орієнтування);

?мови високого рівня.

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

Яскравим представником мов низького рівня є Асемблер. Тому для програмної реалізації схеми використана саме дана мова.

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

Мови програмування високого рівня відрізняються тим, що вони більш орієнтовані на людину. Більшість команд мов високого рівня не пов'язані з конкретними командами МК.

Програмне забезпечення було розроблене за допомогою AVRStudio ? інтегрованого середовища розробки (IDE) для розробки 8-ми і 32-х бітних AVR додатків від компанії Atmel.

Лістинг програми виглядає наступним чином:


MOVFF 0, 0x7550x55, F, BANKED0x66, F, BANKED0x77, W, ACCESS0, F, BANKED0xf88, W, ACCESS0xaa, F, BANKED0x1d, 0x7, BANKED0x160e0e0x7, 0x5, BANKED0x280x8, 0x5, BANKED0x8, 0x4, BANKED0xb3, 0x5, BANKED0xa, 0x800xffffff240x18c0x19, F, ACCESS0xffffff2c0x18c0x29, F, ACCESS0xffffff340x18c0x39, F, ACCESS0x2, 0x4680x68, 0x2, ACCESS0xbb, F, BANKED0, F, BANKED0x55, F, BANKED0x77, F, BANKED0x1760xb3, 0x4, BANKEDPCLATH, 0x50x52ADCON0, 0x5, ACCESS0x152ADCON0, 0x4, ACCESS0x1580xa, 0x2, BANKED0x1580xb3, 0x4, BANKED0x17, 0x210x21, 0x50x68ADCON1, 0x5, ACCESS0x152ADCON1, 0x4, ACCESS0x1580xa, 0x2, BANKED0x1580xb3, 0x4, BANKED0x17, 0x210x21, 0x50x7e0xfc0, 0x5, ACCESS0x1520xfc0, 0x4, ACCESS0x1580xa, 0x2, BANKED0x1580xb3, 0x4, BANKED0x17, FSR2LFSR2L, 0x7000, F, BANKED0x55, F, BANKED0x77, F, BANKED0x72, ACCESSADCON0, 0x5, ACCESS0x23, 0x5960x15, F, ACCESS0xffffff9a0x91, W, BANKED0x1940, F, BANKED0x55, F, BANKED0x77, F, BANKED0x74, ACCESSADCON1, 0x5, ACCESS0x18, 0x5660x25, F, ACCESS0xffffffb20x92, W, BANKED0x1940, F, BANKED0x55, F, BANKED0x77, F, BANKED0x78, ACCESS0xfc0, 0x5, ACCESS0xd, 0x5360x35, F, ACCESS0xffffffca0x93, W, BANKED0x1940xfb7, 0xd71FSR1H, 0xd72PLUSW0, 0xd73PRODH, 0xfb00xfb0, 0x9b30xb3, 0x4, BANKEDTOSH, 0x3c0x1580x1620x1760x53, 0x2, BANKED0xb3, 0x5, BANKEDPCLATH, 0x450x1760, F, BANKED0x75, F, ACCESS0x1620x1580x7a, 0x2, ACCESSFSR0L, 0xe450x45, F, ACCESS0x41, W, ACCESSTMR1H, 0x1b00xb0, BANKEDT1CON, 0xe550x55, F, ACCESS0x52, W, ACCESST0CON, 0x2b00xfb0, ACCESSOSCCON, 0xe650x65, F, ACCESS0x63, W, ACCESSTRISA, 0x4b00xfb0, ACCESS0xb0, F, BANKED0x176ADRESH, 0x5, ACCESS0x22, F, BANKED0x7, 0x5230x23, 0x2, BANKED0x23, W, ACCESS0xf87, 0x7220x22, F, BANKED0x920x1, 0xb50x9cADCON0, 0x5, ACCESS0x152ADCON0, 0x4, ACCESS0x176ADCON1, 0x5, ACCESS0x152ADCON1, 0x4, ACCESS0x1760xfc0, 0x5, ACCESS0x1520xfc0, 0x4, ACCESS0x1760xba, 0x2, BANKEDADRESH, 0x4, ACCESS0xf73, 0x5ea0xea, 0x2, BANKED0x8, 0x2, BANKED0xf20x1020x21, 0x3, BANKED0x8, 0x2, BANKEDADCON0, 0x5, ACCESSADCON1, 0x5, ACCESS0xfc0, 0x5, ACCESS0x176ADCON0, 0x4, ACCESSADCON1, 0x4, ACCESS0xfc0, 0x4, ACCESS0x1580x1580x8, 0x2, BANKED0x1580x1580x1580x1580x1580x8, 0x2, BANKED0x1980x1620xa, 0x2, BANKED0x8, 0x2, BANKED0x8e, 0x5, BANKEDBSR, 0x5, ACCESS0x9d, 0x1, BANKED0x8, 0x2, BANKED0xe1, 0x4, BANKEDTOSH, 0xb8e0x8e, 0x5, BANKED0x9d, 0x5, BANKEDFSR1H, 0x5, ACCESSFSR1L, 0x5, ACCESS0x8, 0x2, BANKED0x28, BANKED0x29, W, ACCESS0x32, F, ACCESS0x2e, F, ACCESS0x65, ACCESS0x2e, F, ACCESS0x30, W, BANKED0x31, W, ACCESS0x62, 0x4, BANKED0x20, F, ACCESS0x61, 0x2, BANKED0x69, BANKED0x69, 0x1, ACCESS0x2e, W, ACCESS0x76, ACCESS0x61, ACCESS0x69, BANKED0x69, ACCESS0x40, 0x1, ACCESS0x61, ACCESS0x69, BANKED0x64, BANKED0x64, F, ACCESS0x72, 0x2, BANKED


У розділі описано роботу схеми, її алгоритм і наведено блок-схему функціонування. Описано розподіл і організацію памяті і адресного простору мікроконтролера.

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


4. МОДЕЛЮВАННЯ РОБОТИ


Моделювання роботи системи кодового захисту з однією кнопкою (рис. 4.1) проводилось у пакеті Proteus 7.7 Professional (Isis 7.7 Professional).


Рисунок 4.1 - Змодельована схема системи кодового захисту з однією кнопкою


Після встановлення режиму роботи схеми, переходимо до програмування чисел. Після встановлення кожного числа, починає блимати блок індикації, що складається з 3-х світлодіодів (рис. 4.2).

Після завершення програмування чисел, програма переходить в звичайний режим введення чисел.

Якщо комбінація була введена правильно - вмикається блок індикації з одного світлодіода (рис. 4.3).


Рисунок 4.2 - Індикація завершення введеного числа


Рисунок 4.3 - Індикація правильно введеної комбінації


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


ВИСНОВКИ


У курсовому проекті було розроблено систему кодового захисту з однією кнопкою на мікроконтролері ATtiny13. Розробка апаратної частини проекту дозволила детально ознайомитись з архітектурою мікроконтролера, його властивостями, а також електронними компонентами схеми. Відповідна схема була промодельована у пакеті Proteus 7.7 Professional, де і була перевірена функціональність пристрою. Програмне забезпечення було створене в середовищі AVRStudio мовою Асемблер.

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


ВСТУП Архітектура ЕОМ - це набір відомостей, необхідний та достатній для написання для даної обчислювальної машини <#"justify">·за розрядністю ін

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ