Witam wszystkich. Na zajęciach z energoelektroniki mamy za zadanie napisać prosty sterownik silnika krokowego, który ma wyglądać tak. Na dowolnym porcie ATmegi mamy zrobić sekwencję (na pinach 7,6,5,4) w konfiguracji
0001
0010
0100
1000 cykl taki musi się powtarzać. Kolejną opcją jest zrobienie przyspieszenia i zwalniania za pomocą dwóch przycisków. Wszystkie te rzeczy wykonałem że tak powiem brzydko "na chama" z racji tego, że jestem laikiem w asemblerze i nie znam jeszcze przerwań. Problem polega na tym, że program ten ma mieć przyspieszanie i zwalnianie w takiej postaci:
- wciskam sobie przycisk dajmy na to nr 1 prędkość cyklu wzrasta, wciskam drugi raz i prędkość znów wzrasta, itd. Tak samo ma wyglądać opóźnienie cyklu. Nie mam pojęcia jak wykonać taką operacje, jakimi algorytmami się posłużyć ? Czy w tym wypadku tylko przerwania ? Mój program który napisałem działa tak, że gdy wcisnę jeden przycisk i trzymam go to sekwencja przyspiesza, tak samo z drugim przyciskiem. Kiedy je puszczam wraca do "standardowego" trybu. Proszę o jakieś porady jak uporać się z problemem. Z góry dzięki i pozdrawiam
PS: oto kod:
0001
0010
0100
1000 cykl taki musi się powtarzać. Kolejną opcją jest zrobienie przyspieszenia i zwalniania za pomocą dwóch przycisków. Wszystkie te rzeczy wykonałem że tak powiem brzydko "na chama" z racji tego, że jestem laikiem w asemblerze i nie znam jeszcze przerwań. Problem polega na tym, że program ten ma mieć przyspieszanie i zwalnianie w takiej postaci:
- wciskam sobie przycisk dajmy na to nr 1 prędkość cyklu wzrasta, wciskam drugi raz i prędkość znów wzrasta, itd. Tak samo ma wyglądać opóźnienie cyklu. Nie mam pojęcia jak wykonać taką operacje, jakimi algorytmami się posłużyć ? Czy w tym wypadku tylko przerwania ? Mój program który napisałem działa tak, że gdy wcisnę jeden przycisk i trzymam go to sekwencja przyspiesza, tak samo z drugim przyciskiem. Kiedy je puszczam wraca do "standardowego" trybu. Proszę o jakieś porady jak uporać się z problemem. Z góry dzięki i pozdrawiam
Kod: text