Měření instalace, ověření funkce a využití měřící desky - Laboratorní úloha
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu DOC.
1. NÁZEV ÚLOHY:
Měření instalace, ověření funkce a využití měřící desky
2. ÚKOL MĚŘENÍ:
1. Instalujte měřící desku, ověřte její funkci testovacími programy a změřte dobu
převodu AD převodníku.
2. Sestavte program pro měření a zobrazení napětí:
a) číslo vstupního kanálu se zadá z klávesnice (0 až 15),
b) současně se zobrazí všechny kanály.
3. Měřící desku využijte k realizaci jednoduchého paměťového osciloskopu a změřte
odezvu RC článku na
a) obdélníkový impuls,
b) sinusový signál
při různých časových konstantách. Změřené průběhy vyhodnoťte.
3. MĚŘÍCÍ METODA:
Bod 1: Instalace a ověření funkce měřící desky
Nastavení vstupního rozsahu (AD kanály) na 0 až 5V
Nastavení výstupního rozsahu (DA kanál) na 0 až 5V
Nastavení bázové adresy programově na 300H
Ověření funkce AD a DA kanálu a změření doby převodu
Schéma měření :
ověření funkce AD kanálů (platí i pro bod 2) ověření funkce DA kanálu
ADHx DA
Z PC + měřící PC + měřící
V deska deska V
ADLx GND
X = 0, 1, … 15
K bodu 2: Program pro měření a zobrazení napětí
Sestavíme dvě varianty programu v Turbo Pascalu splňující podmínky dle zadání. Program bude na obrazovce vypisovat číslo na výstupu AD převodníku (N=0 až 4095, převodník je 12ti bitový) a odpovídající napětí.
Začlenění ASM ovladačů do programu v Turbo Pascalu:
var channel: byte;
{$F+}
function ADCRead (channel: byte): word; external;
(* funkce vrací převedené číslo 0 až 4095 *)
procedure ADCInit (Inaddr: word); external;
(* nastaví bázovou adresu převodníku *)
{$L ADC12A_P.OBJ}
{$F-}
Uvedený úsek programu zajistí přilinkování souboru ovladače ADC12A_P.OBJ ke kódu programu. Funkci ADCRead a proceduru ADCInit, které tento ovladač obsahuje, můžeme pak v programu běžným způsobem volat.
Funkce ADCRead vrací číslo N přečtené z výstupu AD převodníku. Toto číslo se přepočítá na napětí podle vztahu (při nastaveném vstupním rozsahu převodníku 0 až 5V):
Program v TP –jeden kanál:
program adc; {jmeno programu}
uses crt, dos; {jednotky}
var {deklarace promennych}
channel,dio: byte;
pom : integer;
{$F+}
function adcread (channel:byte):word;external; {funkce cteni z merici desky}
procedure adcinit (inaddr:word);external; {inicializace}
{$L adc12a_p.obj} {nacteni ovladace pro desku}
{$F-}
begin {zacatek programu}
adcinit ($300); {adresa}
{dio:=port [$300]; port [$300] :=dio; } {odeslani na port}
repeat {opakovani}
clrscr; {vymazani obrazovky}
gotoxy(1,1); {jdi na ( pozice x ,y )}
write('zadej cislo kanalu :1-16 (stisknutim nuly terminujete mereni): '); {vypise na obrazovku}
read(channel); {nacte z klavesnice a da do promenne channel}
if channel in [1..16] then {podminka ( kdyz je cislo kanalu 0 -16 ) pak}
begin {zacatek podminky}
repeat {opakovani}
gotoxy(14,14); {jdi na}
pom:=adcread(channel-1); {nadefinuje promennou pom}
writeln('kanal: ',channel,' N = ',pom:4,' Napeti = ',(pom) *0.00122:8:3, 'V');