problem z cyfrowka...
Masz problem? Zapytaj na forum elektroda.pl
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: problem z cyfrowka...
Date: 1 Aug 2002 16:12:18 GMT
witam,
problem z cyfrowki, jak sadze... :)
po jednej stronie mam 32 niezalezne linie (kazda moze przyjmowac
warotsci 0 lub 1).
po drugiej stronie mam urzadzenie, ktore moze przyjac liczbe max.
5-cio bitowa.
potrzebuje w srodek wsadzic cos takiego, co zbuforuje zmiany
w sygnale 32-bitowym, przeksztalci kazda zmiane w liczbe 5-cio
bitowa (kodowanie) i wysle wszystkie zmiany jedna po drugiej do
tego 5-cio bitowego urzadzenia.
---------------------------------------
przyklad 1:
na wejsciu mamy: 00000000000000000000000000000000
zmieniaja sie bity 0 i 1.
na wejsciu mamy: 11000000000000000000000000000000
uklad, ktorego szukam zbuforuje te dwie zmiany, powiedzmy w
kolejnosci: bit 0, bit 1.
teraz zakodujemy pierwsza zmiane (zmiane zerowego, zalozmy, ze
najmniej znaczacego bitu): otrzymujemy 1 = 2^0, co zapisane binarnie
w pieciu bitach wyglada tak: 00001
wysylamy ta liczbe na wyjscie.
teraz kodujemy druga (zbuforowana) zmiane:
zmiana nastapila na miejscu 1, czyli otrzymujemy 2 = 2^1.
binarna, 5-cio bitowa liczba wyglada tak: 00010
ta liczba idzie na wyjscie.
---------------------------------------
teraz kodujemy druga (zbuforowana) zmiane:
zmiana nastapila na miejscu 1, czyli otrzymujemy 2 = 2^1.
binarna, 5-cio bitowa liczba wyglada tak: 00010
ta liczba idzie na wyjscie.
---------------------------------------
mam nadzieje, ze te przyklady wyjasnily, o co mi chodzi.
chyba, ze macie inne pomysly, jak roziazac problem przekazywania
liczb 32-bitowych 5-cio bitowemu urzadzeniu... (?)
nigdy czegos takiego nie robilem, wiec nie sugerujcie sie moim
pomyslem - moze byc bez sensu :)
pozdrawiam,
--
Lukasz Sacha <luke_at_nospam_is.com.pl>
From: "Juliusz" <jul_at_nospam_fom.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 1 Aug 2002 18:36:20 +0200
"Lukasz Sacha" <luke_at_nospam_mroweczka.rms.pl> wrote in message
news:slrnakimrk.ehs.luke_at_nospam_mroweczka.rms.pl...
witam,
problem z cyfrowki, jak sadze... :)
po jednej stronie mam 32 niezalezne linie (kazda moze przyjmowac
warotsci 0 lub 1).
po drugiej stronie mam urzadzenie, ktore moze przyjac liczbe max.
5-cio bitowa.
potrzebuje w srodek wsadzic cos takiego, co zbuforuje zmiany
w sygnale 32-bitowym, przeksztalci kazda zmiane w liczbe 5-cio
bitowa (kodowanie) i wysle wszystkie zmiany jedna po drugiej do
tego 5-cio bitowego urzadzenia.
Czy tam sa same dane czy jakies stroby tez sa ?
Juliusz
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 18:32:06 GMT
In article <aibnub$edu$1_at_nospam_news.tpi.pl>, Juliusz wrote:
"Lukasz Sacha" <luke_at_nospam_mroweczka.rms.pl> wrote in message
news:slrnakimrk.ehs.luke_at_nospam_mroweczka.rms.pl...
witam,
problem z cyfrowki, jak sadze... :)
po jednej stronie mam 32 niezalezne linie (kazda moze przyjmowac
warotsci 0 lub 1).
po drugiej stronie mam urzadzenie, ktore moze przyjac liczbe max.
5-cio bitowa.
potrzebuje w srodek wsadzic cos takiego, co zbuforuje zmiany
w sygnale 32-bitowym, przeksztalci kazda zmiane w liczbe 5-cio
bitowa (kodowanie) i wysle wszystkie zmiany jedna po drugiej do
tego 5-cio bitowego urzadzenia.
Czy tam sa same dane czy jakies stroby tez sa ?
zadnych strobow (zakladam, ze jesli nie do konca wiem co to jest,
to nie jest to to, czego bede uzywal :)
po prostu sa 32 linie. od czasu do czasu jeden bit sie zmienia.
moze byc tez tak, ze zmienia sie wiecej niz jeden bit, ale to
bedzie zadko.
--
Lukas Sacha
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 16:37:46 GMT
on 1 Aug 2002 16:12:18 GMT in <slrnakimrk.ehs.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
witam,
problem z cyfrowki, jak sadze... :)
po jednej stronie mam 32 niezalezne linie (kazda moze przyjmowac
warotsci 0 lub 1).
po drugiej stronie mam urzadzenie, ktore moze przyjac liczbe max.
5-cio bitowa.
potrzebuje w srodek wsadzic cos takiego, co zbuforuje zmiany
w sygnale 32-bitowym, przeksztalci kazda zmiane w liczbe 5-cio
bitowa (kodowanie) i wysle wszystkie zmiany jedna po drugiej do
tego 5-cio bitowego urzadzenia.
To jest dość skomplikowane, choć wynik powinien być 'szybki' (tzn. to
dałoby chyba największą szybkość przesyłu informacji) ale naprawdę
upierdliwe hardware'owo.
Ja proponowałbym raczej poszukać rejestru z wpisem równoległym /
wyjściem szeregowym.
4 rejestry po osiem bitów + zegar + sygnał zatrzaskiwania danych to
daje 6 linii, pisałeś, że masz 5 bitów, ale mówiłęś o wejściach - może
jedno wyjście ekstra się znajdzie.
Jak nie, to połącz po dwa ośmiobitowe szeregowo, będziesz potrzebował
16 cykli na sczytanie całej szyny, ale zajmie to tylko 4 linie.
poszukaj po 74LS198, 74LS165 czy tp. (rejestr szeregowo - równoległy)
- pdfy są (w marnej jakości do 198) na mojej stronie.
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: "Rafal 'Raf256' Maj" <rafal_at_nospam_raf256.com>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 17:08:04 GMT
Marek Lewandowski <nospam_at_nospam_poczta.onet.pl> wrote in news:aibo52$12qr9o$1_at_nospam_ID-
113053.news.dfncis.de
To jest dość skomplikowane, choć wynik powinien być 'szybki' (tzn. to
dałoby chyba największą szybkość przesyłu informacji) ale naprawdę
upierdliwe hardware'owo.
czyba że nagle z
00000000000000000000
zmieni się na
11111111111111111111
ogólnie potrzebny jest chyba układ realizujący sprzętowo jedną z
najprostszych kompresji - kompresję zmian
--
Rafał 'Raf256' Maj
> A jedyne co czytam, ze to terrorysci internetowi z echelonu planuja
> kolejny atak na centrale TPSA
- Expert vel Jacek (obecnie golfmaster_at_nospam_poczta.onet.pl)
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 17:49:14 GMT
on 1 Aug 2002 17:08:04 GMT in
<Xns925DC2028563Fraf256com_at_nospam_213.180.128.20> Rafal 'Raf256' Maj wrote:
Marek Lewandowski <nospam_at_nospam_poczta.onet.pl> wrote in news:aibo52$12qr9o$1_at_nospam_ID-
113053.news.dfncis.de
To jest dość skomplikowane, choć wynik powinien być 'szybki' (tzn. to
dałoby chyba największą szybkość przesyłu informacji) ale naprawdę
upierdliwe hardware'owo.
czyba że nagle z
00000000000000000000
zmieni się na
11111111111111111111
przy sygnale z normalnym statystycznym rozrzutem zmian mimo wszystko
średni transfer będzie wyższy od szeregowego przewalania wszystkich
bitów, co jest jednak najprostsze...
ogólnie potrzebny jest chyba układ realizujący sprzętowo jedną z
najprostszych kompresji - kompresję zmian
dokładnie, choć nie wiem, czy na prawdę potrzebny - bo chyb nie chodzi
o implementację tego algorytmu, a raczej o przepchanie tych 32 bit
przez 5 bit gardło...
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 18:37:45 GMT
In article <aibsb1$11ualc$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
on 1 Aug 2002 17:08:04 GMT in
<Xns925DC2028563Fraf256com_at_nospam_213.180.128.20> Rafal 'Raf256' Maj wrote:
Marek Lewandowski <nospam_at_nospam_poczta.onet.pl> wrote in news:aibo52$12qr9o$1_at_nospam_ID-
113053.news.dfncis.de
To jest dość skomplikowane, choć wynik powinien być 'szybki' (tzn. to
dałoby chyba największą szybkość przesyłu informacji) ale naprawdę
upierdliwe hardware'owo.
czyba że nagle z
00000000000000000000
zmieni się na
11111111111111111111
przy sygnale z normalnym statystycznym rozrzutem zmian mimo wszystko
średni transfer będzie wyższy od szeregowego przewalania wszystkich
bitów, co jest jednak najprostsze...
ogólnie potrzebny jest chyba układ realizujący sprzętowo jedną z
najprostszych kompresji - kompresję zmian
dokładnie, choć nie wiem, czy na prawdę potrzebny - bo chyb nie chodzi
o implementację tego algorytmu, a raczej o przepchanie tych 32 bit
przez 5 bit gardło...
wlasnie mniej wiecej o to chodzi... przy czym zmiany beda przewaznie po
jednym bicie. prawdopodobienstwo, ze zmieni sie wiecej niz jeden bit na
raz jest bliskie zeru (aczklwiek nie jest to wykluczone).
moze powiem wam dokladnie o co chodzi, bo chyba niepotrzebnie zamieszalem:
to 5-cio bitowe gardlo to wejscia portu lpt w kompie.
pytanie tylko, czy jak ja to pchne szeregowo, to uda mi sie to szczytac?
--
Lukasz Sacha
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 18:54:46 GMT
on 1 Aug 2002 18:37:45 GMT in <slrnakivcb.ek1.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
moze powiem wam dokladnie o co chodzi, bo chyba niepotrzebnie zamieszalem:
to 5-cio bitowe gardlo to wejscia portu lpt w kompie.
pytanie tylko, czy jak ja to pchne szeregowo, to uda mi sie to szczytac?
.. a linie to przyciski?
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 19:12:42 GMT
In article <aic06e$130c3n$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
on 1 Aug 2002 18:37:45 GMT in <slrnakivcb.ek1.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
moze powiem wam dokladnie o co chodzi, bo chyba niepotrzebnie zamieszalem:
to 5-cio bitowe gardlo to wejscia portu lpt w kompie.
pytanie tylko, czy jak ja to pchne szeregowo, to uda mi sie to szczytac?
.. a linie to przyciski?
jakie przyciski? nie za bardzo rozumiem...
linie to linie. dostaje je z bramki (dokladnie z invertera)
--
Lukasz Sacha
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 19:30:11 GMT
on 1 Aug 2002 19:12:42 GMT in <slrnakj1ds.el2.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
jakie przyciski? nie za bardzo rozumiem...
linie to linie. dostaje je z bramki (dokladnie z invertera)
Chodzi o źródło tego, co na liniach. Wiesz, mam wrażenie, że
popełniasz podstawowy błąd pytającego nowicjusza: tajniaczysz się.
Brakuje Ci doświadczenia, więc wymyślasz jakieś okrężne rozwiązanie
problemu i pytasz się, jak je wprowadzić, zamiast powiedzieć, że np.
mam 32 czujki alarmowe i port LPT, wymyśliłem podłączyć to tak, ...
Albo: mam 32 przyciski na panelu i trzeba to zapiąć do kompa. Albo -
mam 32 zasynchronizowane z przesunięciem o 1/32 bitu strumienie
200kbps i trzeba to przepchnąć przez LPT, ale zegar mi się może
rozjechać i dwa bity naraz wjadą.
Wiesz, często rozwiązania są prostsze, niż przypuszczasz, a czasem nie
wiedząc, o co aprawdę chodzi my tu będziemy kombinować w dobrej woli,
a Tobie to na ch... będzie, bo nijak nie pasuje do tego, co robisz.
Szanuj czas swój i nasz, pisz skąd dokąd i co, to będzie i z sensem
odpowiedź. Na razie masz jedną uniwersalną: rejestry przesuwne.
Pytanie, czy uda Ci się to sczytać jest w najlepszym przypadku do
pozostawienia bez odpowiedzi. SKĄD JA MAM WIEDZIEĆ? Jak to są
przyciski, to tak, uda Ci się sczytać. Jak będziesz chciał monitorować
linie adresowe w urządzeniu, które usiłuję zaprojektować, to za kij
nie dasz rady, bo choć żadne dwie się zmieniają na raz (gwarantowane w
cyklu), to zmiany lecą planowo co 10 - 50ns (zależy na ile mi się uda
logikę usprawnić) i przez LPT szeregowo nie przejdzie, bo nie ma w
detalu bramek, co wyrobią poniżej 1ns, zwłaszcza nie ma ich w porcie
równoległym...
Przemyśl, co Ci napisałem, wyciągnij wnioski i napisz, co robisz.
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 19:52:39 GMT
In article <aic28l$13go4v$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
on 1 Aug 2002 19:12:42 GMT in <slrnakj1ds.el2.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
jakie przyciski? nie za bardzo rozumiem...
linie to linie. dostaje je z bramki (dokladnie z invertera)
Chodzi o źródło tego, co na liniach. Wiesz, mam wrażenie, że
[...]
ok. po prostu czasami wole nie pisac, co dokladnie robie, zeby
nie komplikowac, ale jak widac czasami wlasnie to komplikuje...
wracajac do tematu.
w lpt mam 5 wejsc.
po drugiej stronie 32 linie (0 lub 1).
stan tych linii zalezy od recznych przelacznikow, dlatego zmiany
beda rzadkie i na pojedynczych bitach.
jakie jest optymalne rozwiazanie?
i potem jak to zczytac po stronie kompa?
--
Lukasz Sacha
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 20:09:25 GMT
on 1 Aug 2002 19:52:39 GMT in <slrnakj3op.elm.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
ok. po prostu czasami wole nie pisac, co dokladnie robie, zeby
nie komplikowac, ale jak widac czasami wlasnie to komplikuje...
wracajac do tematu.
w lpt mam 5 wejsc.
po drugiej stronie 32 linie (0 lub 1).
stan tych linii zalezy od recznych przelacznikow, dlatego zmiany
beda rzadkie i na pojedynczych bitach.
jakie jest optymalne rozwiazanie?
Jeśli możesz te przyciski/przełączniki okablować dowolnie, to żadnej
(prawie) elektroniki Ci nie potrzeba. Zrób odczyt matrycowy:
a) rozwiązanie mniej bezpieczne (bez izolacji kompa od przełączników)
masz osiem linii wyjściowych (tak na prawdę więcej, ale zostańmy przy
ośmiu) i pięć wejściowych. 8x5=40 i tyle przycisków/przełączników
możesz na raz obsłużyć mając tylko osiem diodek klasy 1N4148.
Po kolei:
każdy przełącznik ma dwa zaciski: A i B (które są zwierane/rozwierane
wedle uznania).
grupujesz przełączniki po osiem (bo tyle masz linii wyjściowych) i
łączysz w każdej grupie ich Zaciski A razem, po czym do linii
WEjściowej portu.
Przy 40 prełącznikach masz teraz 5 pęczków po osiem przełączników.
(przy 32 masz 4 pęczki i jedno wejście wolne). Teraz bierzesz po
jednym przełączniku z każdego pęczka i łączysz im zaciski B razem i
przez diodę do lini WYjściowej portu (jednej z ośmiu). Dioda
"strzałką" do portu (katodą do portu).
Innymi słowy: masz zbudowaną macierz 4x8, wiersze na wejścia portu,
kolumny przez diody na wyjścia portu.
Czytasz sekwencyjnie, podajesz na wszystkie WYJścia portu jedynki, na
pierwsze z nich zero. Teraz czytasz linie wejściowe, ich stan
odpowiada wyłącznikom pierwszej kolumny. Przesuwasz zero z pierwszego
wyjścia na drugie, teraz stan na wejściach odzwierciedla stan drugiej
kolumny wyłączników itd...
Przemiecenie całej matrycy trwa ułamek sekundy, wystarczy to powtarzać
i co 250ms (jeśli to tylko przełączniki) lub co 20ms (jak są tam
klawisze, co wymagają szybszej obsługi) ew. co 5ms jak to jest np.
klawiatura numeryczna, na której ktoś coś może wklepywać średnio
szybko.
b) optoizolacja na transoptorach. Napiszę, jeśli przypadek a) spełnia
Twoje wymagania.
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 21:08:25 GMT
In article <aic4hm$130da1$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
on 1 Aug 2002 19:52:39 GMT in <slrnakj3op.elm.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
ok. po prostu czasami wole nie pisac, co dokladnie robie, zeby
nie komplikowac, ale jak widac czasami wlasnie to komplikuje...
wracajac do tematu.
w lpt mam 5 wejsc.
po drugiej stronie 32 linie (0 lub 1).
stan tych linii zalezy od recznych przelacznikow, dlatego zmiany
beda rzadkie i na pojedynczych bitach.
jakie jest optymalne rozwiazanie?
Jeśli możesz te przyciski/przełączniki okablować dowolnie, to żadnej
(prawie) elektroniki Ci nie potrzeba. Zrób odczyt matrycowy:
a) rozwiązanie mniej bezpieczne (bez izolacji kompa od przełączników)
[...]
naprawde przepraszam, ze nie wyrazilem sie dosc precycyjnie.
te przelaczniki, sa owszem - reczne, ale nie sa bezposrednio
podlaczone do tych 32 linii. idzie to przez transoptory (temat
omowilismy juz w watku "jak to zrobic?".
mysle, ze teraz wiesz juz wszystko to, co ja.
bede wdzieczny za dalsza pomoc.
--
Lukasz Sacha
From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 21:21:49 GMT
on 1 Aug 2002 21:08:25 GMT in <slrnakj86r.enf.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
In article <aic4hm$130da1$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
naprawde przepraszam, ze nie wyrazilem sie dosc precycyjnie.
te przelaczniki, sa owszem - reczne, ale nie sa bezposrednio
podlaczone do tych 32 linii. idzie to przez transoptory (temat
omowilismy juz w watku "jak to zrobic?".
mysle, ze teraz wiesz juz wszystko to, co ja.
bede wdzieczny za dalsza pomoc.
Dobra, ale to już jutro, bo muszę pomyśleć i narysować. Mogę Ci wysłać
coś na prv, bo chyba najprościej jak nabazgrzę na papierze i zapytam,
czy o to Ci chodzi ;-)
?
--
Marek Lewandowski ICQ# 10139051
locustXpoczta|onet|pl
http://locust.republika.pl
[! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 1 Aug 2002 21:50:21 GMT
In article <aic8pg$13g4o2$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
on 1 Aug 2002 21:08:25 GMT in <slrnakj86r.enf.luke_at_nospam_mroweczka.rms.pl>
Lukasz Sacha wrote:
In article <aic4hm$130da1$1_at_nospam_ID-113053.news.dfncis.de>, Marek Lewandowski wrote:
naprawde przepraszam, ze nie wyrazilem sie dosc precycyjnie.
te przelaczniki, sa owszem - reczne, ale nie sa bezposrednio
podlaczone do tych 32 linii. idzie to przez transoptory (temat
omowilismy juz w watku "jak to zrobic?".
mysle, ze teraz wiesz juz wszystko to, co ja.
bede wdzieczny za dalsza pomoc.
Dobra, ale to już jutro, bo muszę pomyśleć i narysować. Mogę Ci wysłać
coś na prv, bo chyba najprościej jak nabazgrzę na papierze i zapytam,
czy o to Ci chodzi ;-)
?
ok. pisz na luke_at_nospam_is.com.pl
i jeszcze raz dzieki.
--
Lukasz Sacha
From: Janusz Raniszewski <rniski_at_nospam_man.koszalin.pl>
Subject: Re: problem z cyfrowka...
Date: Thu, 01 Aug 2002 18:40:11 +0200
chyba, ze macie inne pomysly, jak roziazac problem przekazywania
liczb 32-bitowych 5-cio bitowemu urzadzeniu... (?)
nigdy czegos takiego nie robilem, wiec nie sugerujcie sie moim
pomyslem - moze byc bez sensu :)
Witam,
Strasznie to wszystko skomplikowane i wątek zgubiłem praktycznie od
razu. Pomyślałem sobie po co te kombinacje alpejskie czy nie można tych
32 bitów przesyłać szeregowo. To będą cztery 8bitowe rejestry
równoległo-szeregowe?
JanuszR
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 2 Aug 2002 13:56:50 GMT
In article <3D49646B.290CEB9_at_nospam_man.koszalin.pl>, Janusz Raniszewski wrote:
chyba, ze macie inne pomysly, jak roziazac problem przekazywania
liczb 32-bitowych 5-cio bitowemu urzadzeniu... (?)
nigdy czegos takiego nie robilem, wiec nie sugerujcie sie moim
pomyslem - moze byc bez sensu :)
Witam,
Strasznie to wszystko skomplikowane i wątek zgubiłem praktycznie od
razu. Pomyślałem sobie po co te kombinacje alpejskie czy nie można tych
32 bitów przesyłać szeregowo. To będą cztery 8bitowe rejestry
równoległo-szeregowe?
JanuszR
napiszesz mi dokladniej jak to polaczyc?
rozumiem, ze mam 4 rejestry (8 wejsc rowneleglych kazdy i po jednym
wyjsciu szeregowym kazdy, tak?)
sciagnalem sobie pdf'a do takiego bufora... ale nie za bardzo wiem,
jak tym sterowac...
napisz prosze jak uzywac takiego rejestru.
dzieki.
--
Lukasz Sacha
From: Janusz Raniszewski <rniski_at_nospam_man.koszalin.pl>
Subject: Re: problem z cyfrowka...
Date: Sat, 03 Aug 2002 01:32:42 +0200
napiszesz mi dokladniej jak to polaczyc?
rozumiem, ze mam 4 rejestry (8 wejsc rowneleglych kazdy i po jednym
wyjsciu szeregowym kazdy, tak?)
sciagnalem sobie pdf'a do takiego bufora... ale nie za bardzo wiem,
jak tym sterowac...
napisz prosze jak uzywac takiego rejestru.
Witam,
Marek już napisał ale może chcesz się upewnić.
Osobiście przyzwyczaiłem się do 74LS165 ale nie ma to istotnego znaczenia.
Rejestr ma 8 "parallel inputów" (3-6, 11-14), "clock" (2), "serial input"
(10), "output" (9) "output zanegowany" (7), "blokada zegara" (15), "load"
(1).
4 układy łączysz szeregowo tj. do "output" (9) podłączasz "input" (10)
poprzedniego. Do ostatniego "outputa" podłączasz wejście DATA twojego
urządzenia. Równolegle łączysz wszystkie "clocki" (2) i "loady" (1). Na
"blokadę zegara" (15) podajesz 0(GND). Na zrównoleglone wejście "clock"
podajesz sygnał z twojego urządzenia. Częstotliwość nieważna układ jest
statyczny. Na "load" sygnał z urządzenia oznaczający moment wpisania. Jak to
działa?
- na 32 pinach ustrojstwa jest jakiś stan binarny
- podajesz 0 na wyjscie "load" i wracasz na 1 (strob)
- podajesz 1 na "clock" na outpucie (9) masz stan nóżki 31 z 0-31
- czytasz ten stan
- podajesz 0 na "clock"
- podajesz 1 na "clock", czytasz i tak w sumie 32 razy aż opróżnisz rejestry.
Na wejście szeregowe (10) pierwszego rejestru podłączasz 0 albo 1 bez
znaczenia po tych 32 impulsach zegara jego stan pojawi się na wejściu DATA.
Następny odczyt po kolejnym strobie na wejściu load.
W sumie do Twojego ustrojstwa potrzebne są 3 nóżki strob, data, clock.
JanuszR
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 3 Aug 2002 00:09:00 GMT
In article <3D4B169A.1EFC8766_at_nospam_man.koszalin.pl>, Janusz Raniszewski wrote:
napiszesz mi dokladniej jak to polaczyc?
rozumiem, ze mam 4 rejestry (8 wejsc rowneleglych kazdy i po jednym
wyjsciu szeregowym kazdy, tak?)
sciagnalem sobie pdf'a do takiego bufora... ale nie za bardzo wiem,
jak tym sterowac...
napisz prosze jak uzywac takiego rejestru.
Witam,
Marek już napisał ale może chcesz się upewnić.
Osobiście przyzwyczaiłem się do 74LS165 ale nie ma to istotnego znaczenia.
Rejestr ma 8 "parallel inputów" (3-6, 11-14), "clock" (2), "serial input"
(10), "output" (9) "output zanegowany" (7), "blokada zegara" (15), "load"
(1).
4 układy łączysz szeregowo tj. do "output" (9) podłączasz "input" (10)
poprzedniego. Do ostatniego "outputa" podłączasz wejście DATA twojego
urządzenia.
ale jak pisalem mam 5 bitow wejsciowych. moze lepiej bedzie jak
podlacze rejstry rownolegle. wtedy otrzymam 4 wyjscia i czas bedzie
4 razy krotszy! :)
Równolegle łączysz wszystkie "clocki" (2) i "loady" (1). Na
"blokadę zegara" (15) podajesz 0(GND). Na zrównoleglone wejście "clock"
[...]
ok. ja znalazlem pdf'a od hef4021, mysle, ze moze byc (jak sadzisz?)
bede wiec bazowal na nim.
powiedz mi prosze czy zadziala cos takiego?:
mam 4 niezalezne rejestry. kazdy ma 8 wejsc rownoleglych i po
jednym wyjsciu szeregowym. ma tez zegar, PL (parallel load) i DS
(z ktorego nie bede chyba korzystal) - serial data input.
podlaczam po 8 linii do wejsc. podlaczam 4 linie do wejsc 5-bitowego
urzadzenia. podlaczam zegar (ten sam do wszystkich scalakow).
podlaczam PL (rowniez to samo do wszystkich).
algorytm dzialania:
1) wyslij 1 na PL
2) poczekaj min. czas zapisu (wlasnie, ile to moze byc?)
3) wyslij 0 na PL
4) wysylam 0 na CP
5) czytam wyjscie szeregowe kazdego rejestru (mam 4 bity)
6) wysylam 1 na CP
7) poczekaj odwrotnosc maxymalnej czestotliwosci zegara :)
(ok. 1/86000000 sekundy)
8) powtarzam kroki 4-7 7 razy
w ten sposob mam 8 razy po 4 bity = 32 bity. :)
nie do konca tylko rozumiem opis tego rejstru (pdf) i nie jestem
pewien czy DS nie ma tu kluczowego znaczenia.
mozesz dokladnie przeanalizowac moj pomysl i powiedziec czy ma
szanse zadzialac?
--
Lukasz Sacha <luke_at_nospam_is.com.pl>
From: Janusz Raniszewski <rniski_at_nospam_man.koszalin.pl>
Subject: Re: problem z cyfrowka...
Date: Sat, 03 Aug 2002 03:40:01 +0200
ok. ja znalazlem pdf'a od hef4021, mysle, ze moze byc (jak sadzisz?)
bede wiec bazowal na nim.
powiedz mi prosze czy zadziala cos takiego?:
mam 4 niezalezne rejestry. kazdy ma 8 wejsc rownoleglych i po
jednym wyjsciu szeregowym. ma tez zegar, PL (parallel load) i DS
(z ktorego nie bede chyba korzystal) - serial data input.
podlaczam po 8 linii do wejsc. podlaczam 4 linie do wejsc 5-bitowego
Czemu 4 linie? zegar (CP), PL, data output - 3 linie. Te data output musi być a
nie napisałeś o nim
Podłączasz 3 linie. Jedna zbiera dane z wyjścia ostatniego z rejestrów a na dwie
pozostałe wyrzucasz sygnał CP i PL.
urzadzenia. podlaczam zegar (ten sam do wszystkich scalakow).
podlaczam PL (rowniez to samo do wszystkich).
OK
algorytm dzialania:
1) wyslij 1 na PL
i tutaj mam wątpliwość nie mam PDFa 4021. Sygnałem aktywnym może być 1 albo 0.
Chociaż w CMOSach częściej jest 1 a w TTLach 0. To czy 1 czy zero musisz jednak
sprawdzić.
2) poczekaj min. czas zapisu (wlasnie, ile to moze byc?)
1uS lub dłużej
3) wyslij 0 na PL
4) wysylam 0 na CP
Uwagi jak poprzednio tylko odnośnie zbocza. Nie wiem czy zbocze narastające czy
opadające jest sygnałem zegarowym
5) czytam wyjscie szeregowe kazdego rejestru (mam 4 bity)
Nie, sygnał zegarowy CP przesuwa informację, którą zatrzasnąłeś sygnałem PL o
jedną pozycję. To znaczy, że na wyjściu serial pojawi się ostatni z bitów. Ale
Ty masz tylko 5 pinów czyli nie możesz czytać czterech rejestrów. Tą przesuniętą
informację wczytujesz do kolejnego rejestru wejściem DS (szeregowo połączone
rejestry) a czytasz tylko 1 ostatni bit czyli masz odpowiednik 32 bitowego
rejestru.
6) wysylam 1 na CP
7) poczekaj odwrotnosc maxymalnej czestotliwosci zegara :)
(ok. 1/86000000 sekundy)
Załóż dla 4021 maksymalną częstotliwość zegara 1MHz czyli 1/1000000 s. Zależy
ona od napięcia zasilania i dla 5V nie jest rewelacyjna. Poza tym jeżeli Twoje 5
bitowe urządzenie jest TTLowe to CMOS nie wysteruje. Na pocieszenie TTLowych już
prawie się nie spotyka.
8) powtarzam kroki 4-7 7 razy
32 razy zegar aby przesunąć/wybrać cały rejestr potem znowu PL i tak dalej
w ten sposob mam 8 razy po 4 bity = 32 bity. :)
nie do konca tylko rozumiem opis tego rejstru (pdf) i nie jestem
pewien czy DS nie ma tu kluczowego znaczenia.
mozesz dokladnie przeanalizowac moj pomysl i powiedziec czy ma
szanse zadzialac?
Jeżeli połączysz rejestry szeregowo masz 32x1bit. Z tego co przeczytałem z
Twoich poprzednich postów możesz na nich robić operację XOR aby wyłapać zmiany.
JanuszR
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: Re: problem z cyfrowka...
Date: 3 Aug 2002 10:41:53 GMT
In article <3D4B3471.DB69CF23_at_nospam_man.koszalin.pl>, Janusz Raniszewski wrote:
ok. ja znalazlem pdf'a od hef4021, mysle, ze moze byc (jak sadzisz?)
bede wiec bazowal na nim.
powiedz mi prosze czy zadziala cos takiego?:
mam 4 niezalezne rejestry. kazdy ma 8 wejsc rownoleglych i po
jednym wyjsciu szeregowym. ma tez zegar, PL (parallel load) i DS
(z ktorego nie bede chyba korzystal) - serial data input.
podlaczam po 8 linii do wejsc. podlaczam 4 linie do wejsc 5-bitowego
Czemu 4 linie? zegar (CP), PL, data output - 3 linie. Te data output musi być a
nie napisałeś o nim
Podłączasz 3 linie. Jedna zbiera dane z wyjścia ostatniego z rejestrów a na dwie
pozostałe wyrzucasz sygnał CP i PL.
urzadzenia. podlaczam zegar (ten sam do wszystkich scalakow).
ok. moze znow nie wyrazilem sie jasno...
chce je podlaczyc rownolegle! w ten sposo mam 32 wejscia i 4 wyjscia
i tak mam 4 wejscia, czemu korzystac tylko z jednego i robic wszystko
4 razy wolniej?! chyba, ze czegos nie rozumiem i tak sie nie da?
(uwaga, o liniach wyjsciowych urzadzenia nic nie mowile, ale posiada
ono rowniez takie - moge przez nie puscic CP i PL)
algorytm dzialania:
1) wyslij 1 na PL
i tutaj mam wątpliwość nie mam PDFa 4021. Sygnałem aktywnym może być 1 albo 0.
Chociaż w CMOSach częściej jest 1 a w TTLach 0. To czy 1 czy zero musisz jednak
sprawdzić.
informacja na podstawie pdf'a.
2) poczekaj min. czas zapisu (wlasnie, ile to moze byc?)
1uS lub dłużej
jesli moim urzadzeniem jest komputer, a konkretniej jego inteface
lpt, to opoznienia lpt, sa chyba wieksze nic min. opoznienie cmos'a.
wiec moge chyba olac cale to czekania, czy nie?
3) wyslij 0 na PL
4) wysylam 0 na CP
Uwagi jak poprzednio tylko odnośnie zbocza. Nie wiem czy zbocze narastające czy
opadające jest sygnałem zegarowym
to wszystko sprawdzilem, zanim napisalem,
5) czytam wyjscie szeregowe kazdego rejestru (mam 4 bity)
Nie, sygnał zegarowy CP przesuwa informację, którą zatrzasnąłeś sygnałem PL o
jedną pozycję. To znaczy, że na wyjściu serial pojawi się ostatni z bitów. Ale
Ty masz tylko 5 pinów czyli nie możesz czytać czterech rejestrów. Tą przesuniętą
informację wczytujesz do kolejnego rejestru wejściem DS (szeregowo połączone
rejestry) a czytasz tylko 1 ostatni bit czyli masz odpowiednik 32 bitowego
rejestru.
tak jak pisalem juz wczesniej. czemu nie polaczyc ich rownolegle?
6) wysylam 1 na CP
7) poczekaj odwrotnosc maxymalnej czestotliwosci zegara :)
(ok. 1/86000000 sekundy)
Załóż dla 4021 maksymalną częstotliwość zegara 1MHz czyli 1/1000000 s. Zależy
ona od napięcia zasilania i dla 5V nie jest rewelacyjna. Poza tym jeżeli Twoje 5
bitowe urządzenie jest TTLowe to CMOS nie wysteruje. Na pocieszenie TTLowych już
prawie się nie spotyka.
no coz... lpt chyba wlasnie wysyla sygnal zgodny z ttl :)
8) powtarzam kroki 4-7 7 razy
32 razy zegar aby przesunąć/wybrać cały rejestr potem znowu PL i tak dalej
w ten sposob mam 8 razy po 4 bity = 32 bity. :)
nie do konca tylko rozumiem opis tego rejstru (pdf) i nie jestem
pewien czy DS nie ma tu kluczowego znaczenia.
mozesz dokladnie przeanalizowac moj pomysl i powiedziec czy ma
szanse zadzialac?
Jeżeli połączysz rejestry szeregowo masz 32x1bit. Z tego co przeczytałem z
Twoich poprzednich postów możesz na nich robić operację XOR aby wyłapać zmiany.
kiedy juz dostaje na wejscie pelny sygnal, to zminay mnie nie interesuja.
zminay byly tylko po to, zeby uproscic wysylanie calego sygnalu.
to jest lepsze rozwiazanie.
mam nadzieje, ze teraz bardziej rozumiesz moja koncepcje...
spojrz jeszcze raz na "algorytm" z punktu widzenia podlaczenia
rownoleglego ;)
--
Lukasz Sacha <luke_at_nospam_is.com.pl>
From: Janusz Raniszewski <rniski_at_nospam_man.koszalin.pl>
Subject: Re: problem z cyfrowka...
Date: Sat, 03 Aug 2002 21:26:35 +0200
ok. moze znow nie wyrazilem sie jasno...
chce je podlaczyc rownolegle! w ten sposo mam 32 wejscia i 4 wyjscia
i tak mam 4 wejscia, czemu korzystac tylko z jednego i robic wszystko
4 razy wolniej?! chyba, ze czegos nie rozumiem i tak sie nie da?
(uwaga, o liniach wyjsciowych urzadzenia nic nie mowile, ale posiada
ono rowniez takie - moge przez nie puscic CP i PL)
OK
jesli moim urzadzeniem jest komputer, a konkretniej jego inteface
lpt, to opoznienia lpt, sa chyba wieksze nic min. opoznienie cmos'a.
wiec moge chyba olac cale to czekania, czy nie?
OK
Uwagi jak poprzednio tylko odnośnie zbocza. Nie wiem czy zbocze narastające czy
opadające jest sygnałem zegarowym
to wszystko sprawdzilem, zanim napisalem,
OK
5) czytam wyjscie szeregowe kazdego rejestru (mam 4 bity)
Nie, sygnał zegarowy CP przesuwa informację, którą zatrzasnąłeś sygnałem PL o
jedną pozycję. To znaczy, że na wyjściu serial pojawi się ostatni z bitów. Ale
Ty masz tylko 5 pinów czyli nie możesz czytać czterech rejestrów. Tą przesuniętą
informację wczytujesz do kolejnego rejestru wejściem DS (szeregowo połączone
rejestry) a czytasz tylko 1 ostatni bit czyli masz odpowiednik 32 bitowego
rejestru.
tak jak pisalem juz wczesniej. czemu nie polaczyc ich rownolegle?
Jeżeli faktycznie masz piny na PL i CP można równolegle
kiedy juz dostaje na wejscie pelny sygnal, to zminay mnie nie interesuja.
zminay byly tylko po to, zeby uproscic wysylanie calego sygnalu.
to jest lepsze rozwiazanie.
Zatem wszystko powinno działać :)
JanuszR