Суматор частот

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

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык украинский
Дата добавления 24.11.2011
Размер файла 49,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

МIНIСТЕРСТВО ОСВIТИ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ

«ХАРКІВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ»

Кафедра обчислювальної технiки та програмування

ПОЯСНЮВАЛЬНА ЗАПИСКА

ДО КУРСОВОЇ РОБОТИ НА ТЕМУ

“СУМАТОР ЧАСТОТ”

Зав. кафедрою Домнін Ф.А.

Керівник проекту Даниленко О.Ф.

Проектував Замахаєв А.Є.

Виконавець (Замахаєв А.Є.)

Харків - 2003

Антонація

В данному альбомi зiбранi документи курсового проекту, в якому розгладаються питання, пов'язанi з розробкою пристрою суматора частот.

Розробка має навчальний характер.

ABSTRACT

This set of the documents are gathered the documents of project, into which are concedered questions, bound with the elaborating of the item of the addition frequency.

The elaborating has study character.

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

до курсового проекту на розробку

суматора частот

1. Найменувння - суматор частот

2. Призначення - вимірювання двох частот: послідовності імпульсів f1 = (0,1-3200) Гц та f2 = (0-3) Гц у вигляді пропорціонального аналогового сигналу (0Гц = 0В, 3Гц = 8В), обробки цих частот згідно з формулою

f вих.= f1/6 + f2 та видачі результату обробки сигналів на вихід у вигляді імпульсної послідовності та візуального контролю. Вимірювання повинні проводитись з точністю не меншою ніж 0,05%.

3. Склад вироба та технічні характеристики.

3.1 Використання мікросхем серії - РІС

4. Етап разробки - ескізний проект

5. Комплектність конструкторської документації - основний комплект конструкторської документації

6. Умови експлуатації

6.1 Діапазон температур від +10 до +35 С.

6.2 Відносна вологість повітря від 40 до 80 %.

6.3 Барометричний тиск від 84 до 107 кПа.

7. Комплект документів

7.1 Відомість проекту

7.2 Пояснювальна записка.

7.2.1 Титульний лист

7.2.2 Реферат

7.2.3 Зміст

7.2.4 Введення

7.2.5 Опис принципа дії

7.2.6 Заключення

Реферат

Цей документ являє собою пояснювальну записку обсягом листів. В пояснювальной записці приведено 2 таблиці, 10 рисунков, використано 15 джерел літератури.

Ключові слова: мікроконтролер, мікросхема, перетворювач рівня, світлодіод.

В даном курсовому проекті розроблено ”Суматор частот”.

0АПЗ37.089164.004ПЗ

Зміст

Перелік умовних позначень, скорочень, символів та спеціальних термінів

Вступ

1. Методика рішення задачі

2. Опис принципа дії та обґрунтування прийнятого рішення

2.1 Деталізація ТЗ та постановка задачі

2.2 Можливі варіанти рішення задачі

2.3 Вибір методу вимірювання частоти послідовності імпульсів

2.4 Розрахунок частоти дискретизуючих імпульсів

2.5 Обгрунтування вибору структурної схеми

3. Розробка функціональної схеми пристрою

4. Розрахунок струмів, що споживаються від джерел живлення

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

6. Отладка програмного забезпечення

Висновок

Перелік використованої літератури

Додаток 1. Схема алгоритму роботи пристрою

Додаток 2. Схема алгоритму розрахунку частоти F1

Додаток 3. Схема алгоритму розрахунку частоти F2

Додаток 4. Текст програми на асемблері

Додаток 5. Текст файла “Error.log”

Додаток 6. Текст файла “My_prog.xrf”

Перелік умовних позначень, скорочень, символів та спеціальних термінів

ІС - інформаційне сліво

ІТ - інтервальний таймер

КС - керуюче слово

МК - мікроконтролер

МКП - мікроконтролерний прилад

ОЗП - оперативний запам'ятовуючий пристрій

ОМК - однокристальний мікроконтролер

ПЗП - постійний запам'ятовуючий пристрій

ПЛ - програмована логіка

ПР - перетворювач рівня

РП - регістр прапорів

СК - сигнали керування

СС - сигнали стану

ТЛЛ - транзисторно-транзисторна логіка

Ф - формувач імпульсів

Вступ

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

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

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

1. Методика рішення задачі

Існує два принципово різних підходи до проектування цифрових пристроїв: використання принципу схемної логіки чи програмувальної логіки.

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

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

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

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

2. Опис принципа дії та обгрунтування прийнятого рішення

2.1 Деталізація ТЗ та постановка задачі

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

2.2 Можливі варіанти рішення задачі

Даний пристрій можна реалізувати декількома способами: за допомогою одного однокистального мікроконтролера з вбудованим АЦП; одного однокристального мікроконтролера та зовнишнього АЦП або інакше. Структурні схеми, що відповідають першим двом способам реалізації,

2.3 Вибір методу вимірювання частоти послідовності імпульсів

При вимірі частоти імпульсів можна заміряти період проходження імпульсів, чи кількість імпульсів, що прийшли на вхід пристрою за визначений період часу. При другому методі виміру час підрахунку імпульсів, що прийшли, повинен бути не менш періоду їхнього проходження, а для забезпечення необхідної точності виміру цей час повинен бути значно більше періоду проходження імпульсів. Згідно технічного завдання мінімальна частота послідовності вхідних імпульсів становить 0,1 Гц, тобто період їхнього проходження становить 10 сек. Для забезпечення необхідної похибки виміру необхідно було б вибрати період підрахунку імпульсів значно більшим 10 сек. У цьому випадку дискретність видачі вихідної інформації вимірником частоти (незалежно від частоти вхідної послідовності імпульсів) становила б не більш 0,1 сек -1.

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

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

При вимірі періоду Тх методом дискретного підрахунку можливі дві складові похибки: похибка міри і похибка порівняння.

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

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

Максимальне значення абсолютної похибки дискретності виміру періоду складає

?т = ± Тобр.,

тобто складає ± 1 молодшого розряду рахунка. Це значення не залежить від величини вимірюваного періоду Тх і визначається тільки одиницею дискретизації. Найбільша відносна похибка дискретності складає

?Т = ± (Тобр./ Тх) = ± (1/n)

і, звичайно, залежить від значення Тх.

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

2.4. Розрахунок частоти дискретизуючих імпульсів

Відповідно до технічного завдання відносна похибка виміру частоти ?F ? 0,05, що відповідає абсолютній похибці ?F ? F*?F, де F - вимірювана частота.

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

?F = 1/ (Т-?Т) - 1/ (Т+?Т) = 2 ?Т / (Т2-?Т2).

З нерівності F*?F ? 2 ?Т / (Т2-?Т2), зневажаючи членом ?Т2 через його малість, одержуємо ?F ? 2 ?Т / Т, де ?Т - абсолютна похибка виміру періоду імпульсів, Т - величина періоду.

Для забезпечення необхідної точності вимірів абсолютна похибка виміру періоду проходження імпульсів ?Т ? ?F /2F.

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

Визначимо частоту дискретизуючих імпульсів (f), що забезпечують задану точність виміру частоти (?F ? 0,05) при вимірі максимальної частоти послідовності вхідних імпульсів (F1=3200 Гц):

f = 2F / ?F = 2*3200 / 0,05 = 128 кгц.

Вибираємо частоту дискретизуючих імпульсів f = 150 кгц.

2.5 Обгрунтування вибору структурної схеми

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

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

Вибір одного однокистального мікроконтролера та зовнишнього АЦП забазпечує складнішу схему підключення та складніше програмне забезпечення. Інші варіанти побудови пристрою не розглядаються.

Зважаючи на те, що технічним завданням передбачається похибка вимірювань не більше 0,05%, то вибираємо варіант з одним однокистальним мікроконтролером з вбудованим АЦП, структурна схема якого приведена у 0АПЗ37.089164.004Е1.

3. Розробка функціональної схеми пристрою

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

Схема блока введення дискретних даних, а також формування імпульсної послідовності виконана на елементах DD1 та DD2. Для зменьшення похибки підрахунку імпульсів генератор імпульсів сінхронізації виконан на кварцевому резонаторі ZQ1 та елементах С1 та С2, схема скидання - внутрішнє скидання. Це зроблено для удешевшення пристрою.

Схема блока введення аналогових сигналів, а також перетворення рівня виконана по схемі дільника напруги на елементах R1 та R2.

Порти введення/виведення використовуються наступним чином: порт RA0 - для введення аналогового сигналу, порт RA1 - введення дискретного сигналу, вхід Fref використовується для введення опорної напруги АЦП. Порт RB1 використовується для виведення вихідного сигналу, порти RB2-RB7 використовуються для індикації наступним чином: з портів RB2-RB5 подаються сигнали на дешифратор вибору сегменту семисегментних індикаторів, а з портів RB6-RB7 подаються сигнали на дешифратор вибору одного з чотирьох кристалів семисегментних індикаторів.

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

Схема електрична функціональна приведена у 0АПЗ37.089164.004Е2.

4. Розрахунок струмів, що споживаються від джерел живлення

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

Струм, що споживається пристоєм взагалі, являє собою суму струмів, спожитих окремими елементів:

Iспож. = ? Iспож.ел.+5В = Iспож.PIC16C71 + Iспож.ЛИ1 + Iспож.ЛН1 + Iспож.ИД3 +

+ Iспож.ИД9 + 4*Iспож.АЛ321Б = 25 + 20 + 20 + 30 + 35 + 4*40 = 290 [ma]

Таким чином, по напрузі +5В пристрій споживає струм не більше 300 ma.

Потужність, що споживається пристроєм, розраховується по формулі:

P+5В = 5 * Iспож.+5В = 5 * 300 = 1500 [мВт] = 1,5 [Вт]

Таким чином, потужність, що споживається пристроєм від джерела живлення, складає не більше 1,5 Вт.

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

Програмне забезпечення пристрою повинно виконувати наступні функції: введення дискретного сигналу; введення аналогового сигналу; обробка цих сигналів згідно з формулою; видача результату обробки сигналів на вихід у вигляді імпульсної послідовності; індикація за допомогою семисегментних індикаторів. Схема алгоритму програми приведена у Додатку 1

Програма ініціалізації прочинається з адреси 0х00 та виконує:

- очистку ОЗП МК;

- ініціалізацію АЦП;

- ініціалізацію системи переривань МК.

Основна програма роботи починається з адреси 0х100.

В неперервному циклі виконуються наступні процедури:

­ введення послідовності імпульсів;

­ введення аналогового сигналу;

­ виконання розрахунків;

­ виведення послідовності імпульсів;

­ індикація.

Для підрахунку частоти дискретних імпульсів заміряється період слудування імпульсів в послідовності. При цьому використовуються 2 8-розрядних регістра RG1 та RG2, які в сумі складають 16-розрядний регістр. Схема алгоритму перетворення частоти F1 приведена у Додатку 2.

Після цього вводиться аналоговий сигнал: спочатку конфігурується АЦП, потім дається дозвіл на переривання от АЦП, далі виконується запуск АЦП та перетворення аналогового сигналу у цифровий. Схема алгоритму перетворення частоти F2 приведена у Додатку 3.

Далі обидві частоти складаються та перетворюються в двійково-десяткове число для виведення на семисегментні індикатори.

Після індикації здійснюється виведення послідовності імпульсів.

При цьому також використовуються 2 8-розрядних регістра NM та NM1, які в сумі складають 16-розрядний регістр.

Повністю текст програми приведено у Додатку 4.

6. Отладка програмного забезпечення

Розробка, отладка та тестування программы виконувалося за допомогою пакету MPASM. За допомогою цього пакету була отлагоджена керуюча програма.

Результати отладки програми приведені у Додатках 5-6.

Висновок

В даному курсовому проекті проведена розробка пристрою “Суматор частот” з наступними характеристиками:

- частота послідовності імпульсів f1на вході пристрою 0,1 - 3200Гц;

- амплітуда пропорціонального аналогового сигналу f2 на вході пристрою 0 - 8В;

- формула обробки цих сигналів: f вих.= f1/6 + f2;

- частота послідовності імпульсів на виході пристрою 0,1 - 3203Гц;

- похибка вимірювань - не меньш ніж 0,05%

- індикація результатів вимірювань - на семисегментних індикаторах;

- потужність, що споживається від джерел живлення - не більше 1,5 Вт.

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

Розробка має навчальний характер.

Перелік використаної літератури

1. Е.П.Угрюмов "Проектирование элементов и узлов ЭВМ". -М.: Высш. шк., 1987.-318с.

2. Г.Р.Аванесян, В.П.Левшин "Интегральные микросхемы ТТЛ, ТТЛШ". Справочник. - М.: Машиностроение., 1993.

3. С.А.Бирюков "Применение интегральных микросхем серии ТТЛ". - М. 1992.

4. Вычислительные устройства на микросхемах: Справочник / В.И.Корнейчук, В.П.Тарасенко, Ю.Н.Мишинский. - К.:Техніка, 1986. -264с. ил.

5. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 1. Особливості проектування МКП та архітектура мікроконтролерів PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-120 с.-Рос.мовою.

6. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 2. Розробка та відлагодження програм для ОМК PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-127 с.-Рос.мовою.

7. Современные микроконтроллеры: архитектура, средства проектирования, примеры применения, ресурсы сети Интернет. Под ред.Коршуна И.В.; Составление, перевод с английского и литературная обработка Горбунова Б.Б. - Издательство «Аким», 1998.-227 с. с ил.

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

9. Корячко В.П. Микропроцессоры и микроЭВМ в радиоэлектронных средствах. -М.: Высш.шк., 1990.- 407 с., ил.

10. Однокристальные микроконтроллеры Microchip: PIC 16C5X. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1996.- 120 с., ил.

11. Однокристальные микроконтроллеры Microchip: PIC 16C84. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1997.- 120 с., ил.

12. PIC 16/17 Microcontroller Data Book. Microchip Technolology Inc., 1996 October. - 640 с. ил.

13. Микроконтроллеры. Выпуск 1. Однокристальные микроконтроллеры PIC17C4X, PIC17C5X, M3820. - М.: ДОДЭКА, 1998, 384 с.

14. MPASM USER'S GUIDE with MPLINK and MPLIB. Microchip Technology Inc., 1997. - 155 с.

15. http://www.Microchip.com

Додаток 1. Схема алгоритмуроботи пристрою

ТАК

НІ

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 2. Схема алгоритму розрахунку частоти F1.

ні

так

ні

так

ні

так

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 3. Схема алгоритму розрахунку частоти F2.

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 4. Текст програми на асемблері

;Текст программы

LIST p=16F71

title 'A1'

; Программные регистры:

STATUS equ 03

TRISA equ 85

TRISB equ 86

PORTA equ 05

PORTB equ 06

ADCON0 equ 07 ; Регистр управления АЦП

ADRES equ 09 ; Регистр результата преобразования АЦП

INTCON equ 0B ; Регистр управления прерываниями

Dig_1 equ 20 ; Значение тысяч для индикации.

Dig_2 equ 21 ; Значение сотен для индикации.

Dig_3 equ 22 ; Значение десятков для индикации.

Dig_4 equ 23 ; Значение единиц для индикации.

rg1 equ 10 ; Старший байт значения счетчика.

rg2 equ 11 ; Младший байт значения счетчика.

ctr equ 12 ; Счетчик циклов.

dctr1 equ 13 ; счетчик для задержки

dctr2 equ 14 ; счетчик для задержки

U equ 15 ; Десятичное значение единиц.

D equ 16 ; Десятичное значение десятков.

H equ 17 ; Десятичное значение сотен.

M equ 18 ; Десятичное значение тысяч.

PCLATH equ 24 ; Служебные переменные

PCL equ 25

RP0 equ 26

ost equ 27

adr equ 27

mn equ 28

mn1 equ 29

nom equ 30

PR0 equ 31

C equ 32

Z equ 33

org 0x00 ; Вектор сброса.

goto Start

org 0x10

segment ; Таблица преобразования DEC -> семисегментный код.

CLRF PCLATH

ADDWF PCL, F

dt 03F, 006, 05B, 04F, 066, 06D, 07D, 007, 07F, 06F

Start ; Начальная инициализация.

clrf PORTA ; Обнулить порт А.

clrf PORTB ; Обнулить порт В.

bsf STATUS,RP0 ; Обращение к банку 1.

movlw b'01000000'

movwf TRISA ; RA1 - вход

movlw b'00000000'

movwf TRISB ; RB0 - RB7 выходы

bcf STATUS,RP0 ; Обращение к банку 0.

clrf ADCON0 ; Установка порта А0 как аналогового

bcf STATUS,PR0

loop00 clrf Dig_1 ; очистка индикатора

clrf Dig_2

clrf Dig_3

clrf Dig_4

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

; Основной цикл программы.

; Ввод дискретных сигналов

loop0 btfsc PORTA, 1 ; ожидание 1 импульса

goto loop0

clrf rg1 ; обнуление счетчика

clrf rg2

movwf ctr

loop1 call delay ; задержка

incf rg1,1 ; инкремент RG1

btfsc INTCON, rg1 ; проверка переполнения

incf rg2,1 ; инкремент RG2

btfsc PORTA, 1 ; ожидание 2 импульса

goto loop1

; ввод аналоговых сигналов

movlw B'11000000' ; Разрешить прерывания от АЦП

movwf INTCON

movlw 0C1H ; Синхронизация АЦП от собств.генератора

movwf ADCON0 ; Разрешить работу АЦП

bcf ADCON0,3 ; Установить входной канал AIN0

bsf ADCON0,2 ; Начать процесс преобразования

a1 btfss ADCON0,2 ; Ждать окончания преобразования

goto a1

bcf ADCON0,1 ; Сброс флага окончания преобразования

call div ; Деление на 6 и сложение частот

call calc ; Вычисление значения для индикации.

call refresh ; Индикация

call out ; Вывод частоты импульсов

goto loop0 ; переход на начало цикла

; Процедура задержки

delay

movlw .06

movwf dctr1

del2 decfsz dctr1, F

goto del2

return

; Процедура индикации.

refresh

movlw 0x0F

movwf PORTB ; погасить все индикаторы

movf Dig_1, W ; Значение тысяч для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 1

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 1

movf Dig_2, W ; Значение сотен для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,7 ; Активизировать индикатор 2

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,7 ; Отключить индикатор 2

movf Dig_3, W ; Значение десятков для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

bcf PORTB,6 ; Активизировать индикатор 3

bcf PORTB,7

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 3

bsf PORTB,7

movf Dig_4, W ; Значение единиц результата для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

call delay ; Задержка времени для отображения одного разряда

return

; Процедура вычисления значений для индикации

calc ; Преобразование формата: HEX -> DEC.

calc3 movlw 0x03 ; определение тысяч

subwf rg1, W

btfss STATUS, C

goto calc1

btfss STATUS, Z

goto calc2

movlw 0xE8

subwf rg2, W

btfss STATUS, C

goto calc1

calc2

movlw 0xE8

subwf rg1, F

btfss STATUS, C

decf rg2, F

movlw 0x03

subwf rg2, F

incf M, F

goto calc3

calc1

movlw .100 ; определение сотен

subwf rg1, W

btfsc STATUS, C

goto calc22

movf rg2, W

btfsc STATUS, Z

goto calc12

calc22

movlw .100

subwf rg1, F

btfss STATUS, C

decf rg2, F

incf H, F

goto calc1

calc12

movlw .10 ; определение десятков

subwf rg1, W

btfss STATUS, C

goto calc13

movlw .10

subwf rg2, F

incf D, F

goto calc12

calc13

movf rg1, W ; определение единиц

movwf U

movf M, W ; формирование тысяч для инидикации

movwf Dig_1

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

movf H, W ; формирование сотен для инидикации

movwf Dig_2

movf D, W ; формирование десятков для инидикации

movwf Dig_3

movf U, W ; формирование единиц для инидикации

movwf Dig_4

return

Процедура деления на 6 и сложения частот

div: movlw 2

clrf ost

movwf rg1

pb1:

swapf rg1,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn = результат ost = остаток

movlw 0x0f

andwf adr,1

swapf mn,0

andlw 0xf0

iorwf adr,1

pb2:

movf rg2,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn1 = результат ost = остаток

movlw 0xf0

andwf adr,1

movf mn1,0

iorwf adr,1

decfsz nom,1

goto pb1

movf mn,w ; сложение частот

addwf ADRES,1

return

; Процедура вывода частоты импульсов

out:

bsf PORTB,1 ; Выдача импульса

call delay

bcf PORTB,1

m1 decfsz mn1 ; Декремент mn1

call delay

goto m1 ; Если <>0, то переход на m1

decfsz mn ; Декремент mn

goto m1

return

END

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

Висновок

В даному курсовому проекті проведена розробка пристрою “Суматор частот” з наступними характеристиками:

- частота послідовності імпульсів f1на вході пристрою 0,1 - 3200Гц;

- амплітуда пропорціонального аналогового сигналу f2 на вході пристрою 0 - 8В;

- формула обробки цих сигналів: f вих.= f1/6 + f2;

- частота послідовності імпульсів на виході пристрою 0,1 - 3203Гц;

- похибка вимірювань - не меньш ніж 0,05%

- індикація результатів вимірювань - на семисегментних індикаторах;

- потужність, що споживається від джерел живлення - не більше 1,5 Вт.

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

Розробка має навчальний характер.

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

Перелік використаної літератури

1. Е.П.Угрюмов "Проектирование элементов и узлов ЭВМ". -М.: Высш. шк., 1987.-318с.

2. Г.Р.Аванесян, В.П.Левшин "Интегральные микросхемы ТТЛ, ТТЛШ". Справочник. - М.: Машиностроение., 1993.

3. С.А.Бирюков "Применение интегральных микросхем серии ТТЛ". - М. 1992.

4. Вычислительные устройства на микросхемах: Справочник / В.И.Корнейчук, В.П.Тарасенко, Ю.Н.Мишинский. - К.:Техніка, 1986. -264с. ил.

5. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 1. Особливості проектування МКП та архітектура мікроконтролерів PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-120 с.-Рос.мовою.

6. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 2. Розробка та відлагодження програм для ОМК PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-127 с.-Рос.мовою.

7. Современные микроконтроллеры: архитектура, средства проектирования, примеры применения, ресурсы сети Интернет. Под ред.Коршуна И.В.; Составление, перевод с английского и литературная обработка Горбунова Б.Б. - Издательство «Аким», 1998.-227 с. с ил.

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

9. Корячко В.П. Микропроцессоры и микроЭВМ в радиоэлектронных средствах. -М.: Высш.шк., 1990.- 407 с., ил.

10. Однокристальные микроконтроллеры Microchip: PIC 16C5X. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1996.- 120 с., ил.

11. Однокристальные микроконтроллеры Microchip: PIC 16C84. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1997.- 120 с., ил.

12. PIC 16/17 Microcontroller Data Book. Microchip Technolology Inc., 1996 October. - 640 с. ил.

13. Микроконтроллеры. Выпуск 1. Однокристальные микроконтроллеры PIC17C4X, PIC17C5X, M3820. - М.: ДОДЭКА, 1998, 384 с.

14. MPASM USER'S GUIDE with MPLINK and MPLIB. Microchip Technology Inc., 1997. - 155 с.

15. http://www.Microchip.com

Додаток 1. Схема алгоритмуроботи пристрою

ТАК

НІ

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 2. Схема алгоритму розрахунку частоти F1.

ні

так

ні

так

ні

так

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 3. Схема алгоритму розрахунку частоти F2.

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 4. Текст програми на асемблері

;Текст программы

LIST p=16F71

title 'A1'

; Программные регистры:

STATUS equ 03

TRISA equ 85

TRISB equ 86

PORTA equ 05

PORTB equ 06

ADCON0 equ 07 ; Регистр управления АЦП

ADRES equ 09 ; Регистр результата преобразования АЦП

INTCON equ 0B ; Регистр управления прерываниями

Dig_1 equ 20 ; Значение тысяч для индикации.

Dig_2 equ 21 ; Значение сотен для индикации.

Dig_3 equ 22 ; Значение десятков для индикации.

Dig_4 equ 23 ; Значение единиц для индикации.

rg1 equ 10 ; Старший байт значения счетчика.

rg2 equ 11 ; Младший байт значения счетчика.

ctr equ 12 ; Счетчик циклов.

dctr1 equ 13 ; счетчик для задержки

dctr2 equ 14 ; счетчик для задержки

U equ 15 ; Десятичное значение единиц.

D equ 16 ; Десятичное значение десятков.

H equ 17 ; Десятичное значение сотен.

M equ 18 ; Десятичное значение тысяч.

PCLATH equ 24 ; Служебные переменные

PCL equ 25

RP0 equ 26

ost equ 27

adr equ 27

mn equ 28

mn1 equ 29

nom equ 30

PR0 equ 31

C equ 32

Z equ 33

org 0x00 ; Вектор сброса.

goto Start

org 0x10

segment ; Таблица преобразования DEC -> семисегментный код.

CLRF PCLATH

ADDWF PCL, F

dt 03F, 006, 05B, 04F, 066, 06D, 07D, 007, 07F, 06F

Start ; Начальная инициализация.

clrf PORTA ; Обнулить порт А.

clrf PORTB ; Обнулить порт В.

bsf STATUS,RP0 ; Обращение к банку 1.

movlw b'01000000'

movwf TRISA ; RA1 - вход

movlw b'00000000'

movwf TRISB ; RB0 - RB7 выходы

bcf STATUS,RP0 ; Обращение к банку 0.

clrf ADCON0 ; Установка порта А0 как аналогового

bcf STATUS,PR0

oop00 clrf Dig_1 ; очистка индикатора

clrf Dig_2

clrf Dig_3

clrf Dig_4

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

; Основной цикл программы.

; Ввод дискретных сигналов

loop0 btfsc PORTA, 1 ; ожидание 1 импульса

goto loop0

clrf rg1 ; обнуление счетчика

clrf rg2

movwf ctr

loop1 call delay ; задержка

incf rg1,1 ; инкремент RG1

btfsc INTCON, rg1 ; проверка переполнения

incf rg2,1 ; инкремент RG2

btfsc PORTA, 1 ; ожидание 2 импульса

goto loop1

; ввод аналоговых сигналов

movlw B'11000000' ; Разрешить прерывания от АЦП

movwf INTCON

movlw 0C1H ; Синхронизация АЦП от собств.генератора

movwf ADCON0 ; Разрешить работу АЦП

bcf ADCON0,3 ; Установить входной канал AIN0

bsf ADCON0,2 ; Начать процесс преобразования

a1 btfss ADCON0,2 ; Ждать окончания преобразования

goto a1

bcf ADCON0,1 ; Сброс флага окончания преобразования

call div ; Деление на 6 и сложение частот

call calc ; Вычисление значения для индикации.

call refresh ; Индикация

call out ; Вывод частоты импульсов

goto loop0 ; переход на начало цикла

; Процедура задержки

delay

movlw .06

movwf dctr1

del2 decfsz dctr1, F

goto del2

return

; Процедура индикации.

refresh

movlw 0x0F

movwf PORTB ; погасить все индикаторы

movf Dig_1, W ; Значение тысяч для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 1

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 1

movf Dig_2, W ; Значение сотен для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,7 ; Активизировать индикатор 2

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,7 ; Отключить индикатор 2

movf Dig_3, W ; Значение десятков для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

bcf PORTB,6 ; Активизировать индикатор 3

bcf PORTB,7

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 3

bsf PORTB,7

movf Dig_4, W ; Значение единиц результата для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

call delay ; Задержка времени для отображения одного разряда

return

; Процедура вычисления значений для индикации

calc ; Преобразование формата: HEX -> DEC.

calc3 movlw 0x03 ; определение тысяч

subwf rg1, W

btfss STATUS, C

goto calc1

btfss STATUS, Z

goto calc2

movlw 0xE8

subwf rg2, W

btfss STATUS, C

goto calc1

calc2

movlw 0xE8

subwf rg1, F

btfss STATUS, C

decf rg2, F

movlw 0x03

subwf rg2, F

incf M, F

goto calc3

calc1

movlw .100 ; определение сотен

subwf rg1, W

btfsc STATUS, C

goto calc22

movf rg2, W

btfsc STATUS, Z

goto calc12

calc22

movlw .100

subwf rg1, F

btfss STATUS, C

decf rg2, F

incf H, F

goto calc1

calc12

movlw .10 ; определение десятков

subwf rg1, W

btfss STATUS, C

goto calc13

movlw .10

subwf rg2, F

incf D, F

goto calc12

calc13

movf rg1, W ; определение единиц

movwf U

movf M, W ; формирование тысяч для инидикации

movwf Dig_1

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

movf H, W ; формирование сотен для инидикации

movwf Dig_2

movf D, W ; формирование десятков для инидикации

movwf Dig_3

movf U, W ; формирование единиц для инидикации

movwf Dig_4

return

Процедура деления на 6 и сложения частот

div: movlw 2

clrf ost

movwf rg1

pb1:

swapf rg1,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn = результат ost = остаток

movlw 0x0f

andwf adr,1

swapf mn,0

andlw 0xf0

iorwf adr,1

pb2:

movf rg2,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn1 = результат ost = остаток

movlw 0xf0

andwf adr,1

movf mn1,0

iorwf adr,1

decfsz nom,1

goto pb1

movf mn,w ; сложение частот

addwf ADRES,1

return

; Процедура вывода частоты импульсов

out:

bsf PORTB,1 ; Выдача импульса

call delay

bcf PORTB,1

m1 decfsz mn1 ; Декремент mn1

call delay

goto m1 ; Если <>0, то переход на m1

decfsz mn ; Декремент mn

goto m1

return

END

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

Висновок

В даному курсовому проекті проведена розробка пристрою “Суматор частот” з наступними характеристиками:

- частота послідовності імпульсів f1на вході пристрою 0,1 - 3200Гц;

- амплітуда пропорціонального аналогового сигналу f2 на вході пристрою 0 - 8В;

- формула обробки цих сигналів: f вих.= f1/6 + f2;

- частота послідовності імпульсів на виході пристрою 0,1 - 3203Гц;

- похибка вимірювань - не меньш ніж 0,05%

- індикація результатів вимірювань - на семисегментних індикаторах;

- потужність, що споживається від джерел живлення - не більше 1,5 Вт.

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

Розробка має навчальний характер.

Лист

0АПЗ37.89164.004ПЗ

Ізм Лист № документа Підпис Дата

частота суматор метод струм

Перелік використаної літератури

1. Е.П.Угрюмов "Проектирование элементов и узлов ЭВМ". -М.: Высш. шк., 1987.-318с.

2. Г.Р.Аванесян, В.П.Левшин "Интегральные микросхемы ТТЛ, ТТЛШ". Справочник. - М.: Машиностроение., 1993.

3. С.А.Бирюков "Применение интегральных микросхем серии ТТЛ". - М. 1992.

4. Вычислительные устройства на микросхемах: Справочник / В.И.Корнейчук, В.П.Тарасенко, Ю.Н.Мишинский. - К.:Техніка, 1986. -264с. ил.

5. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 1. Особливості проектування МКП та архітектура мікроконтролерів PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-120 с.-Рос.мовою.

6. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 2. Розробка та відлагодження програм для ОМК PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-127 с.-Рос.мовою.

7. Современные микроконтроллеры: архитектура, средства проектирования, примеры применения, ресурсы сети Интернет. Под ред.Коршуна И.В.; Составление, перевод с английского и литературная обработка Горбунова Б.Б. - Издательство «Аким», 1998.-227 с. с ил.

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

9. Корячко В.П. Микропроцессоры и микроЭВМ в радиоэлектронных средствах. -М.: Высш.шк., 1990.- 407 с., ил.

10. Однокристальные микроконтроллеры Microchip: PIC 16C5X. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1996.- 120 с., ил.

11. Однокристальные микроконтроллеры Microchip: PIC 16C84. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1997.- 120 с., ил.

12. PIC 16/17 Microcontroller Data Book. Microchip Technolology Inc., 1996 October. - 640 с. ил.

13. Микроконтроллеры. Выпуск 1. Однокристальные микроконтроллеры PIC17C4X, PIC17C5X, M3820. - М.: ДОДЭКА, 1998, 384 с.

14. MPASM USER'S GUIDE with MPLINK and MPLIB. Microchip Technology Inc., 1997. - 155 с.

15. http://www.Microchip.com

Додаток 1. Схема алгоритмуроботи пристрою

ТАК

НІ

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 2. Схема алгоритму розрахунку частоти F1.

ні

так

ні

так

ні

так

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 3. Схема алгоритму розрахунку частоти F2.

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 4. Текст програми на асемблері

;Текст программы

LIST p=16F71

title 'A1'

; Программные регистры:

STATUS equ 03

TRISA equ 85

TRISB equ 86

PORTA equ 05

PORTB equ 06

ADCON0 equ 07 ; Регистр управления АЦП

ADRES equ 09 ; Регистр результата преобразования АЦП

INTCON equ 0B ; Регистр управления прерываниями

Dig_1 equ 20 ; Значение тысяч для индикации.

Dig_2 equ 21 ; Значение сотен для индикации.

Dig_3 equ 22 ; Значение десятков для индикации.

Dig_4 equ 23 ; Значение единиц для индикации.

rg1 equ 10 ; Старший байт значения счетчика.

rg2 equ 11 ; Младший байт значения счетчика.

ctr equ 12 ; Счетчик циклов.

dctr1 equ 13 ; счетчик для задержки

dctr2 equ 14 ; счетчик для задержки

U equ 15 ; Десятичное значение единиц.

D equ 16 ; Десятичное значение десятков.

H equ 17 ; Десятичное значение сотен.

M equ 18 ; Десятичное значение тысяч.

PCLATH equ 24 ; Служебные переменные

PCL equ 25

RP0 equ 26

ost equ 27

adr equ 27

mn equ 28

mn1 equ 29

nom equ 30

PR0 equ 31

C equ 32

Z equ 33

org 0x00 ; Вектор сброса.

goto Start

org 0x10

segment ; Таблица преобразования DEC -> семисегментный код.

CLRF PCLATH

ADDWF PCL, F

dt 03F, 006, 05B, 04F, 066, 06D, 07D, 007, 07F, 06F

Start ; Начальная инициализация.

clrf PORTA ; Обнулить порт А.

clrf PORTB ; Обнулить порт В.

bsf STATUS,RP0 ; Обращение к банку 1.

movlw b'01000000'

movwf TRISA ; RA1 - вход

movlw b'00000000'

movwf TRISB ; RB0 - RB7 выходы

bcf STATUS,RP0 ; Обращение к банку 0.

clrf ADCON0 ; Установка порта А0 как аналогового

bcf STATUS,PR0

loop00 clrf Dig_1 ; очистка индикатора

clrf Dig_2

clrf Dig_3

clrf Dig_4

; Основной цикл программы.

; Ввод дискретных сигналов

loop0 btfsc PORTA, 1 ; ожидание 1 импульса

goto loop0

clrf rg1 ; обнуление счетчика

clrf rg2

movwf ctr

loop1 call delay ; задержка

incf rg1,1 ; инкремент RG1

btfsc INTCON, rg1 ; проверка переполнения

incf rg2,1 ; инкремент RG2

btfsc PORTA, 1 ; ожидание 2 импульса

goto loop1

; ввод аналоговых сигналов

movlw B'11000000' ; Разрешить прерывания от АЦП

movwf INTCON

movlw 0C1H ; Синхронизация АЦП от собств.генератора

movwf ADCON0 ; Разрешить работу АЦП

bcf ADCON0,3 ; Установить входной канал AIN0

bsf ADCON0,2 ; Начать процесс преобразования

a1 btfss ADCON0,2 ; Ждать окончания преобразования

goto a1

bcf ADCON0,1 ; Сброс флага окончания преобразования

call div ; Деление на 6 и сложение частот

call calc ; Вычисление значения для индикации.

call refresh ; Индикация

call out ; Вывод частоты импульсов

goto loop0 ; переход на начало цикла

; Процедура задержки

delay

movlw .06

movwf dctr1

del2 decfsz dctr1, F

goto del2

return

; Процедура индикации.

refresh

movlw 0x0F

movwf PORTB ; погасить все индикаторы

movf Dig_1, W ; Значение тысяч для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 1

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 1

movf Dig_2, W ; Значение сотен для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,7 ; Активизировать индикатор 2

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,7 ; Отключить индикатор 2

movf Dig_3, W ; Значение десятков для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 3

bcf PORTB,7

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 3

bsf PORTB,7

movf Dig_4, W ; Значение единиц результата для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

call delay ; Задержка времени для отображения одного разряда

return

; Процедура вычисления значений для индикации

calc ; Преобразование формата: HEX -> DEC.

calc3 movlw 0x03 ; определение тысяч

subwf rg1, W

btfss STATUS, C

goto calc1

btfss STATUS, Z

goto calc2

movlw 0xE8

subwf rg2, W

btfss STATUS, C

goto calc1

calc2

movlw 0xE8

subwf rg1, F

btfss STATUS, C

decf rg2, F

movlw 0x03

subwf rg2, F

incf M, F

goto calc3

calc1

movlw .100 ; определение сотен

subwf rg1, W

btfsc STATUS, C

goto calc22

movf rg2, W

btfsc STATUS, Z

goto calc12

calc22

movlw .100

subwf rg1, F

btfss STATUS, C

decf rg2, F

incf H, F

goto calc1

calc12

movlw .10 ; определение десятков

subwf rg1, W

btfss STATUS, C

goto calc13

movlw .10

subwf rg2, F

incf D, F

goto calc12

calc13

movf rg1, W ; определение единиц

movwf U

movf M, W ; формирование тысяч для инидикации

movwf Dig_1

movf H, W ; формирование сотен для инидикации

movwf Dig_2

movf D, W ; формирование десятков для инидикации

movwf Dig_3

movf U, W ; формирование единиц для инидикации

movwf Dig_4

return

Процедура деления на 6 и сложения частот

div: movlw 2

clrf ost

movwf rg1

pb1:

swapf rg1,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn = результат ost = остаток

movlw 0x0f

andwf adr,1

swapf mn,0

andlw 0xf0

iorwf adr,1

pb2:

movf rg2,0

andlw 0x0f

swapf ost,1

iorwf ost,1 ; ost - число (делимое) 2 - hex знака

; mn1 = результат ost = остаток

movlw 0xf0

andwf adr,1

movf mn1,0

iorwf adr,1

decfsz nom,1

goto pb1

movf mn,w ; сложение частот

addwf ADRES,1

return

; Процедура вывода частоты импульсов

out:

bsf PORTB,1 ; Выдача импульса

call delay

bcf PORTB,1

m1 decfsz mn1 ; Декремент mn1

call delay

goto m1 ; Если <>0, то переход на m1

decfsz mn ; Декремент mn

goto m1

return

END

Висновок

В даному курсовому проекті проведена розробка пристрою “Суматор частот” з наступними характеристиками:

- частота послідовності імпульсів f1на вході пристрою 0,1 - 3200Гц;

- амплітуда пропорціонального аналогового сигналу f2 на вході пристрою 0 - 8В;

- формула обробки цих сигналів: f вих.= f1/6 + f2;

- частота послідовності імпульсів на виході пристрою 0,1 - 3203Гц;

- похибка вимірювань - не меньш ніж 0,05%

- індикація результатів вимірювань - на семисегментних індикаторах;

- потужність, що споживається від джерел живлення - не більше 1,5 Вт.

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

Розробка має навчальний характер.

Перелік використаної літератури

1. Е.П.Угрюмов "Проектирование элементов и узлов ЭВМ". -М.: Высш. шк., 1987.-318с.

2. Г.Р.Аванесян, В.П.Левшин "Интегральные микросхемы ТТЛ, ТТЛШ". Справочник. - М.: Машиностроение., 1993.

3. С.А.Бирюков "Применение интегральных микросхем серии ТТЛ". - М. 1992.

4. Вычислительные устройства на микросхемах: Справочник / В.И.Корнейчук, В.П.Тарасенко, Ю.Н.Мишинский. - К.:Техніка, 1986. -264с. ил.

5. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 1. Особливості проектування МКП та архітектура мікроконтролерів PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-120 с.-Рос.мовою.

6. В.В.Скородєлов. Проектування пристроїв на однокристалевих мікроконтролерах з RISC-архітектурою. В 2 кн. Кн. 2. Розробка та відлагодження програм для ОМК PIC: Навчальний посібник.-Харків: ХДПУ, 1999.-127 с.-Рос.мовою.

7. Современные микроконтроллеры: архитектура, средства проектирования, примеры применения, ресурсы сети Интернет. Под ред.Коршуна И.В.; Составление, перевод с английского и литературная обработка Горбунова Б.Б. - Издательство «Аким», 1998.-227 с. с ил.

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

9. Корячко В.П. Микропроцессоры и микроЭВМ в радиоэлектронных средствах. -М.: Высш.шк., 1990.- 407 с., ил.

10. Однокристальные микроконтроллеры Microchip: PIC 16C5X. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1996.- 120 с., ил.

11. Однокристальные микроконтроллеры Microchip: PIC 16C84. /Пер. с англ. //Под ред. А.Н.Владимирова. - Рига.: ORMIX, 1997.- 120 с., ил.

12. PIC 16/17 Microcontroller Data Book. Microchip Technolology Inc., 1996 October. - 640 с. ил.

13. Микроконтроллеры. Выпуск 1. Однокристальные микроконтроллеры PIC17C4X, PIC17C5X, M3820. - М.: ДОДЭКА, 1998, 384 с.

14. MPASM USER'S GUIDE with MPLINK and MPLIB. Microchip Technology Inc., 1997. - 155 с.

15. http://www.Microchip.com

Додаток 1. Схема алгоритмуроботи пристрою

ТАК

НІ

Додаток 2. Схема алгоритму розрахунку частоти F1.

ні

так

ні

так

ні

так

Додаток 3. Схема алгоритму розрахунку частоти F2.

Лист

АПЗ37.089164.004ПЗ

Изм Лист № документа Підпис Дата

Додаток 4. Текст програми на асемблері

;Текст программы

LIST p=16F71

title 'A1'

; Программные регистры:

STATUS equ 03

TRISA equ 85

TRISB equ 86

PORTA equ 05

PORTB equ 06

ADCON0 equ 07 ; Регистр управления АЦП

ADRES equ 09 ; Регистр результата преобразования АЦП

INTCON equ 0B ; Регистр управления прерываниями

Dig_1 equ 20 ; Значение тысяч для индикации.

Dig_2 equ 21 ; Значение сотен для индикации.

Dig_3 equ 22 ; Значение десятков для индикации.

Dig_4 equ 23 ; Значение единиц для индикации.

rg1 equ 10 ; Старший байт значения счетчика.

rg2 equ 11 ; Младший байт значения счетчика.

ctr equ 12 ; Счетчик циклов.

dctr1 equ 13 ; счетчик для задержки

dctr2 equ 14 ; счетчик для задержки

U equ 15 ; Десятичное значение единиц.

D equ 16 ; Десятичное значение десятков.

H equ 17 ; Десятичное значение сотен.

M equ 18 ; Десятичное значение тысяч.

PCLATH equ 24 ; Служебные переменные

PCL equ 25

RP0 equ 26

ost equ 27

adr equ 27

mn equ 28

mn1 equ 29

nom equ 30

PR0 equ 31

C equ 32

Z equ 33

org 0x00 ; Вектор сброса.

goto Start

org 0x10

segment ; Таблица преобразования DEC -> семисегментный код.

CLRF PCLATH

ADDWF PCL, F

dt 03F, 006, 05B, 04F, 066, 06D, 07D, 007, 07F, 06F

Start ; Начальная инициализация.

clrf PORTA ; Обнулить порт А.

clrf PORTB ; Обнулить порт В.

bsf STATUS,RP0 ; Обращение к банку 1.

movlw b'01000000'

movwf TRISA ; RA1 - вход

movlw b'00000000'

movwf TRISB ; RB0 - RB7 выходы

bcf STATUS,RP0 ; Обращение к банку 0.

clrf ADCON0 ; Установка порта А0 как аналогового

bcf STATUS,PR0

loop00 clrf Dig_1 ; очистка индикатора

clrf Dig_2

clrf Dig_3

clrf Dig_4

; Основной цикл программы.

; Ввод дискретных сигналов

loop0 btfsc PORTA, 1 ; ожидание 1 импульса

goto loop0

clrf rg1 ; обнуление счетчика

clrf rg2

movwf ctr

loop1 call delay ; задержка

incf rg1,1 ; инкремент RG1

btfsc INTCON, rg1 ; проверка переполнения

incf rg2,1 ; инкремент RG2

btfsc PORTA, 1 ; ожидание 2 импульса

goto loop1

; ввод аналоговых сигналов

movlw B'11000000' ; Разрешить прерывания от АЦП

movwf INTCON

movlw 0C1H ; Синхронизация АЦП от собств.генератора

movwf ADCON0 ; Разрешить работу АЦП

bcf ADCON0,3 ; Установить входной канал AIN0

bsf ADCON0,2 ; Начать процесс преобразования

a1 btfss ADCON0,2 ; Ждать окончания преобразования

goto a1

bcf ADCON0,1 ; Сброс флага окончания преобразования

call div ; Деление на 6 и сложение частот

call calc ; Вычисление значения для индикации.

call refresh ; Индикация

call out ; Вывод частоты импульсов

goto loop0 ; переход на начало цикла

; Процедура задержки

delay

movlw .06

movwf dctr1

del2 decfsz dctr1, F

goto del2

return

Процедура индикации.

refresh

movlw 0x0F

movwf PORTB ; погасить все индикаторы

movf Dig_1, W ; Значение тысяч для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 1

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 1

movf Dig_2, W ; Значение сотен для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,7 ; Активизировать индикатор 2

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,7 ; Отключить индикатор 2

movf Dig_3, W ; Значение десятков для индикации.

call segment ; Преобразование DEC -> семисегментный код.

movwf PORTB ; Вывод цифры на индикатор.

bcf PORTB,6 ; Активизировать индикатор 3

bcf PORTB,7

call delay ; Задержка времени для отображения одного разряда

bsf PORTB,6 ; Отключить индикатор 3


Подобные документы

  • Розрахунок інвертуючого суматора. Розробка структурної схеми. Вибір операційного підсилювача. Розрахунок однофазного випрямляча малої потужності з інтегральним стабілізатором напруги. Моделювання пристрою в середовищі програми Electronics Workbench.

    курсовая работа [570,8 K], добавлен 09.04.2013

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

    контрольная работа [185,1 K], добавлен 12.11.2010

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

    контрольная работа [169,6 K], добавлен 05.02.2015

  • Розрахунок однотактного та двотактного трансформаторних підсилювачів потужності на біполярному транзисторі. Розрахунок схеми узгодження, потужності колекторного кола, блоку живлення підсилювача звукових частот з потужним виходом. Вибір радіатора.

    курсовая работа [857,0 K], добавлен 10.01.2015

  • Розрахунок розподілу діапазону частот на піддіапазони, смуги пропуску фільтра зосередженої селекції останньої проміжної частоти. Розрахунок кількості перетворень та номіналів проміжних частот тракту ПЧ. Забезпечення подавлення неосновних каналів прийому.

    курсовая работа [308,4 K], добавлен 05.02.2015

  • Структурна схема підсилювача звукових частот, технічні характеристики та параметри аналогової мікросхеми серії КР119. Розробка електричної принципової схеми двокаскадного підсилювача, розрахунок вихідного каскаду, вибір елементів блоку живлення.

    реферат [1,0 M], добавлен 10.06.2011

  • Висновок про доцільність розробки світлодіодного годинника. Годинникові механізми, класифікація годинників. Обґрунтування схеми пристрою. Вибір мікроконтролера та огляд його архітектури. Вибір додаткових пристроїв. Розробка програмного забезпечення.

    дипломная работа [3,0 M], добавлен 23.09.2014

  • Доцільність розробки світлодіодного годинника. Історія годинника, годинникові механізми. Сонячні, водяні, пісочні, вогняні, механічні та електронні годинники. Вибір та обґрунтування схеми пристрою. Вибір мікроконтролера. Розробка програмного забезпечення.

    дипломная работа [3,1 M], добавлен 11.07.2014

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

    курсовая работа [222,6 K], добавлен 21.05.2014

  • Обґрунтування достатності апаратних засобів та програмних ресурсів. Розподіл функцій пристрою між вузлами мікропроцесору. Проектування принципової схеми пристрою, формування тактових імпульсів. Програмне забезпечення мікропроцесора, лістинг програми.

    курсовая работа [1,9 M], добавлен 16.09.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.