Смекни!
smekni.com

Функціональний генератор інфранизької частоти на базі мікропроцесорної системи (стр. 1 из 2)

Міністерство освіти і науки України

Національний університет "Львівська політехніка"

ІТРЕ

Кафедра РЕПС

КУРСОВА РОБОТА

з дисципліни “Цифрові пристрої та мікропроцесори”

на тему: “Функціональний генератор інфранизької частоти на базі мікропроцесорної системи

Виконав:

студент групи РТЕ-4

П. Ю. Гайчук

Прийняв:

ас. каф. РЕПС

В. В. Мінзюк

Львів – 2003

Вступ

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

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

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


Технічне завдання

До виконання курсової роботи згідно варіанту 2 задано розробити апаратну частину та програму на мові асемблера для мікропроцесорної системи, що реалізує наступні функції:

- формує за допомогою ЦАП вихідну напругу, згідно з заданим законом

U(t) = А*exp(-а*t/Т) = 14*exp( – 2 t / 0.002) = 14 exp ( – t / 0.001)

- опитує клавіатуру, перша клавіша якої вибирає період повторення функції з ряду T, 2T, 4T, а друга задає амплітуду вихідної напруги з ряду А, А/2, А/4;

- виводить на два семисегментні індикатори інформацію про період повторення: цифри 1, 2, 4 відповідають Т, 2Т, 4Т, та про амплітуду: цифри 1, 2, 4, що відповідають А, А/2, А/4.

Крім того задано тип індикації – динамічна.

Задано наступні параметри сигналу:

- амплітуда А = 14 В;

- період Т = 2 мс.

- коректуючий коефіцієнт а = 2


1. Програмна реалізація функції часу

Для програмної реалізації функції часу нам необхідно визначити, які значення повинна набувати функція в окремі дискретні моменти часу, та код (восьмирозрядний двійковий, або десятковий від 0 до 255 що йому відповідає), що забезпечить на виході ЦАП значення функції найближче до необхідного. Номери відліків та відповідний для них код представлені (для випадку повної амплітуди та тривалості) у таблиці. Період дискретизації визначається після написання програми і визначення тривалості її виконання. З часу дискретизації визначається к-ть відліків.


0

255

1

243

2

231

3

219

4

209

5

199

6

189

7

180

8

171

9

163

10

155

11

147

12

140

13

133

14

127

15

120

16

115

17

109

18

104

19

99

20

94


Таблиця 1. Відліки.

2. Розробка апаратного забезпечення

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

Тому вибір МП-комплекту робився з міркувань мінімальної кількості ІМС (простоти апаратної реалізації) при достатній швидкодії і розумному співвідношені ціна/функціональність.


3. 1. Вибір МП комплекту

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

Виходячи із перелічених вимог вибираємо мікроконтролер Intel 8051. Мікроконтролер працює на частоті від 3,5 до 33МГц, тривалість машинного циклу – 12 тактів. Отже при тактовій частоті 24 МГц час між машинними циклами становить 0,5 мкс. В даному мікроконтролері команди виконуються за 1, 2 або 4 машинних цикли. Отже, при виборі періоду дискретизації 50 мкс МК виконує 100 машинних циклів. Звідси робимо висновок, що швидкодії мікроконтролера достатньо.

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

Внутрішня структура мікроконтролера представлена в додатку 1.

3.2. Вибір шинного інтерфейсу

При розробці апаратної частини з метою спрощення реалізації в якості зовнішніх шин будемо застосовувати не системні шини мікроконтроллера, а порти вводу-виводу.

Оскільки ми не застосовуємо зовнішні системні шини, то набір шин буде наступним:

– 8-ми розрядна шина даних (застосовується для передачі даних від МК до ЦАП);

– 8-х розрядна шина даних (застосовується для передачі даних на ІП);

– шина керування (застосовується для подачі сигналів І1, І2, та зчитування сигналів від кнопок: S1(„Т”), S2(„А”) та Rst).

1.3. Інтерфейс ОЗП та ПЗП

Оскільки для розробки ми вибрали МК, у складі якого є ПЗП і ОЗП (див. додаток 1), зовнішніх пристроїв ОЗП та ПЗП ми не використовуватимемо.

В даному МК області ПЗП і ОЗП розділені між собою, причому для них застосовуються різні методи адресації (рис. 2).

Рис. 2. Структурна схема МК.

В даній роботі, ми використовуватимо внутрішній ПЗП МК, РЗП та ОЗП.

3.4. Підключення ЦАП

Для реалізації портів вводу-виводу будемо застосовувати вбудовані порти МК. Для підєднання ЦАП використовується порт P2, до якого безпосредньо підєднано ІМС ЦАП.

3.5. Підключення іникаторів

Для реалізації індикації застосуємо ІМС АЛС324Б, які являють собою семисегментний індикатор.

Таким чином для індикації нам необхідно використати вихідний восьмирозрядний порт. Для цієї мети використаємо порт Р1. Для керування індикацією використаємо порт Р0.

3.6. Розрахунок вихідного підсилювача

Амплітуда вихідної напруги складає 14В. На виході ЦАП при вхідному коді 255 та опорній напрузі 14В буде напруга 14В. Тому вихідне підсилення не потрібне.

3.7. Остаточна електрична принципова схема

При складанні електричної принципової схеми враховуючи усі схемні рішення вибрані у попередніх пунктах одержуємо схему зображену у додатку 2.

4. Розробка програмної частини

Програмна частина складається з головної програми ініціалізації та підпрограми обробки переривання від таймера-лічильника Т0.

4.1. Головна програма ініціалізації

В цій частині в РЗП заносяться початкові значення, задається режим роботи таймера-лічильника та заносяться початкові значення періоду переривань, а також задається дозвіл на переривання тільки від таймера.

4.2. Підпрограма обробки переривання