Skocz do zawartości

Użycie enkodera z przerwaniami


adisaf

Pomocna odpowiedź

Cześć.

Mam taki problem, mam program do obsługi radia i chcę za pomocą enkodera wybierać odpowiednie stacje. Mam zmienną do której zapisuje pozycje enkodera (wzorowałem się na kursie Forbota z stm32F4) potem za pomocą instrukcji switch sprawdzam tę pozycję i na tej podstawie wykonuję się odpowiedni case który ustawia stację, to nie jest optymalne bo muszę to zapętlać żeby co chwilę sprawdzać pozycję enkodera. Nie wiem czy słusznie, ale wydaje mi się że powinienem tutaj użyć przerwań i jakiejś funkcji callback. Moje pytanie brzmi jak skonfigurować Timer, a następnie co zrobić żeby program wykrywał zmianę pozycji enkodera? Dodam jeszcze że przeglądałem dokumentacje biblioteki HAL i dalej nie jestem w stanie tego zrobić.

Mam nadzieję że w miarę jasno to przedstawiłem dołączyłem jeszcze screen aktualnego programu (jest bardzo prymitywny ale sprawdzałem czy wszystko inne działa :D) 

 

1.jpg

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.