- posted
12 years ago
stary 89c2051 i kondzior na P1
- Vote on answer
- posted
12 years ago
Przeczytaj jeszcze raz co napisałeś i dopisz jeszcze o co ci chodzi.
Waldek
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
W dniu 20.10.2011 17:57, identifikator: 20110701 pisze:
Po pierwsze to jeszcze rezystor w szereg, po drugie czemu miałoby nie działać?
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
W dniu 2011-10-20 18:02, Michoo 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. K.
- Vote on answer
- posted
12 years ago
W dniu 20.10.2011 18:29, John Smith pisze:
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?
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
W dniu 2011-10-20 18:58, Michoo pisze:
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.- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
W dniu 2011-10-20 21:20, Grzegorz Niemirowski pisze:
W "starym 8051"? Jak nie ma w dokumentacji, to w scalaku też nie ma. Zresztą, doradzałem pobawienie się oscyloskopem. K.
- Vote on answer
- posted
12 years ago
W dniu 20.10.2011 21:17, John Smith pisze:
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ć.
Tak. Ale przy cyfrowym filtrowaniu tez trzeba. Może odrobinę krócej.
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
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
Użytkownik John Smith napisał: [..]
Tej metody + kondensatory bodajze 100nF bez opornikow uzylem w ukladzie z 89c2051 jak spawarka sasiada wyzwalala wejscia klawiszy. Czasy dobieralem eksperymentalnie.
- Vote on answer
- posted
12 years ago
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.
20ms, czas stały. Przerwanie wyzwalane timer'em.Przy systemach pracujących w czasie rzeczywistym, to prosty sposób na zawieszanie się oprogramowania wraz z zużywającym się zestykiem. K.
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
- Vote on answer
- posted
12 years ago
In the darkest hour on Thu, 20 Oct 2011 18:58:59 +0200, Michoo <michoo snipped-for-privacy@vp.pl screamed:
Już mu to kiedyś podsyłałem. Widać za skomplikowane.