Jít k navigaci - Jít k vyhledávání


Seriál - PIC16F84 - 20 - čítač/časovač

30. 11. 07 - 12:26. Napsal Jiří Chytil. Přečteno 7725x. 5 komentářů

Nastavení a použití čítače a časovače v MCU PIC16F84.

Čítač / časovač (dále jen č/č) má pro svou práci vyčleněn 8 bitový registr a předděličkou s dělícím poměrem až 1:256. Rozdíl mezi čítačem a časovačem je ve zdroji signálu. Signál pro časovač pochází z hodinového signálu oscilátoru. Frekvence načítání je tedy stejná jako frekvence vykonávání strojových cyklů tedy Frekvence Oscilátoru vydělá čtyřmi. Zatím co signál pro čítač pochází z externího zdroje signálu. Tím může být například ona klávesnice, o které byla zmínka v předchozí kapitolka. Režim č/č volíme nastavením nebo nulováním bitu T0CS (v registru OPTION). Pokud je bit nulován, je zvolen režim časovače. Pokud je bit nastaven, tedy je v logické jedna, máme zvolen režim čítače. Již jsme zmínil, že čítač reaguje na externí signál. Ovšem jsou zde nějaké podmínky. Na externím signálu totiž dochází ke zpoždění od aktivní hrany signálu do inkrementování obsahu registru. Doba trvání tohoto zpoždění jsou dva strojové cykly. Této doby tedy nemůžeme využít k přivedení dalšího impulzu, který by PIC byl schopen zaregistrovat. Dalším bitem registru OPTION, který zde hraje roli je T0SE, který určuje, zda bude čítač reagovat na sestupnou nebo vzestupnou hranu. Pokud je vynulován, probíhá inkrementace s náběžnou hranou a pokud je nastaven, probíhá s hranou sestupnou. Vstup je opatřen Schmittovým klopným obvodem (dále jen SKO).

Dalším důležitým obvodem je zmíněná dělička. Jeli-li použita předdělička můžeme na uP přivádět i impulzy s vyšší frekvencí než bez ní. Musí ale být dodrženo doba trvání impulzu, ta je pro L i H minimálně 10ns. Předdělička je nastavována bity PS0, PS1, PS2 v registru OPTION. Různými kombinacemi lze dosáhnout dělícího poměru 1:2 až 1:256. Předěličku před č/č zařezujeme vynulováním bitu PSA v registru OPTION. Dělící poměry nastavuje podle tabulky na následující straně.

Předdělička pro č/č je sdílena s časovačem WATCHDOG, pokud tedy děličku použít nechceme, přiřazujeme ji časovači WATCHDOG nastavením bitu PSA do logické jedna. U časovače WATCHDOG (o kterém se budeme bavit později) lze poměry dělení nastavit od 1:1 (dělička je vlastně nevyužita) po 1:128. Nyní bych přistoupil k ukázce kódu, prozatím si ukážeme pouze čítač.


		INCLUDE	"P16F84A.INC"
		LIST 	P=16F84A, R=DEC
		__CONFIG   _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
;-------------------------------------------------------------
				
		BSF		STATUS,RP0		;inicializace uP
		MOVLW		b'00000000'		
		MOVWF		TRISB			
		MOVLW		b'00011111'		
		MOVWF		TRISA
		MOVLW		b'10100111'		;nastavení čítače	
		MOVWF		OPTION_REG	
		BCF		STATUS,RP0		

zac		MOVF		TMR0,0			;přesun dat z TMR0
		MOVWF		PORTB			;na port B
		GOTO		zac

		END					;konec programu
Kód: Assembler pro PIC16F84A - Čítač

Program pracuje velice jednoduše. Jde jen o ukázku, kdy nějakými signály přičítáme do registru hodnoty a zobrazujeme je na výstupech PORTB. Dělení v tomto programu je nastavené na 1:256 (červeně vyznačené bity). Zeleně vyznačené bity určují nastavení zdroje impulzů a aktivní hrany. Bit vyznačený fialově předřazuje předděličku před čítač.



Autor
Jiří Chytil

Jiří Chytil24 let

Šéfredaktor 8bitu.cz. V současné době je studentem prvního ročníku magisterského studia na Fakultě elektrotechické na VUT v Brně. Mezi jeho koníčky patří elektrotechnika, bastlení, programování a hudba. Pracuje na částečný úvazrek ve společnosti Honeywell HTS ACS.

Diskuse ke článku (0)

- Žádné příspěvky -

Přidat první komentář »


Novinky Další novinky

[10. 03.]  Tak jsem pro Vás připravil novou anketu. A snažím se pokračovat na projektu jehož výsledky bych zde rád zveřejnil, ale poněkud mě brzdí diplomová práce a práce.
[30. 01.]  Omlouvám se za nečinnost způsobenou značným nedostatkem času. Nevím, ale jestli se mi to podaří změnit. To víte, člověk stárne a jeho čas je potřeba jinde než na internetu.
[07. 03.]  Po dlouhé době jsme pro vás přichystali novou anketu - najdete ji níže v pravém panelu.
[12. 12.]  Zajímavý počin v oblasti měřící techniky jsou Real-time spektrální analyzátory - odkaz
[07. 12.]  Sice již starší video, ale stále mě uchvacuje. Výroba elektronek "doma" - odkaz

Reklama

Morphy Richards elektronika Okruháři.cz

Programujte.com

Léčivé obrazy - enkaustika Lenka Blažíková

Keramika Věra Coufalová - užitková keramika

Anketa

Jaký obchod preferujete při nákupu součástek?

TME

GES

GME

Farnell

SOS electronic

TIPA

EZK

PS Electronic

Mouser

Buček

Denkl Electronic

FK Technics

Hadex

Conrad

Jiný český

Jiný zahraniční