Witam.
Jak zwykle niechętnie zakładam temat z prośbą ale niestety czas i nóż na gardle mnie do tego zmusza.
![Smutny :(](https://forum.atnel.pl/images/smilies/icon_e_sad.gif)
Zaadaptowałem sobie (czyt. ułożyłem strukturę opcji pod swój sterownik) menu z książki tmf'a (z tego tematu
http://forum.atnel.pl/topic1861.html - po poprawkach naszych Forumowiczów).
Mam problem ze skutecznym podpięciem funkcji do opcji tego menu. Przejście z menu do submenu a następnie do jakiejś opcji, powoduje wywołanie funkcji
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Oczywiście zawartość tej funkcji to przykładowy kod, który wykona się tylko raz po naciśnięciu przycisku. Mi chodzi o to, aby po wejściu w daną opcję, dało się zmienić jakiś parametr, np. czas a po ustawieniu wyjść z edycji jednocześnie zapisując ustawienie do eeprom.
Zacząłem kombinować z ustawianiem flagi po wciśnięciu klawisza i uruchamianiem odpowiedniej funkcji w pętli while(1). No i tu mi się zaczyna wszystko gryźć bo o ile z pomocą timera programowego jakoś mi się to wyświetlało na lcd, to do obsługi menu używam jednych funkcji klawiszy w oparciu o SuperDebounce Mirka, a do edycji parametru drugich funkcji - kolejna flaga zmieniająca ustawienia klawiszy. Do tego występuje efekt nakładania się wywoływanej funkcji - np. napisów w pętli while(1) na wyświetlane menu.
Jak się za to skutecznie zabrać, żeby nie "oflagować" całej pętli głównej ?