Poprzedni temat «» Następny temat
Program DSM51 Pomocy
Autor Wiadomość
kaczass 
Nowy na forum


Dołączył: 24 Maj 2013
Posty: 1
Skąd: Polska
Wysłany: 2013-05-24, 11:27   Program DSM51 Pomocy

Witam, mam napisać program w ,którym dioda mruga a po wduszenu przykładowo strzałki w gore zwiększa 0 1s się czestotliwość migania a po wduszeniu strzałki w dól częstotlwość migania zmniejsza się o 1s. Z góry dziękuje za pomoc bo wgl nic z tego nie rozumiem :( Pozdrawiam :)
 
     
Ertew 
-.^



Wiek: 26
Dołączył: 03 Lip 2005
Posty: 1347
Skąd: Leszno
Wysłany: 2013-05-24, 18:40   

Po pierwsze, jeśli jesteś studentem, należy się tygodniowy ban na cały internet i przymusowy areszt w miejscu zwanym biblioteką ! :!:
Częstotliwość wyraża się w Hertzach [hz] ! :!:
W sekundach [s] możesz wyrazić okres całego przebiegu lub czas trwania jednego stanu.
________________________________________________




Czyżby zbliżała się sesja, kolega obijał się na zajęciach, a teraz przychodzi okres zaliczenia?

Miganie to pętla w której uC czeka powiedzmy 0.5s (*1) i zmniejsza licznik (*2). Gdy licznik się wyzeruje (*3), ładuje do niego zawartość z pamięci (*4), zmienia stan LEDa i od nowa 'pętli się' przez określony czas.

Odczyt klawiatury może być prostszy lub trudniejszy, zależy którą klawiaturę musisz obsługiwać. Klawiatura pod LCD jest stworzona do prostego odczytu (*5), ta pod 7-segmentowcami wymaga wysterowania owych wyświetlaczy (*6), ale później uzyskane dane są dużo prostsze w interpretacji.

Kolejna kwestia to interpretacja uzyskanych danych z klawiszy i zwiększenie/zmniejszenie zmiennej oczekiwania. Można to robić przy każdym przebiegu pętli (co 0.5s) zawsze gdy profesor trzyma klawisz (rozwiązanie brzydkie, bo generuje opóźnienia), albo opóźnienie rozbić na 5 kroków po 100ms i zwiększać/zmniejszać ten czas po wykryciu naciśnięcia klawisza.
Drugie rozwiązanie powoduje jednak, że trzeba pamiętać czy w poprzednim kroku klawisz był wciśnięty czy nie.






Podpowiedzi:

1. Wybierz funkcję czekania czasu wbudowaną w DSM, jedna z nich daje możliwość odczekania takiego czasu jak potrzeba.
2. Dowolny rejestr z którego nie korzysta funkcja *1, ja bym używał ich od końca, czyli R7.
3. DJNZ
4. Potrzebujesz drugi rejestr, patrz *2
5. Patrz mapa przestrzeni adresowej, możesz odczytać w 4 instrukcjach, kolejne odczyty to 1 instrukcja.
6. Wybierasz jedną z cyfr wyświetlaczy 7-seg i na raz odczytujesz tylko jeden odpowiadający jej klawisz. Instrukcji robi się kilkanaście, ale to chyba nie kosmos.
 
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  


Powered by phpBB modified by Przemo © 2003 phpBB Group
Strona wygenerowana w 0,02 sekundy. Zapytań do SQL: 11