Goto page 1, 2 Next
identifikator: 20110701
Guest
Thu Oct 20, 2011 2:49 pm
czy można dołączyć którąś linię portu do przycisku z dużym kondziorem?
chodzi o szybkość narastania - ma Ktoś doświadczenie?
Waldemar Krzok
Guest
Thu Oct 20, 2011 3:25 pm
identifikator: 20110701 wrote:
Quote:
czy można dołączyć którąś linię portu do przycisku z dużym kondziorem?
chodzi o szybkość narastania - ma Ktoś doświadczenie?
Przeczytaj jeszcze raz co napisałeś i dopisz jeszcze o co ci chodzi.
Waldek
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
identifikator: 20110701
Guest
Thu Oct 20, 2011 3:57 pm
Quote:
Przeczytaj jeszcze raz co napisałeś i dopisz jeszcze o co ci chodzi.
a co nie zrozumiałeś?

P
chodzi o podpięcie przycisku do portu, ale równolegle z dużym kondziorem...
no chyba, że Ktoś ma inny tani pomysł na drgania zestyków?
Michoo
Guest
Thu Oct 20, 2011 4:02 pm
W dniu 20.10.2011 17:57, identifikator: 20110701 pisze:
Quote:
Przeczytaj jeszcze raz co napisałeś i dopisz jeszcze o co ci chodzi.
a co nie zrozumiałeś?

P
chodzi o podpięcie przycisku do portu, ale równolegle z dużym
kondziorem... no chyba, że Ktoś ma inny tani pomysł na drgania zestyków?
Po pierwsze to jeszcze rezystor w szereg, po drugie czemu miałoby nie
działać?
--
Pozdrawiam
Michoo
Grzegorz Niemirowski
Guest
Thu Oct 20, 2011 4:28 pm
identifikator: 20110701 <NOSPAMtestowanije@go2.pl> napisał(a):
Quote:
czy można dołączyć którąś linię portu do przycisku z dużym kondziorem?
chodzi o szybkość narastania - ma Ktoś doświadczenie?
Zawsze możesz eliminować skutki drgań programowo, licząc czas od ostatniej
zmiany stanu.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express:
http://www.grzegorz.net/oe/
Uptime: 8 days, 15 hours, 7 minutes and 12 seconds
John Smith
Guest
Thu Oct 20, 2011 4:29 pm
W dniu 2011-10-20 18:02, Michoo pisze:
Quote:
W dniu 20.10.2011 17:57, identifikator: 20110701 pisze:
Przeczytaj jeszcze raz co napisałeś i dopisz jeszcze o co ci chodzi.
a co nie zrozumiałeś?

P
chodzi o podpięcie przycisku do portu, ale równolegle z dużym
kondziorem... no chyba, że Ktoś ma inny tani pomysł na drgania zestyków?
Po pierwsze to jeszcze rezystor w szereg, po drugie czemu miałoby nie
działać?
Odpowiem Ci receptą, na Twoje pytanie użyte w charakterze odpowiedzi:
wystarczy zdjąć oscylogram a będziesz miał odpowiedź.
Nie tak się niweluje drgania zestyków.
K.
Michoo
Guest
Thu Oct 20, 2011 4:58 pm
W dniu 20.10.2011 18:29, John Smith pisze:
Quote:
Odpowiem Ci receptą, na Twoje pytanie użyte w charakterze odpowiedzi:
wystarczy zdjąć oscylogram a będziesz miał odpowiedź.
Nie tak się niweluje drgania zestyków.
Układ:
^
|
[ ] R1
|
Pin ----[ ]---
| R2 |
| \ S1
= C1 \
| |
- -
Opis:
Normalnie mamy na C1 wysoki stan z podciągnięcia przez R1 do +
zasilania, po naciśnięciu S1 C1 zaczyna się rozładowywać przez R2 do
masy. Stała czasowa jest tak dobrana, że rozładowanie C1 do poziomu
przełączenia pinu trwa dłużej niż wynosi ewentualny czas odbijania pinu.
Na oscylogramie powinien być standardowy wykres rozładowywania
kondensatora z ewentualnymi drobnymi podskokami "w górę".
Dlaczego taki układ nie zadziała?
--
Pozdrawiam
Michoo
identifikator: 20110701
Guest
Thu Oct 20, 2011 5:15 pm
Quote:
Dlaczego taki układ nie zadziała?
bo przy pewnym napięciu oba tranzystowy podstawowej komórki NOT technologii
cmos będą przewodziły, to ponoć szkodliwe... jakieś tam tyrtystory i takie
tam... chyba.
John Smith
Guest
Thu Oct 20, 2011 7:17 pm
W dniu 2011-10-20 18:58, Michoo pisze:
Quote:
W dniu 20.10.2011 18:29, John Smith pisze:
Odpowiem Ci receptą, na Twoje pytanie użyte w charakterze odpowiedzi:
wystarczy zdjąć oscylogram a będziesz miał odpowiedź.
Nie tak się niweluje drgania zestyków.
Układ:
^
|
[ ] R1
|
Pin ----[ ]---
| R2 |
| \ S1
= C1 \
| |
- -
Opis:
Normalnie mamy na C1 wysoki stan z podciągnięcia przez R1 do +
zasilania, po naciśnięciu S1 C1 zaczyna się rozładowywać przez R2 do
masy. Stała czasowa jest tak dobrana, że rozładowanie C1 do poziomu
przełączenia pinu trwa dłużej niż wynosi ewentualny czas odbijania pinu.
Na oscylogramie powinien być standardowy wykres rozładowywania
kondensatora z ewentualnymi drobnymi podskokami "w górę".
Dlaczego taki układ nie zadziała?
Aby taki układ jeszcze miał szansę niezawodnego działania, musiałbyś
dodać wejście z histerezą napięcia. Gdy drgania zestyków wygenerują
przebieg pomiędzy poziomami L i H, będą przypadkowe interpretacje
naciśnięcia klawisza.
Wieloletnie doświadczenia z klawiaturami, wskazują, iż zjawisko
odbijania zestyków nie ma charakteru stałego. Na początku używania
trafiają się takie, co nie odbijają w ogóle lub mało, po kilku latach
i zakurzeniu, trzeszczą aż miło.
Układ z analogowym filtrem traci też na dynamice obsługi, klawisz trzeba
przytrzymać, aby się kondensator przeładował.
Obecnie przyjęło się programowe odczytywanie stanu zestyku, typowo po
20ms, porównaniu stanów i gdy wskazania naciśnięcia są jednakowe
sygnalizacja takiego zdarzenia.
K.
Grzegorz Niemirowski
Guest
Thu Oct 20, 2011 7:20 pm
John Smith <dam9723@buziaczek.pl> napisał(a):
Quote:
Aby taki układ jeszcze miał szansę niezawodnego działania, musiałbyś dodać
wejście z histerezą napięcia.
A port nie ma takiej histerezy? Nie mogę jakoś wygooglać budowy wewnętrznej
portów tego procka.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express:
http://www.grzegorz.net/oe/
Uptime: 8 days, 17 hours, 59 minutes and 16 seconds
John Smith
Guest
Thu Oct 20, 2011 7:36 pm
W dniu 2011-10-20 21:20, Grzegorz Niemirowski pisze:
Quote:
John Smith <dam9723@buziaczek.pl> napisał(a):
Aby taki układ jeszcze miał szansę niezawodnego działania, musiałbyś
dodać wejście z histerezą napięcia.
A port nie ma takiej histerezy? Nie mogę jakoś wygooglać budowy
wewnętrznej portów tego procka.
W "starym 8051"? Jak nie ma w dokumentacji, to w scalaku też nie ma.
Zresztą, doradzałem pobawienie się oscyloskopem.
K.
Michoo
Guest
Thu Oct 20, 2011 8:00 pm
W dniu 20.10.2011 21:17, John Smith pisze:
Quote:
W dniu 2011-10-20 18:58, Michoo pisze:
Dlaczego taki układ nie zadziała?
Aby taki układ jeszcze miał szansę niezawodnego działania, musiałbyś
dodać wejście z histerezą napięcia. Gdy drgania zestyków wygenerują
przebieg pomiędzy poziomami L i H, będą przypadkowe interpretacje
naciśnięcia klawisza.
Jak bardzo trzeba się postarać, żeby stan na przycisku nie był ustalony
jeszcze np po 50ms?
Btw: ja nie twierdzę, że to jest dobry układ, czy też nie jest w
środowisku produkcyjnym. Po prostu imo taki układ będzie działać zgodnie
z założeniami (skutkując być może przy okazji "leniwą" klawiaturą) ale
dla hobbisty powinien spokojnie wystarczyć.
Quote:
Układ z analogowym filtrem traci też na dynamice obsługi, klawisz trzeba
przytrzymać, aby się kondensator przeładował.
Tak. Ale przy cyfrowym filtrowaniu tez trzeba. Może odrobinę krócej.
Quote:
Obecnie przyjęło się programowe odczytywanie stanu zestyku, typowo po
20ms, porównaniu stanów i gdy wskazania naciśnięcia są jednakowe
sygnalizacja takiego zdarzenia.
Czyli po zdarzeniu na pinie odpala się odczyt za 20ms z timera? Ja znam
jeszcze 2 metody:
- pooling np co 5ms do bufora przesuwanego, zgłoszenie zbocza
narastającego gdy mamy 0x0F a opadającego gdy jest 0xF0 (lub włączenie
takiej funkcjonalności pinu jak procek obsługuje

)
- po odebraniu przerwania z danego pinu ignorowanie kolejnych przez Xms
lub ignorowanie tych następujących mniej niż t od poprzedniego
--
Pozdrawiam
Michoo
Remek
Guest
Thu Oct 20, 2011 8:24 pm
Użytkownik "identifikator: 20110701" napisał:
Quote:
czy można dołączyć którąś linię portu do przycisku z dużym kondziorem?
Skoro potrafisz tworzyć własne nazewnictwo, to pewnie będziesz potrafił znaleźć
własne rozwiązanie.
Remek
Komdzior, komp, nieuk.
AlexY
Guest
Fri Oct 21, 2011 8:45 am
Użytkownik John Smith napisał:
[..]
Quote:
Obecnie przyjęło się programowe odczytywanie stanu zestyku, typowo po
20ms, porównaniu stanów i gdy wskazania naciśnięcia są jednakowe
sygnalizacja takiego zdarzenia.
Tej metody + kondensatory bodajze 100nF bez opornikow uzylem w ukladzie
z 89c2051 jak spawarka sasiada wyzwalala wejscia klawiszy. Czasy
dobieralem eksperymentalnie.
--
AlexY
http://nadzieja.pl/inne/spam.html
http://www.pg.gda.pl/~agatek/netq.html
John Smith
Guest
Fri Oct 21, 2011 3:15 pm
Quote:
Btw: ja nie twierdzę, że to jest dobry układ, czy też nie jest w
środowisku produkcyjnym. Po prostu imo taki układ będzie działać zgodnie
z założeniami (skutkując być może przy okazji "leniwą" klawiaturą) ale
dla hobbisty powinien spokojnie wystarczyć.
Hobbysta nabierze złych nawyków, a później w CV będzie uparcie
twierdził, że N lat zajmuje się elektroniką. Autor wątku jest na dobrej
drodze zostania wiecznym amatorem.
Quote:
Układ z analogowym filtrem traci też na dynamice obsługi, klawisz trzeba
przytrzymać, aby się kondensator przeładował.
Tak. Ale przy cyfrowym filtrowaniu tez trzeba. Może odrobinę krócej.
20ms, czas stały. Przerwanie wyzwalane timer'em.
Quote:
Obecnie przyjęło się programowe odczytywanie stanu zestyku, typowo po
20ms, porównaniu stanów i gdy wskazania naciśnięcia są jednakowe
sygnalizacja takiego zdarzenia.
Czyli po zdarzeniu na pinie odpala się odczyt za 20ms z timera? Ja znam
jeszcze 2 metody:
- pooling np co 5ms do bufora przesuwanego, zgłoszenie zbocza
narastającego gdy mamy 0x0F a opadającego gdy jest 0xF0 (lub włączenie
takiej funkcjonalności pinu jak procek obsługuje

)
- po odebraniu przerwania z danego pinu ignorowanie kolejnych przez Xms
lub ignorowanie tych następujących mniej niż t od poprzedniego
Przy systemach pracujących w czasie rzeczywistym, to prosty sposób na
zawieszanie się oprogramowania wraz z zużywającym się zestykiem.
K.
Goto page 1, 2 Next