Witam. Nowy tu raczej nie jestem, bo przeglądam forum codziennie, ale zarejestrowałem się niedawno, bo wcześniej nie było potrzeby pisania
. No to się przywitałem, a teraz na początek: montuję sobie coś w rodzaju półautomatycznego spudguna, i chciałbym zamontować tam licznik amunicji
.
Multipleksowany 2cyfrowy LED, i Atmega8 (może i wystarczy mniejszy uC ale jakoś tak wolę taki). I w związku z tym mam kilka pytań:
- licznik ma zliczać tylko puszczenie przycisku (bo to semi-auto), więc pomyślałem o przerwaniach. To dobry pomysł? Jeśli tak, to mam ustawić na opadające zbocze (puszczenie przycisku)? Przycisk przeładowania, wciśnięty do czasu wyciągnięcia magazynka mam ustawić na narastające, żeby łapał samo wciśnięcie?
-drugie pytanie związane z multipleksowaniem, czyli mam w (nieskończonej) pętli przełączać na zmianę segmenty, i zapalać odpowiednie LEDy, tylko czy muszę jakoś ograniczyć częstotliwość multipleksowania? Jeśli tak, to jak?
-trzecie pytanie: po osiągnięciu zera ma zapalić się czerwona dioda (to umiem oczywiście
), ale po wciśnięciu spustu pomimo zera chcę, żeby dioda i licznik zaczęły przez chwilę migać (jak pasek tytułu, po otwarciu okna modalnego i kliknięciu w główne). Jak mam to zrobić? Z samym miganiem sobie poradzę, tylko jak ograniczyć częstotliwość, żeby człowiek mógł zobaczyć, dajmy na to 3 mignięcia w ciągu sekundy?
-i jeszcze jedno: po np. 30 sekundach bezczynności (brak sygnału przerwań) cały układ ma przejść w stan uśpienia (przerwanie wybudzi uC?). Mam po prostu włączyć jakiś timer (jaki?), i liczyć impulsy, a w przerwaniu je zerować?
-ostatnie: chyba nie potrzebne mi są zewnętrzne rezonatory/generatory?
Na razie to chyba wszystko. Aha, program będę pisał w C, jeśli to coś zmienia.
PS. Czerwony czy zielony wyświetlacz lepiej pasuje?
Multipleksowany 2cyfrowy LED, i Atmega8 (może i wystarczy mniejszy uC ale jakoś tak wolę taki). I w związku z tym mam kilka pytań:
- licznik ma zliczać tylko puszczenie przycisku (bo to semi-auto), więc pomyślałem o przerwaniach. To dobry pomysł? Jeśli tak, to mam ustawić na opadające zbocze (puszczenie przycisku)? Przycisk przeładowania, wciśnięty do czasu wyciągnięcia magazynka mam ustawić na narastające, żeby łapał samo wciśnięcie?
-drugie pytanie związane z multipleksowaniem, czyli mam w (nieskończonej) pętli przełączać na zmianę segmenty, i zapalać odpowiednie LEDy, tylko czy muszę jakoś ograniczyć częstotliwość multipleksowania? Jeśli tak, to jak?
-trzecie pytanie: po osiągnięciu zera ma zapalić się czerwona dioda (to umiem oczywiście
-i jeszcze jedno: po np. 30 sekundach bezczynności (brak sygnału przerwań) cały układ ma przejść w stan uśpienia (przerwanie wybudzi uC?). Mam po prostu włączyć jakiś timer (jaki?), i liczyć impulsy, a w przerwaniu je zerować?
-ostatnie: chyba nie potrzebne mi są zewnętrzne rezonatory/generatory?
Na razie to chyba wszystko. Aha, program będę pisał w C, jeśli to coś zmienia.
PS. Czerwony czy zielony wyświetlacz lepiej pasuje?
