Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[AVR][GCC][ECLIPSE] - schemat wielopoziomowego menu

adampyndzel 28 Lip 2012 01:33 3139 11
  • #1 28 Lip 2012 01:33
    adampyndzel
    Poziom 16  

    Witam.

    Chciałbym się nauczyć tworzyć wielopoziomowe menu z interpretacją graficzną na LCD. Powiedzmy mam diodę RGB sterowaną przez PWM, 5 przycisków podłączonych do mikroklocka oraz wyświetlacz. Przyciski powiedzmy będą typu +, -, prawo(dioda R), lewo (dioda B) itp. czyli tzw wybór zmiany koloru. Próbowałem już różnych możliwości i każda daje jakiś zamierzony efekt ale całości nie potrafię uzyskać. Więc proszę elektrodowiczów znających j. C o jakiś schemat lub podpowiedź w naprowadzeniu na tworzenie menu na LCD.

    1 11
  • #2 28 Lip 2012 12:11
    gulson
    Administrator Systemowy
  • #3 28 Lip 2012 13:09
    tadzik85
    Poziom 38  

    Tematy o menu na forum są. Sam umieściłem tu pewien skrypt dla początkujących.

    0
  • #4 29 Lip 2012 11:03
    adampyndzel
    Poziom 16  

    myślałem o instrukcjach wybory switch(x) w której to argument x byłby poziomem w menu, a w tych switch(x) były by zaś takie same switch(y) gdzie y to byłby poziom podmenu ale niewiem czy takie coś to dobre myślenie.

    0
  • #5 29 Lip 2012 11:43
    tymon_x
    Poziom 30  

    adampyndzel napisał:
    myślałem o instrukcjach wybory switch(x) w której to argument x byłby poziomem w menu, a w tych switch(x) były by zaś takie same switch(y) gdzie y to byłby poziom podmenu ale niewiem czy takie coś to dobre myślenie.

    Za dużo niepotrzebnego kodzenia, lepszy wyborem jest pewna struktura opisująca obiekt, bardzo przydatne wskaźniki na funkcje, wskaźniki łączące kolejne obiekty w listę i tak dalej. Kolejność w pionie byłaby trzymana w tablicy, poziome też, ale tablica z menu miałaby wskaźnik do tablicy Swoich opcji, podmenu. Łatwiej coś takiego hermetyzować, trzymać wszystkie właściwości obiektu (rozmiar, kolor, metody rysowania, wywołania akcji i itp) i rozbudować o dalsze opcje. Bardziej elastycznie wygląda wykorzystanie przydziału dynamicznego za pomocą malloc, bo wtedy można obejść sztywną tablicę.

    0
  • #6 29 Lip 2012 12:13
    gaskoin
    Poziom 38  

    Sam gdzieś wrzuciłem na forum kod o którym pisze tymon. switche są bez sensu z tego względu, że jakiekolwiek modyfikacje typu zmiana rozmiaru, dodanie menu to jest masakra dla programującego.

    Na potrzeby alfanumerycznego wyświetlacza i menu w jednej linijce, struktura może trzymać wskaźniki do elementu poprzedniego, następnego i do pierwszego elementu podmenu(który ma ten sam typ) itd.

    Całość wymaga trochę większej gimnastyki, ale efekt finalny jest bardzo elastyczny.

    1
  • #8 29 Lip 2012 16:13
    Elektronik9
    Poziom 30  

    Wielopoziomowe menu w C dla LCD masz w książce Tomasza Francuza.

    0
  • #9 08 Sie 2012 21:41
    adampyndzel
    Poziom 16  

    Cytat:
    Wielopoziomowe menu w C dla LCD masz w książce Tomasza Francuza.


    a jeśli ktoś niema książki Tomasza Francuza???

    0
  • #10 08 Sie 2012 21:49
    perlon
    Poziom 19  

    Kody źródłowe z książki są na FTP Helionu dostępne dla każdego.

    0
  • #12 09 Sie 2012 08:19
    94075
    Użytkownik usunął konto