-
11. Data: 2011-10-20 19:36:07
Temat: Re: stary 89c2051 i kondzior na P1
Od: John Smith <d...@b...pl>
W dniu 2011-10-20 21:20, Grzegorz Niemirowski pisze:
> John Smith <d...@b...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.
-
12. Data: 2011-10-20 20:00:24
Temat: Re: stary 89c2051 i kondzior na P1
Od: Michoo <m...@v...pl>
W dniu 20.10.2011 21:17, John Smith pisze:
> 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ć.
> 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.
> 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
-
13. Data: 2011-10-20 20:24:35
Temat: Re: stary 89c2051 i kondzior na P1
Od: "Remek" <d...@g...com>
Użytkownik "identifikator: 20110701" napisał:
> 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.
-
14. Data: 2011-10-21 08:45:16
Temat: Re: stary 89c2051 i kondzior na P1
Od: AlexY <a...@i...pl>
Użytkownik John Smith napisał:
[..]
> 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
-
15. Data: 2011-10-21 15:15:26
Temat: Re: stary 89c2051 i kondzior na P1
Od: John Smith <d...@b...pl>
> 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.
>> 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.
>> 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.
-
16. Data: 2011-10-21 17:30:04
Temat: Re: stary 89c2051 i kondzior na P1
Od: "identifikator: 20110701" <N...@g...pl>
> Komdzior, komp, nieuk.
wolę być nieuk niż burak capie...
-
17. Data: 2011-10-21 17:32:27
Temat: Re: stary 89c2051 i kondzior na P1
Od: "identifikator: 20110701" <N...@g...pl>
chodzi o włączanie i wyłączanie z trybu uśpienia procka...
nie wiem, ale może macie rację i obyło by się z samym przyciskiem...
jakbym procedurę obsługi wyjścia napisał taką:
przerwanie: reti
a w programie głównym czekał z sekundę...
-
18. Data: 2011-10-21 18:18:56
Temat: Re: stary 89c2051 i kondzior na P1
Od: "identifikator: 20110701" <N...@g...pl>
> wolę być nieuk niż burak capie...
taki żart.
-
19. Data: 2011-10-22 15:07:57
Temat: Re: stary 89c2051 i kondzior na P1
Od: "Artur M. Piwko" <m...@b...pl>
In the darkest hour on Thu, 20 Oct 2011 18:58:59 +0200,
Michoo <m...@v...pl> screamed:
>> 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 \
> | |
> - -
Już mu to kiedyś podsyłałem. Widać za skomplikowane.
--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:240B ]
[ 17:07:11 user up 12963 days, 5:02, 1 user, load average: 0.18, 0.38, 0.04 ]
My Father had a profound influence on me, he was a lunatic. -- Spike Milligan