Příklad je koncipován tak, aby bylo možné si ukázat, jak časovače a specializované periferie usnadňují tuto úlohu. Analýzou problému zjistíme, že k měření doby periody postačí 16-bitový čítač. Problém měření periody můžeme řešit zcela programově, s využitím vnitřního časovače a přerušovacího systému nebo využitím specializované periferie - záchytného systému.
Záchytný systém x52 ve spojení s
přerušením
V tomto řešení si ukážeme využití záchytného systému časovače 2
procesoru 8052 ve spojení s přerušovacím systémem. Předpokládejme, že využijeme
časovač 2 v záchytném režimu čítající vnitřní oscilátor o kmitočtu
12MHz /12, a měřený signál přivedeme na vstup T2EX. Na začátku činnosti spustíme časovač
2 ve funkci čítače vnitřního oscilátoru, povolíme záchytný režim na
sestupnou hranu signálu T2EX a po-volíme přerušení od sestupné hrany na vstupu
T2EX (nikoliv od přetečení časovače T2).
Obslužný program přerušení potom převezme nově zachycenou hodnotu čítače T2, odečte
ji od hodnoty předcházející s uvážením možnosti případného
přetečení časovače T2 přes modul 65536. Vypočtenou hodnotu uloží do zobrazovaných re-gist-rů.
Pro správnou činnost je nutné, aby do příštího zachycení
(přerušení) byla výsled-ná hodnota vypočtena. Toto řešení umožňuje
provádět měření každé periody signálu (měření první periody bude
chybné).
;Mereni periody 3. priklad ORG 0000h START: ; Obslužné programy ;NICI: ----- MPERIOD:
ORG 30h END ;Stazeno z www.HW.cz |