Автор: Пользователь скрыл имя, 17 Марта 2013 в 22:08, курсовая работа
Дана курсова робота виконується з метою більш поглибленого вивчення дисципліни «Мікроконтролери у вимірювальній техніці», набуття навичок самостійного вирішення поставлених задач, більш детального вивчення принципу роботи MCS-51 стенду EV8031, та вдосконалення знань, набутих під час виконання лабораторних робіт.
В курсовій роботі використовуються такі теоретичні відомості, як відомості про вбудований у стенд ЦАП, а також принцип роботи цифрового автомату, необхідні для кращого розуміння поставленої задачі та розроблення шляхів її реалізації на базі MCS-51 стенду EV8031; відомості про апаратні та програмні можливості використовуваного стенду EV8031 та мікроконтролера MCS-51.
В курсовій роботі використовується програмне середовище Keil uVision3.
Вступ………………………………………………………………………….4
1. Теоретична частина:
1.1. Загальні відомості про цифро-аналоговий перетворювач……...…5
1.2. Мікроконтролер 8051…………………………………………….…..8
1.2.1. Програмна архітектура МК 8051……………………………..…..8
1.2.2. Структура внутрішньої пам’яті…………………………….....…10
1.2.3. Система переривань…………………………………….…….….15
1.3. Цифровий автомат…………………………………………….……..21
1.3.1. Що являє собою цифровий автомат……………………….....….21
1.3.2. Структурна схема цифрового автомату…………………..…......23
1.3.3. Синтез цифрового автомату……………………………..…..…..25
2. Практична частина:
2.1. Алгоритм програми для реалізації цифрового автомата………….26
2.2. Алгоритм для підпрограми обробки переривань…………………..28
2.3. Текст програми з коментарями…………………………………......29
Висновки………………………………………………………………...….33
Міністерство освіти і науки, молоді та спорту України
Національний авіаційний університет
Інститут інформаційно-
Кафедра інформаційно-вимірювальних систем
Курсова робота
з дисципліни: «Мікроконтролери у вимірювальній техніці»
Варіант № 12
Виконала:
студентка групи 512 ІС
Самчук Тетяна Олександрівна
Роботу здано “___”________ 2012 р.
Курсову роботу захищено з оцінкою: ____________________
Київ – 2012
Національний авіаційний університет
Інститут інформаційно-
Кафедра інформаційно-вимірювальних систем
ЗАВДАННЯ
студентки Самчук Тетяни Олександрівни
Варіант № 12
На базі мікроконтролера MCS-51 та стенду EV8031 розробити цифровий автомат із використанням 8-бітного ЦАП. Цифровий автомат має виконувати таку послідовність дій:
1) після запуску програми протягом 12 секунд із виходу ЦАП поступає пилкоподібний сигнал;
2) протягом 9 секунд із виходу ЦАП поступає послідовність прямокутних імпульсів;
3) якщо протягом перших 12 секунд роботи програми (п.1) була натиснута кнопка INT0 з виходу ЦАП протягом 6 секунд поступає синусоїда. У протилежному випадку ЦАП вимикається на 7 секунд, після чого процес повторюється, починаючи з п.1.
Період кожного із сигналів має складатися із 15 точок.
Програма повинна мати наступні функції:
1) встановлення частоти поточного вихідного сигналу за допомогою кнопки INT0;
2) протягом виведення на ЦАП амплітуда вихідного сигналу має плавно змінюватися від мінімуму до максимуму та навпаки;
3) кількість секунд, що залишилися до кінця, та номер циклу виводиться на статичний індикатор у десятковому форматі.
Зміст
Вступ…………………………………………………………………
Висновки…………………………………………………………
Вступ
Дана курсова робота виконується з метою більш поглибленого вивчення дисципліни «Мікроконтролери у вимірювальній техніці», набуття навичок самостійного вирішення поставлених задач, більш детального вивчення принципу роботи MCS-51 стенду EV8031, та вдосконалення знань, набутих під час виконання лабораторних робіт.
Для успішного виконання курсової роботи студент повинен вміти працювати з літературою, знати необхідний матеріал, вміти складати алгоритми та розроблювати програми мовою СІ. В курсовій роботі використовуються такі теоретичні відомості, як відомості про вбудований у стенд ЦАП, а також принцип роботи цифрового автомату, необхідні для кращого розуміння поставленої задачі та розроблення шляхів її реалізації на базі MCS-51 стенду EV8031; відомості про апаратні та програмні можливості використовуваного стенду EV8031 та мікроконтролера MCS-51.
В курсовій роботі використовується
програмне середовище Keil uVision3.
1. Теоретична частина
Цифро-аналогові перетворювачі (ЦАП) виробляють струм чи напругу, функціонально зв'язану з керуючому кодом. ЦАП застосовуються для формування вихідних аналогових сигналів цифрових вимірювальних і обчислювальних пристроїв. Для перетворення двійкового коду в аналоговий сигнал зазвичай формуються струми, що пропорційні вагам розрядів коду після чого додаються ті зі струмів, що відповідають ненульовим розрядам вхідного коду.
Застосовуються в основному два методи ЦАП: підсумовування одиничних еталонних величин і підсумовування еталонних величин, ваги яких розрізняються. У першому методі при формуванні вихідної аналогової величини використовується тільки одна еталонна величина вагою в один квант. В другому методі застосовуються еталонні величини з вагами, що залежать від номера розряду, і в підсумовуванні беруть участь тільки ті еталонні величини, для яких у відповідному розряді вхідного коду встановлена одиниця.
У випадку використання на вході двійкового позиційного коду значення всіх розрядів надходить одночасно, і робота таких ЦАП описується виразом:
де X - аналогова величина.
- коефіцієнти відповідних двійкових розрядів, що приймають дискретні значення одиниці чи нуля.
Р - опорний сигнал
b - число розрядів
У перетворювачах з опорної напруги формуються еталонні величини, які відповідають значенням розрядів вхідного коду, які підсумовуються і утворюють дискретні значення вихідної аналогової величини.
Класифікація ЦАП може бути приведена по ознакам:
Основні структури, які використовуються в ЦАП інтегрального виконання це:
Параметри ЦАП:
Число розрядів n керуючого коду, номінальний вихідний струм, час установлення вихідного сигналу після зміни вхідного керуючого коду, похибка повної шкали, похибка лінійності, диференціальна нелінійність.
Похибки ЦАП можуть бути виражені у відсотках чи інших відносних одиницях, а також у частках кванта.
Спрощена схема ЦАП для розуміння роботи перетворення вхідного коду в струм (напругу) визначеної величини зображений на рис. 1
Рис. 1. Схематичне представлення ЦАП на основі матриці R-2R
Якщо співвідношення резисторів ЦАП встановити рівним 8R, 4R, 2R, 1R, то при включенні всіх комутаторів у відповідності до закону Ома напруга в точці OUT буде дорівнювати напрузі VCC. Якщо ввімкнути комутатор резистора R8, напруга в точці OUT буде рівною VCC/2.
Аналогічно можна отримати значення напруги, при різних комбінаціях вхідного коду.
В складі учбово-відлагоджувального стенда є мікросхема ЦАП КР572ПА1. Вона ввімкнена в режимі роботи 10 розрядного ЦАП з виходом по напрузі (напруга повної шкали вказується на платі розширення). Для спостереження вихідного сигналу з мікросхеми ЦАП необхідно під’єднати осцилограф до BNC роз’єму і замкнути перемичку J4. Цифровий код подається через лінії РА0-РА7 і РС0-РС7 мікросхеми паралельного ПП. Звернення до ЦАП відбувається як до байту зовнішньої пам’яті із адресою 0x8000 (0x8002 для двох старших бітів). Цап є однополярним, тобто не може відтворювати від’ємні значення напруги.
1.2 МІКРОКОНТРОЛЕР 8051
1.2.1 ПРОГРАМНА АРХІТЕКТУРА МІКРОКОНТРОЛЕРІВ 8051
Апаратна архітектура 8051
У мікроконтролера 8051 всі
обчислення виконуються в арифметико-
Рис. 2. Апаратна архітектура 8051
Мікроконтролера 8051 розраховані на робот системами реального часу, які можуть генерувати певні сигнали, що вимагають негайної реакції мікроконтролера. Для обробки таких сигналів (або подій) служить апаратно реалізована логіка переривань, що дозволяє обробляти сигнали зовнішніх джерел, таймерів і послідовного порту.
Швидкість виконання операцій в системі на базі 8051 залежить від тактової частоти, з якою працює кристал і яка може варіюватися від одиниць до декількох десятків мегагерц. В архітектуру класичного мікроконтролера 8051 були внесені деякі зміни (до двох існуючих таймерам доданий третій, а також розширена внутрішня пам'ять),які привели до створення пристрою 8052, найбільш популярного в даний час.
Мікроконтролера 8051 реалізований у вигляді однокристального пристрою з зовнішніми виводами, позначеними, як показано на рис. 3.
Рис. 3. Схема розміщення виводів МК 8051
Вхідні і вихідні сигнали мікроконтролера 8051 мають наступні призначення:
• XTAL і XTAL2 -входи підключення кварцового резонатора для роботи генератора тактової частоти мікроконтролера;
• PSEN - сигнал, що використовується при зверненні до зовнішньої пам'яті програм;
• ALE - вихідний сигнал дозволу фіксації адреси при зверненні до зовнішньої пам'яті програм / даних;
• EA - сигнал, що блокує роботу із внутрішньою пам'яттю;
• RST - сигнал загального скидання;
• P0 - P3 - висновки портів введення / виводу мікроконтролера;
• Vss і Vcc - висновки подачі напруги харчування.
Порти P0, P2 і P3 крім функціонування в режимі вводу/виводу дискретних сигналів можуть виконувати, залежно від конфігурації, і інші функції. Так, через порт P0 при зверненнях до зовнішньої пам'яті виставляються молодші 8 біт 16-розрядної адреси, а потім, у фазі запису/читання даних, через цей порт йде обмін даними. Порт P2 при зверненнях до зовнішньої пам'яті служить джерелом старших 8 біт 16-розрядної адреси.
Висновки порту P3 мікроконтролера 8051 мають такі альтернативні призначення:
• P3.0 - вхід прийому даних у послідовний порт;
• P3.1 - вихід передачі даних з послідовного порту;
• P3.2 - вхід зовнішнього переривання INT0;
• P3.3 - вхід зовнішнього переривання INT1;
• P3.4 - вхід управління таймером 0;
• P3.5 - вхід управління таймером 1;
• P3.6 - вихід сигналу запису в пам'ять;
• P3.7 - вихід сигналу читання з пам'яті.
Для використання альтернативних функцій порту P3 необхідно налаштувати відповідним чином програмне забезпечення системи 8051.
Мікроконтролера 8051 оперують двома типами пам'яті: пам'яттю програм і пам'яттю даних. Пам'ять даних може бути реалізована як комбінація розміщеного на кристалі (резидентного або on $ chip) статичного ОЗУ і зовнішніх мікросхем пам'яті. Для простих апаратно-програмних конфігурацій із застосуванням 8051 буває досить резидентної пам'яті самого мікроконтролера.
Програмний код розміщується в пам'яті програм, яка фізично може бути реалізована у вигляді одноразово програмованого пристрою (EPROM), перепрограмованого пристрою (EEPROM) або флеш $ пам'яті. Якщо для запису програм використовується EPROM або EEPROM, то програмний код зазвичай розташовується в зовнішньому по відношенню до мікроконтролера пристрої. У переважній більшості сучасних мікроконтролерів 8051 пам'ять програм розташовується у флеш пам'яті, що знаходиться, так само як і резидентна пам'ять даних, на одному кристалі.
Пам'ять програм і
пам'ять даних фізично і
Пам'ять програм може мати максимальний об'єм, рівний 64 Кб, що зумовлено використанням 16-розрядної шини адреси. У багатьох випадках ємність пам'яті програм, розміщеної на кристалі 8051, обмежена 4, 8 або 16 Кб. У пам'ять програм крім команд можуть записуватися константи, керуючі слова ініціалізації, таблиці перекодування вхідних та вихідних змінних і т.п. Доступ до вмісту пам'яті програм здійснюється за допомогою 16-бітової шини адреси. Сам адреса формується за допомогою якого програмного лічильника (PC), або регістра $ покажчика даних (DPTR). DPTR виконує функції базового регістра при непрямих переходах за програмою або використовується в операціях з таблицями.
Загальна структура пам'яті мікроконтролера 8051 показана на рис. 4.
Рис. 4. Загальна структура пам'яті мікроконтролера 8051