Jak połączyć dwa liczniki 16-bitowe do zliczania przerwań w ADUC812?

[51] przedluzenie licznika





Poprzedni Następny
Wiadomość
Spis treści
From: "misty" <ws_at_nospam_misty.one.pl>
Subject: [51] przedluzenie licznika
Date: Sun, 5 May 2002 10:50:56 +0200


Witam
Potrzebuje licznika dluzszego od dostepnych 16-bitow w jednym wiec chcialem
polaczyc dwa ze soba. Moglby mi ktos podpowiedziec jak zliczyc przerwania
generowane przez T0 licznikiem T2. Probowalem w obsludze przerwania T0
zmieniac wejscie licznika T2 (P1.0) , ale chyba tak sie tego nie robi bo nie
chce dzialac...
Albo moze jest jakis inny sposob na przedluzenie licznika? (sorki za lamerke
ale pierwszy raz musze cos zrobic na 51)

(procek to aduc812, a nieudane testy robilem na symulatorze dolaczonym do
niego)


--
pozdrowionka
Wojtek



Poprzedni Następny
Wiadomość
Spis treści
From: "przemek zyla" <belmotybe_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 11:21:02 +0200



Potrzebuje licznika dluzszego od dostepnych 16-bitow w jednym wiec
chcialem
polaczyc dwa ze soba. Moglby mi ktos podpowiedziec jak zliczyc przerwania
generowane przez T0 licznikiem T2. Probowalem w obsludze przerwania T0
zmieniac wejscie licznika T2 (P1.0) , ale chyba tak sie tego nie robi bo
nie
chce dzialac...
Albo moze jest jakis inny sposob na przedluzenie licznika? (sorki za
lamerke
ale pierwszy raz musze cos zrobic na 51)

(procek to aduc812, a nieudane testy robilem na symulatorze dolaczonym do
niego)

a moze by tak tylko jeden licznik i po przepelnieniu (przerwaniu)
inkrementowac jakas zmienna? wtedy bez problemu doliczysz
do wartosci jaka cie interesuje:) musisz tylko sprawdzac
czy osiagnela juz odpowiednia wartosc...
ewentualnie dekrementowac i sprawdzac czy jest zero... chyba prosciej
i mniej kodu...

pozdrawiam

ps: gdzie i za ile mozna kupic w/.w procek???



Poprzedni Następny
Wiadomość
Spis treści
From: "misty" <ws_at_nospam_misty.one.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 11:37:21 +0200



"przemek zyla" <belmotybe_at_nospam_poczta.onet.pl> wrote in message news:ab2thn$7i8
a moze by tak tylko jeden licznik i po przepelnieniu (przerwaniu)
inkrementowac jakas zmienna? wtedy bez problemu doliczysz
do wartosci jaka cie interesuje:) musisz tylko sprawdzac
czy osiagnela juz odpowiednia wartosc...
ewentualnie dekrementowac i sprawdzac czy jest zero... chyba prosciej
i mniej kodu...

tak akurat nie chce zrobic bo T2 steruje bezposrednio konwersja przetwornika
ADC (chyba ze nie znajde innego rozwiazania)

ps: gdzie i za ile mozna kupic w/.w procek???

15$ z www.alfine.com.pl ew. probki z www.analog.com, ale daja tylko 816 z
16-bit adc


--
pozdrowionka
Wojtek



Poprzedni Następny
Wiadomość
Spis treści
From: =?iso-8859-2?Q?Micha=B3_Lankosz?= <nie_at_nospam_lubie.spamu>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 13:40:23 +0200


tak akurat nie chce zrobic bo T2 steruje bezposrednio konwersja przetwor
nika
Rozumiem, że przepełnienie T2 wyzwala konwersję (ustawiony bit T2C). Jeśli
chodzi o zwiększenie czasu pomiędzy kolejnymi próbkami może wystarczy wyzw
alać pojedyncze konwersje w sposób jak pisał Przemek Żyła, albo ignorować
niepotrzebne wyniki konwersji.
A może wyswalać z zewnštrz (bit EXC)? Nie wiadomo o jaki efekt chodzi.

--
Michał, SQ9FQQ http://sq9fqq.prv.pl/
GG:374157 http://free.ngo.pl/~sp9zcj/
e-mail: mike2001 (małpa) tlen.pl



Poprzedni Następny
Wiadomość
Spis treści
From: "przemek zyla" <belmotybe_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 13:44:04 +0200



tak akurat nie chce zrobic bo T2 steruje bezposrednio konwersja przetwor
nika
Rozumiem, że przepełnienie T2 wyzwala konwersję (ustawiony bit T2C). Jeśli
chodzi o zwiększenie czasu pomiędzy kolejnymi próbkami może wystarczy wyzw
alać pojedyncze konwersje w sposób jak pisał Przemek Żyła, albo ignorować
niepotrzebne wyniki konwersji.
A może wyswalać z zewnštrz (bit EXC)? Nie wiadomo o jaki efekt chodzi.

ja bym proponowal zliczac T0, w chili przepelnienia dodawac to T2
az do przepelnienia T2...
przeciez T0 mozesz ustawic na dowolna wartosc poczatkowa...
A T2 ustawic jako licznik...

Chyba powinno zadzialac...



Poprzedni Następny
Wiadomość
Spis treści
From: "misty" <ws_at_nospam_misty.one.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 14:04:17 +0200



"przemek zyla" <belmotybe_at_nospam_poczta.onet.pl> wrote in message
ja bym proponowal zliczac T0, w chili przepelnienia dodawac to T2
az do przepelnienia T2...
przeciez T0 mozesz ustawic na dowolna wartosc poczatkowa...
A T2 ustawic jako licznik...

no wlasnie o takie cos chodzi tyle ze nie wiem jak zliczyc licznikiem T2
moment przepelnienia timera T0.


--
pozdrowionka
Wojtek



Poprzedni Następny
Wiadomość
Spis treści
From: "przemek zyla" <belmotybe_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 14:17:14 +0200



ja bym proponowal zliczac T0, w chili przepelnienia dodawac to T2
az do przepelnienia T2...
przeciez T0 mozesz ustawic na dowolna wartosc poczatkowa...
A T2 ustawic jako licznik...

no wlasnie o takie cos chodzi tyle ze nie wiem jak zliczyc licznikiem T2
moment przepelnienia timera T0.

T0 ustawiasz jako timer z przerwaniem... W momencie przerwania
dodajesz do T2 (ustawiony jako licznik - tez z przerwaniem)
jedynke albo odejmujesz... zalezy jakie tryby zastosujesz...
i wszystko...



Poprzedni Następny
Wiadomość
Spis treści
From: "Jacek Bogusz" <jacek.bogusz_at_nospam_ep.com.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 14:11:49 +0200


no wlasnie o takie cos chodzi tyle ze nie wiem jak zliczyc licznikiem T2
moment przepelnienia timera T0.

Wydaje mi się to możliwe tylko przez przerwanie. W jednej z aplikacji
zrobiłem tak, że zewnętrzne wejście T2 pracujšcego jako licznik, podpięte
jest albo do Ÿródła z zewnštrz, albo do linii portu. Ciebie będzie chyba
interesował ten drugi wariant. Wyglšda to mniej więcej w ten sposób, że T0
generuje przerwanie, to z kolei powoduje zmianę linii portu i te zmiany
liczone sš przez T2 (z wejściem z zewnštrz). Czyli tak:
1. T0 - przerwanie
2. obsługa przerwania T0 - zmiana portu
3. T2 - zlicza zmiany tej linii
Musisz tylko "zmarnować" jednš linię portu. Wydaje mi się również, nie
pamiętam dokładnie ale chyba tak też to funkcjonowało, że ustawiałem T2 jako
licznik z wejściem z zewnštrz a póŸniej rozkazami SETB i CLR ustawiałem /
zerowałem to wejście - to również powodowało zliczanie przez T2. Jednak
musisz sobie to spróbować. Jeśli działa tak, jak piszę, wówczas wejście T2
podpinasz do rezystora pull-up a następnie tylko zerujesz i ustawiasz ten
bit w obsłudze przerwania T0. I masz 32 bitowy "kombinowany" licznik ;)))

Jacek



Poprzedni Następny
Wiadomość
Spis treści
From: "misty" <ws_at_nospam_misty.one.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 15:18:52 +0200



"Jacek Bogusz" <jacek.bogusz_at_nospam_ep.com.pl> wrote in message
news:ab37me$hrr$1_at_nospam_absinth.dialog.net.pl...
no wlasnie o takie cos chodzi tyle ze nie wiem jak zliczyc licznikiem T2
moment przepelnienia timera T0.

Wydaje mi się to możliwe tylko przez przerwanie. W jednej z aplikacji
<cut>

ok dzieki wszystkim za zabranie glosu mysle ze cos z Waszych podpowiedzi
wyczaruje :)


--
pozdrowionka
Wojtek




Poprzedni Następny
Wiadomość
Spis treści
From: "przemek zyla" <belmotybe_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 17:01:58 +0200



ok dzieki wszystkim za zabranie glosu mysle ze cos z Waszych podpowiedzi
wyczaruje :)


pochwal sie pozniej:)

pozdr
Przemek Zyla



Poprzedni Następny
Wiadomość
Spis treści
From: "misty" <ws_at_nospam_misty.one.pl>
Subject: Re: [51] przedluzenie licznika
Date: Wed, 8 May 2002 20:27:21 +0200



"przemek zyla" <belmotybe_at_nospam_poczta.onet.pl> wrote in message news:ab3hgu$7r6

pochwal sie pozniej:)

juz sie chwale:
w ostatecznej wesji zrozumialem ze laczenie timerow jest bez sensu i zliczam
w obsludze przerwania(chociaz oczywiscie dziala polaczenie jednego pinu
portu z wejsciem zliczania T2). dzieki jeszcze raz za uwagi i komentarze

--
pozdrowionka
Wojtek



Poprzedni Następny
Wiadomość
Spis treści
From: "Greg S." <greg_sz_at_nospam_dsuper.net>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 05 May 2002 23:54:55 -0400


Nie wiem juz w tej chwili o jaki procek chodzi ale nie rozumiem po co uzywac 2
timery w taki csztuczny sposob.
Normalnie te liczniki sa zwiekszane i tak niezaleznie od tego czy je uzywasz czy
nie (moze w jakims procesorze nie ale w wiekszosci tak) tak wiec nie mozesz ich
uzywac jak rejestrow.
Normalna droga jest taka ze ustawiasz sobie przerwanie z timera tak zeby dawal
ci jakas praktyczna jednostke czasu a potem w programie obclugi przerwan liczysz
ter jednostki, jak sie doliczysz to wykonujesz jakas funkcje lub ustawasz
semafor, ktory bedzie testowany w glownej petli programu.
Zaliczanie w kazdym razie robisz w jakims miejscu w pamieci RAM do tego
przeznaczonym a nie w rejetrach timera. Mozesz uzyc jakies inne rejestry jesli
nie sa uzywane ale to ryzykowne.
Mam nadzieje ze to pomoze.
Pozdro
Grze..Szy..


Poprzedni Następny
Wiadomość
Spis treści
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Mon, 06 May 2002 05:37:58 GMT


Greg S. wygenerował manualnie w wiadomości
<3CD5FE8F.C98339C0_at_nospam_dsuper.net> udostępnionej publicznie dnia Sun, 05
May 2002 23:54:55 -0400 co następuje:

Nie wiem juz w tej chwili o jaki procek chodzi ale nie rozumiem po co uzywac 2
timery w taki csztuczny sposob.

Żeby nadal wyzwalać sprzętowo ADC drugi timerem. Czemu tak, nie wiem.

Normalnie te liczniki sa zwiekszane i tak niezaleznie od tego czy je uzywasz czy
nie (moze w jakims procesorze nie ale w wiekszosci tak) tak wiec nie mozesz ich
uzywac jak rejestrow.

w 51 nie.

Normalna droga jest taka ze ustawiasz sobie przerwanie z timera tak zeby dawal
ci jakas praktyczna jednostke czasu a potem w programie obclugi przerwan liczysz
ter jednostki, jak sie doliczysz to wykonujesz jakas funkcje lub ustawasz
semafor, ktory bedzie testowany w glownej petli programu.
Zaliczanie w kazdym razie robisz w jakims miejscu w pamieci RAM do tego
przeznaczonym a nie w rejetrach timera. Mozesz uzyc jakies inne rejestry jesli
nie sa uzywane ale to ryzykowne.
Mam nadzieje ze to pomoze.
Pozdro
Grze..Szy..


GrzeSzy, dajesz dobre rady, ale fajnie by było, jakbyś najpierw
przeczytał, co inni napisali, bo primo to się powtarza, secundo
trafiasz tak obok tematu ;-) To znaczy na problemy już zaznaczone jako
nie do ubicia ;-)
(mam nadzieję, że nikt się nie pogniewa)

--
Marek Lewandowski ICQ# 10139051
DOUSUNIECIAlocustDOUSUNIECIA_at_nospam_poczta.onet.pl
http://locust.republika.pl
UWAGA! w emailu wycinać DOUSUNIECIA z adresu!

Poprzedni Następny
Wiadomość
Spis treści
From: "Greg S." <greg_sz_at_nospam_dsuper.net>
Subject: Re: [51] przedluzenie licznika
Date: Tue, 07 May 2002 01:59:19 -0400


Marek Lewandowski wrote:
.. fajnie by było, jakbyś najpierw przeczytał, co inni napisali, ..
Fakt ze odpisuje pisze czasem na dosc stare listy i widze pozniej ze sprawa juz jest
nieaktualna.
Wytlumiam sie wiec o te pare dB.

Pozdro
Grze..Szy..


Poprzedni Następny
Wiadomość
Spis treści
From: "Jacek Bogusz" <jacek.bogusz_at_nospam_ep.com.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 13:59:41 +0200


Cześć! A czy nie jest możliwe rozwišzanie najprostsze, to znaczy dołšczeni
4..8 bitów licznika z zewnštrz i ewentualne podpięcie bitów tego licznika
zewnętrznego do któregoś z portów? Załóżmy, że dodasz 74193...

Jacek


Użytkownik "misty" <ws_at_nospam_misty.one.pl> napisał w wiadomości
news:ab2roq$aa8$1_at_nospam_onyx.icpnet.pl...
Witam
Potrzebuje licznika dluzszego od dostepnych 16-bitow w jednym wiec
chcialem
polaczyc dwa ze soba. Moglby mi ktos podpowiedziec jak zliczyc przerwania
generowane przez T0 licznikiem T2. Probowalem w obsludze przerwania T0
zmieniac wejscie licznika T2 (P1.0) , ale chyba tak sie tego nie robi bo
nie
chce dzialac...
Albo moze jest jakis inny sposob na przedluzenie licznika? (sorki za
lamerke
ale pierwszy raz musze cos zrobic na 51)

(procek to aduc812, a nieudane testy robilem na symulatorze dolaczonym do
niego)


--
> pozdrowionka
> Wojtek
>
>



Poprzedni Następny
Wiadomość
Spis treści
From: "przemek zyla" <belmotybe_at_nospam_poczta.onet.pl>
Subject: Re: [51] przedluzenie licznika
Date: Sun, 5 May 2002 14:18:03 +0200




Cześć! A czy nie jest możliwe rozwišzanie najprostsze, to znaczy dołšczeni
4..8 bitów licznika z zewnštrz i ewentualne podpięcie bitów tego licznika
zewnętrznego do któregoś z portów? Załóżmy, że dodasz 74193...

Jacek

moze i prostrze... ale trza dodatkowy scalaczek pchac:)

Pozdr
Przemek Zyla