Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2006 Метод 2++.doc
Скачиваний:
7
Добавлен:
19.11.2019
Размер:
9.07 Mб
Скачать

6.3. Програма роботи

  1. Вивчити принципи роботи з АЦП.

  2. Розробити програми для роботи з АЦП.

  3. Завантажити в стенд розроблені програми.

6.4. Порядок виконання лабораторної роботи

  1. Вивчити принципи роботи аналого-цифрового перетворювача.

  2. Вивчити структурну схему модуля АЦП на платі розширення (Рис.6.2.).

  3. Вивчити методику роботи з АЦП навчального стенду.

  4. Розробити алгоритм для виконання індивідуального завдання (Таблиця 6.1).

  5. Розробити програму для виконання індивідуального завдання.

  6. Ввести текст програми мнемокодами асемблера використовуючи текстовий редактор і зберегти асемблерну програму на диску ПК.

  7. Транслювати збережену програму в шістнадцятковий код.

  8. Завантажити програму в стенд ОЕОМ. Переконатися в правильному виконанні індивідуального завдання, змінюючи вхідну напругу АЦП за допомогою змінного резистора R19. При негативному результаті провести відлагодження алгоритму та програми.

  9. Звіт з лабораторної роботи повинен містити блок-схему алгоритму роботи програми і асемблерні мнемокоди складеної програми.

  10. Варіанти індивідуальних завдань.

Таблиця 6.1. Завдання до л.р. №6

Індивідуальне завдання

1

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

2

Циклічно опитувати АЦП; пропорційно вхідній напрузі засвічувати світлодіоди на лінійці світлодіодів HL1-HL8.

3

4

5

6*

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

7*

6.5. Контрольні запитання

  1. Методи і типи АЦП.

  2. Статичні параметри АЦП

  3. Поняття дискретності, квантування, роздільної здатністі.

  4. Характеристика перетворення, диференціальна нелінійність АЦП, відхилення коефіцієнта перетворення.

  5. Напруга зсуву нуля.

  6. Динамічні параметри АЦП.

  7. Час перетворення, час затримки запуску, час циклу перетворення, максимальна частота перетворення.

  8. Поняття апертурний час.

  9. Фактори, що впливають на погрішність АЦП.

  10. Апаратні реалізації АЦП.

  11. Приклади практичного застосування АЦП.

  12. Побудова схем АЦП за допомогою мікросхем ЦАП.

Лабораторна робота №7. Обробка частотних і часових сигналів

7.1. Мета роботи

Вивчити методи частотного перетворення. Навчитися здійснювати вимірювання частоти, періоду, тривалості дискретних сигналів за допомогою програмованих таймерів/лічильників ОЕОМ AT89C51, а також з використанням зовнішнього еталонного генератора.

7.2. Теоретичні відомості

У системах автоматичного керування часто приходиться вимірювати такі величини як: частота f, період T, тривалість τ, зсув фаз φ. Для цього застосовується перетворення частота-код. В залежності від того, який саме параметр потрібно виміряти застосовують різні підходи.

Рис.7.1. Діаграма вимірювання частоти.

При вимірюванні частоти fx проводиться підрахунок імпульсів вхідного сигналу протягом фіксованого відрізку часу Т0 (рис.7.1). Тоді частоту знаходять як

.

Такий метод прийнятний для вимірювання високих частот більше 100Гц. Верхня межа обмежується швидкодією елементів схеми і розрядністю лічильників.

Рис.7.2. Вимірювання періоду слідування методом підрахунку кількості імпульсів відомої частоти.

Вимірювання частот нижче 100Гц заміняється вимірюванням періоду Тх. При цьому виробляється підрахунок імпульсів фіксованої частоти f0 за інтервал рівному або кратний вимірюваному періодові мал.13.

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

Рис.7.2. Вимірювання зсуву фаз.

При вимірі зрушення фаз часовий інтервал формують шляхом конъюнкциі сигналів f1 x і f2 x мал. 14, отриманий інтервал часу вимірюють методом описаним вище.

Схеми, що реалізують такий алгоритм, приведені на малюнку 14.

Малюнок 6. Схеми для виміру частоти а)низкої, б)високої

У лабораторному стенді при наявності плати розширення довходу ОЭВМТ0 підключений постійний генератор частоти, а до входу Т1 підключений генератор зі змінюваною частотою. Сигнали цих генераторів можна спостерігати на осцилографі, підключеному до BNC рознімання. Для спостереження сигналу Т0 замкнути перемичку J1, а для Т1 перемичку J3

Таймери / лічильники (Т/З) ОЭВМ призначені для підрахунку зовнішніх подій, для одержання програмно керованих тимчасових затримок, виконання часозадаючих функцій ОЭВМ.

До складу блоку Т / С входять:

1) два 16-ти розрядних регістри Т/З0, Т/З1;

2)8-ми розрядний регістр режимів Т/З(ТМ0D);

3)8-ми розрядний регістр керування (ТСО);

4)схема інкремента;________

5)схема фіксації ІNT0, ІNT1, Т0, Т1;

6)схема керування прапорами;

7)логіка керування Т/С.

Два16-розрядних регістри Т/З0 і Т/З1 виконують функцію збереження вмісту рахунка. Кожний з них складається з пари 8-ми розрядних регістрів, відповідно ТH0, ТL0 і ТH1, ТL1. Причому регістри ТН0, ТH1-старші, регістри ТL0, ТL1-молодші 8 розрядів. Кожний з 8-ми розрядних регістрів може бути використаний, як РОН, якщо Т/З не використовуються (біт TR0 для Т/З0 і біт TR1 для Т/З1 у регістрі керування TCON дорівнює "0").

Регістр режимів Т/З(TMOD) призначений для прийому і збереження коду, що визначає:

-один з 4-х можливих режимів роботи кожного Т/З;

-роботу як таймери або лічильників;

-керування Т/З від зовнішнього висновку.

Регістр режимів TMOD

M0-M1(0-1,4-5)- один з 4-х режимів лічильників

З/Т(2,6)-'0' таймер '1' лічильник

GATE-дозвіл керування від зовнішнього висновку '0' заборонене '1' дозволено (ІNT0,ІNT1)

Регістр керування (TCON) призначений для прийому і збереження коду керуючого слова. Регістр TCON не можна використовувати в якості РОН. Схема інкремента призначена для збільшення на 1 у кожному машинному циклі вмісту регістрів Т/З0, Т/З1, для яких:

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

-установлений режим лічильника, рахунок дозволений і на відповідному вході схеми Т0 (для Т/З0) абоТ1 (для Т/З1) за фіксований рахунковий імпульсу попередньому машинному циклі.

Регістр керування TCON

TR-біт включення Т/C '0' виключений

TF-прапор переповнення Т/CІT- визначає вид переривання по входу І NT '0' по L-рівні, '1' по фронтуІE-прапор запиту на переривання

Рис.7.5. Електрична схема генератора змінної та постійної частоти .

Приклад програми вимірювання частоти

$nolist

$include (C:\MyWork\MPT\MyTest\mod51)

$list

mode equ 55h ;Настроює Т1 counter, T0 counter

str equ 50h ;Запис у TCON дозволяє рахунок

ORG 0000h

BEG: MOV TL1,#00h ;Обнуління

MOV TH1,#00h ;т/л 1

MOV TL0,#0f0h ;Попереднє встановлення т/л0

MOV TH0,#0E4h ;Розрахована на 1с

MOV TMOD,#MODE ;ініціалізація режимів таймерів

MOV TCON,#STR ;Запуск рахунка

JNB TF0,$ ;Перевірка прапора переповнення т/л0

CLR TR1 ;Якщо відбулося переповнення, то

CLR TR0 ;зупинити рахунок т/л 1 і т/л 0

MOV R0,TL1 ;Зчитування результату виміру

MOV R1,TH1 ;RO містить молодшу частину, a R1 старшу

CALL IND ;Виклик підпрограми індикації

MOV R3,#01h ;Часова затримка

MOV R4,#01h

M: ;на двох регістрах

DJNZ R4,M ;з декрементом

DJNZ R3,M ;у вкладеному циклі

JMP BEG ;Перехід на наступний цикл виміру

IND: ;Підпрограма індикації, робить переклад

;результату із двійкової системи у двійково -

;десяткову та його відображення

JMP Ml

L: DB 01h,02h,04h,08h,16h,32h,64h,28h,56h,12h,24h,48h, 96h

HI: DB 00h,00h,00h,00h,00h,00h,00h,01h,02h,05h,10h,20h,40h

Ml: MOV R2,#00h

MOV R6,#00h

MOV R7,#00h

NACHALO_L: MOV A,R0

JNB ACC.0,AGAIN_L ;перевірка чи непарне число якщо 0 то парне

; і перехід на мітку

MOV A,R2

MOV DPTR,#L

MOVC A,@A+DPTR

ADD A,R6

DA A

MOV R6,A

JNB PSW.7,PLUS_NEXT_L ;якщо перенос =0 то перехід

MOV A,R7

ADD A,#01H

DA A

MOV R7,A

PLUS_NEXT_L: MOV A,R2

MOV DPTR,#HI

MOVC A,@A+DPTR

ADD A,R7

DA A

MOV R7,A

AGAIN_L: MOV A,R0

RRC A ;зусув через перенос А/2

MOV R0,A

INC R2

CJNE R2,#08h, NACHALO_L

NACHALO_HI: MOV A,R1

JNB ACC.0,AGAIN_HI

MOV A,R2

MOV DPTR,#L

MOVC A,@A+DPTR

ADD A,R6

DA A

MOV R6,A

JNB PSW.7,PLUS_NEXT_HI

MOV A,R7

ADD A,#01H

DA A

MOV R7,A

PLUS_NEXT_HI: MOV A,R2

MOV DPTR,#HI

MOVC A,@A+DPTR

ADD A,R7

DA A

MOV R7, A

AGAIN_HI: MOV A,R1

RRC A

MOV R1,A

INC R2

CJNE R2,#0Dh ,NACHALO_HI

MOV A, R6

MOV DPTR,#0B000h ;Виведення на індикацію

MOVX @DPTR,A ;молодшої частини коду

MOV A, R7

MOV DPTR,#0A000h ;Виведення на індикацію

MOVX @DPTR,A ;старшої частини коду

RET

END

; REV. 1.0 MAY 23, 1984

P0 DATA 080H ;PORT 0

SP DATA 081H ;STACK POINTER

DPL DATA 082H ;DATA POINTER - LOW BYTE

DPH DATA 083H ;DATA POINTER - HIGH BYTE

PCON DATA 087H ;POWER CONTROL

TCON DATA 088H ;TIMER CONTROL

TMOD DATA 089H ;TIMER MODE

TL0 DATA 08AH ;TIMER 0 - LOW BYTE

TL1 DATA 08BH ;TIMER 1 - LOW BYTE

TH0 DATA 08CH ;TIMER 0 - HIGH BYTE

TH1 DATA 08DH ;TIMER 1 - HIGH BYTE

P1 DATA 090H ;PORT 1

SCON DATA 098H ;SERIAL PORT CONTROL

SBUF DATA 099H ;SERIAL PORT BUFFER

P2 DATA 0A0H ;PORT 2

IE DATA 0A8H ;INTERRUPT ENABLE

P3 DATA 0B0H ;PORT 3

IP DATA 0B8H ;INTERRUPT PRIORITY

PSW DATA 0D0H ;PROGRAM STATUS WORD

ACC DATA 0E0H ;ACCUMULATOR

B DATA 0F0H ;MULTIPLICATION REGISTER

IT0 BIT 088H ;TCON.0 - EXT. INTERRUPT 0 TYPE

IE0 BIT 089H ;TCON.1 - EXT. INTERRUPT 0 EDGE FLAG

IT1 BIT 08AH ;TCON.2 - EXT. INTERRUPT 1 TYPE

IE1 BIT 08BH ;TCON.3 - EXT. INTERRUPT 1 EDGE FLAG

TR0 BIT 08CH ;TCON.4 - TIMER 0 ON/OFF CONTROL

TF0 BIT 08DH ;TCON.5 - TIMER 0 OVERFLOW FLAG

TR1 BIT 08EH ;TCON.6 - TIMER 1 ON/OFF CONTROL

TF1 BIT 08FH ;TCON.7 - TIMER 1 OVERFLOW FLAG

RI BIT 098H ;SCON.0 - RECEIVE INTERRUPT FLAG

TI BIT 099H ;SCON.1 - TRANSMIT INTERRUPT FLAG

RB8 BIT 09AH ;SCON.2 - RECEIVE BIT 8

TB8 BIT 09BH ;SCON.3 - TRANSMIT BIT 8

REN BIT 09CH ;SCON.4 - RECEIVE ENABLE

SM2 BIT 09DH ;SCON.5 - SERIAL MODE CONTROL BIT 2

SM1 BIT 09EH ;SCON.6 - SERIAL MODE CONTROL BIT 1

SM0 BIT 09FH ;SCON.7 - SERIAL MODE CONTROL BIT 0

EX0 BIT 0A8H ;IE.0 - EXTERNAL INTERRUPT 0 ENABLE

ET0 BIT 0A9H ;IE.1 - TIMER 0 INTERRUPT ENABLE

EX1 BIT 0AAH ;IE.2 - EXTERNAL INTERRUPT 1 ENABLE

ET1 BIT 0ABH ;IE.3 - TIMER 1 INTERRUPT ENABLE

ES BIT 0ACH ;IE.4 - SERIAL PORT INTERRUPT ENABLE

EA BIT 0AFH ;IE.7 - GLOBAL INTERRUPT ENABLE

RXD BIT 0B0H ;P3.0 - SERIAL PORT RECEIVE INPUT

TXD BIT 0B1H ;P3.1 - SERIAL PORT TRANSMIT OUTPUT

INT0 BIT 0B2H ;P3.2 - EXTERNAL INTERRUPT 0 INPUT

INT1 BIT 0B3H ;P3.3 - EXTERNAL INTERRUPT 1 INPUT

T0 BIT 0B4H ;P3.4 - TIMER 0 COUNT INPUT

T1 BIT 0B5H ;P3.5 - TIMER 1 COUNT INPUT

WR BIT 0B6H ;P3.6 - WRITE CONTROL FOR EXT. MEMORY

RD BIT 0B7H ;P3.7 - READ CONTROL FOR EXT. MEMORY

PX0 BIT 0B8H ;IP.0 - EXTERNAL INTERRUPT 0 PRIORITY

PT0 BIT 0B9H ;IP.1 - TIMER 0 PRIORITY

PX1 BIT 0BAH ;IP.2 - EXTERNAL INTERRUPT 1 PRIORITY

PT1 BIT 0BBH ;IP.3 - TIMER 1 PRIORITY

PS BIT 0BCH ;IP.4 - SERIAL PORT PRIORITY

P BIT 0D0H ;PSW.0 - ACCUMULATOR PARITY FLAG

OV BIT 0D2H ;PSW.2 - OVERFLOW FLAG

RS0 BIT 0D3H ;PSW.3 - REGISTER BANK SELECT 0

RS1 BIT 0D4H ;PSW.4 - REGISTER BANK SELECT 1

F0 BIT 0D5H ;PSW.5 - FLAG 0

AC BIT 0D6H ;PSW.6 - AUXILIARY CARRY FLAG

CY BIT 0D7H ;PSW.7 - CARRY FLAG

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]