Jak skonfigurować licznik T0 w 80c52 do zliczania impulsów zewnętrznych?

80c52 - problem z licznikiem





Poprzedni Następny
Wiadomość
spis treści
From: jacekzeb_at_nospam_david.silesia.pik-net.pl (Jacek Ziebura)
Subject: 80c52 - problem z licznikiem
Date: 10 Jun 1997 08:31:20 GMT



Czesc.

Ostatnio spotkalem sie z nastepujacym problemem.
Potrzebuje wykorzystac T0 jako licznik zdarzen zewn. i z automatycznym
przeladowaniem po n impulsach z zewn.
ustawiam

mov TMOD,#xxxx0110b
mov TLO,#n
mov THO,#n

Niestety przerwania sa generowane podczas kazdego wystapienia impulsu zewn.
zamiast (jak mi sie wydaje powinno byc) po przepelnieniu licznika.
Jesli zrodlem impulsow jest zegar wewn. TMOD = #xxxx0010b to wszystko jes ok.

Dzieje sie tak na symulatorze avsim51.
Czy ktos wie czy to wina symulatora, moja, czy moze 51 tak dziala ?
Wg wszelkich opisow powinno sie dac uzyskac taki tryb.
Bede wdzieczny za wszelka pomoc.

--
------
Jacek Ziebura,
e-mail: jacekzeb_at_nospam_silesia.pik-net.pl voice : +48-32-1799600 w.313
PGP-Key: http://www.silesia.pik-net.pl/jacekzeb/pgp.html


Poprzedni Następny
Wiadomość
spis treści
From: lis_at_nospam_papuga.ict.pwr.wroc.pl (Jaroslaw Lis)
Subject: Re: 80c52 - problem z licznikiem
Date: 10 Jun 1997 12:45:19 GMT


Jacek Ziebura <jacekzeb_at_nospam_david.silesia.pik-net.pl> wrote:
Potrzebuje wykorzystac T0 jako licznik zdarzen zewn. i z automatycznym
przeladowaniem po n impulsach z zewn.
ustawiam

mov TMOD,#xxxx0110b
mov TLO,#n
mov THO,#n

Niestety przerwania sa generowane podczas kazdego wystapienia impulsu zewn.
zamiast (jak mi sie wydaje powinno byc) po przepelnieniu licznika.
Jesli zrodlem impulsow jest zegar wewn. TMOD = #xxxx0010b to wszystko jes ok.
Dzieje sie tak na symulatorze avsim51.

To chyba jednak symulator winny. Zakladajac ze n<>255, i ze nie bedziesz
mial drgan zestykow, tudziez czestotliwosc bedzie odpowiednia.


J.

Poprzedni Następny
Wiadomość
spis treści
From: amart_at_nospam_pol.JUNKMAILPROTECTION.pl (Jaroslaw Cichorski Jr.)
Subject: Re: 80c52 - problem z licznikiem
Date: Tue, 10 Jun 1997 15:55:14 GMT


jacekzeb_at_nospam_david.silesia.pik-net.pl (Jacek Ziebura) wrote:

<snip >

Ostatnio spotkalem sie z nastepujacym problemem.
Potrzebuje wykorzystac T0 jako licznik zdarzen zewn. i z automatycznym
przeladowaniem po n impulsach z zewn.
ustawiam

mov TMOD,#xxxx0110b
mov TLO,#n
mov THO,#n

Tak w ogole to timer liczy w gore wiec musisz wstawic 256-n.
Jezeli wstawisz 255 to bedzie generowal przerwanie po kazdym impulsie
na wejsciu T0.
To ze zlicza kilka impulsow moze byc spowodowane drganiami (stykow np)
Nie zapomnij o EA, TR0 i ET0.


Niestety przerwania sa generowane podczas kazdego wystapienia impulsu zewn.
zamiast (jak mi sie wydaje powinno byc) po przepelnieniu licznika.
Jesli zrodlem impulsow jest zegar wewn. TMOD = #xxxx0010b to wszystko jes ok.

<snip >

--------
Jarek.
e-mail amart_at_nospam_pol.JUNKMAILPROTECTION.pl

E-mail address is invalid due to stop junk mail.
Please remove 'JUNKMAILPROTECTION.'