Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 28 kwi 2024, o 02:51


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 49 ]  Przejdź na stronę Poprzednia strona  1, 2
Autor Wiadomość
 Tytuł: Re: Menu na LCD
PostNapisane: 29 paź 2013, o 14:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

A u mnie wywala taki błąd:

Kod:
14:01:39 **** Build of configuration Release for project menu_przyklad ****
make all
Building file: ../menu/menu.c
Invoking: AVR Compiler
avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega16 -DF_CPU=16000000UL -MMD -MP -MF"menu/menu.d" -MT"menu/menu.d" -c -o "menu/menu.o" "../menu/menu.c"
../menu/menu.c:13:7: error: variable 'tmenu1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
../menu/menu.c:14:7: error: variable 'tmenu2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
../menu/menu.c:15:7: error: variable 'tmenu3' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
../menu/menu.c:16:7: error: variable 'tsub11' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
../menu/menu.c:17:7: error: variable 'tsub12' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
../menu/menu.c:18:7: error: variable 'tmenu21' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
make: *** [menu/menu.o] Błąd 1

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 29 paź 2013, o 15:34 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

a dokładniej tutaj:

http://mirekk36.blogspot.com/2012/08/ec ... zytaj.html

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 11 sty 2015, o 19:00 
Offline
Użytkownik

Dołączył(a): 05 lut 2014
Posty: 252
Lokalizacja: obok Częstochowy
Pomógł: 14

Witam. Próbowałem samodzielnie te "consty" powstawiać, żeby do atmelowskiego toolchaina dostosować ale wymiękłem.
Może ktoś wkleić jak to ma być ?

EDIT: No i zrobione. W Keplerze jakieś dziwne błędy pokazywało, a na Lunie ładnie się skompilowało.

EDIT: Jednak nie to było powodem moich utrapień. W bibliotece do obsługi pilota miałem
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

i to się pożarło ze zmiennymi w pliku menu.h :P



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 3 mar 2015, o 07:49 
Offline
Nowy

Dołączył(a): 28 sty 2015
Posty: 13
Pomógł: 0

Witam. Mam na imię Kamil jestem początkujący jeśli chodzi i programowanie mikrokontrolerów AVR. Zainteresowałem się menu pana lukasz89 i chciałbym sprawdzić jak działa na swoim zestawie.

Mam problem z plikiem menu.c w folderze menu. Dlaczego wywala mi takie błędy? Pliki lcd44780.h i klaw.h istnieją więc w czym problem?

Jeśli temat był już poruszany to wybaczcie dopiero się uczę i nie znam jeszcze wszystkich pojęć związanych z językiem C. Proszę o radę.

Poniżej zamieszczam zdjęcie ze screenem.


Obrazek

_________________
Kod:
#define Kamil Maćkowski



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 3 mar 2015, o 08:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 sty 2014
Posty: 446
Lokalizacja: DKL
Pomógł: 53

@kamil12239, błędnie linkujesz ścieżki do bibliotek, prawidłowo będzie:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Trzeba użyć cofnięcia o jeden katalog wstecz w ścieżce (../) ponieważ menu.c znajduje się w katalogu menu w twoim projekcie.

_________________
Migracja z punktu B do punktu C
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 5 mar 2015, o 15:14 
Offline
Nowy

Dołączył(a): 28 sty 2015
Posty: 13
Pomógł: 0

Pomogło ale mam inne błędy z którymi też nie moge sobie poradzić.

Obrazek

_________________
Kod:
#define Kamil Maćkowski



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 5 mar 2015, o 15:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 sty 2014
Posty: 446
Lokalizacja: DKL
Pomógł: 53

kamil12239 napisał(a):
ale mam inne błędy z którymi też nie moge sobie poradzić.
A co masz w pliku menu.h?
Bo błędy wykazują, że brak definicji LCD_X, LCD_H.

_________________
Migracja z punktu B do punktu C
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 11 mar 2015, o 08:01 
Offline
Nowy

Dołączył(a): 28 sty 2015
Posty: 13
Pomógł: 0

Źle wstawiony listing - Różowo - Zielony J.

Taki jest właśnie kod lcd.h nie bardzo wiem gdzie i w jaki sposób zadefiniować czy zadeklarować te funkcje LCD_X, LCD_Y. Mógłby kolega być jeszcze tak wyrozumiały i mi w tym pomóc? Wybaczcie moją niewiedzę.

_________________
Kod:
#define Kamil Maćkowski



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 11 mar 2015, o 09:12 
Offline
Nowy

Dołączył(a): 28 sty 2015
Posty: 13
Pomógł: 0

Pomogło program się skompilował. Dziękuje panu bardzo za pomoc. Żeby jeszcze ruszył na zestawie :D


Ruszył w zestawie wszystko ładnie pięknie wyświetla. Mam jeszcze jedno pytanie dotyczące poruszania się po tym menu. Wszystko zawarte jest w pliku klaw_enco.c i .h . Jak zmodyfikować program żeby można było się poruszać za pomocą zwykłych przycisków?

_________________
Kod:
#define Kamil Maćkowski



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 16 maja 2015, o 09:00 
Offline
Użytkownik

Dołączył(a): 05 lut 2014
Posty: 252
Lokalizacja: obok Częstochowy
Pomógł: 14

W ramach uwag do programu.
Przy pierwszym wejściu w menu po resecie procka ekran główny się czyści ładnie i wskakują pozycje menu. Natomiast przy kolejnych wejściach menu nakłada się na ekran główny. W logice nic nie zmieniałem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 16 maja 2015, o 11:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2015
Posty: 449
Pomógł: 3

Witam i dziękuję za menu.
Gdzie można znaleźć bibliotekę do obsługi enkodera (klaw.c, klaw.h)
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 17 maja 2015, o 07:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2015
Posty: 449
Pomógł: 3

Znalazłem na Dropbox. Dziękuję :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 25 cze 2015, o 20:41 
Offline
Użytkownik

Dołączył(a): 07 maja 2014
Posty: 31
Pomógł: 0

Witam
W jaki sposób w tym menu można dokonać ustawień parametru np temperatury i histerezy(np w submenu 11 i submenu 12). Chciałbym za pomocą dwóch tych samych przycisków co do zmiany pozycji menu dokonac zmiany wartości parametrów i wyswietlać ją na bieżąco w menu ustawień.Może ktoś z kolegów przerabial problem i wskaże algorytm postępowania.
Dziękuje i pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 25 cze 2015, o 20:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

To nie jest problem a podejście do tematu.

Ja bym sprawdził w jakim menu / submenu jesteś

jeżeli w tym odpowiedzialnym za ustawienie histerezy to wtedy:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


inaczej tego nie zrobisz chyba że któryś z kolegów ma inny pomysł.

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 25 cze 2015, o 21:16 
Offline
Użytkownik

Dołączył(a): 07 maja 2014
Posty: 31
Pomógł: 0

Witam
Do obsługi przycisków używam mirkowego superdebounce
Kod:
SuperDebounce(&up, &PIND, K_up, 10, 100, next, 0);
SuperDebounce(&down, &PIND, K_down, 10, 100, prev,0);


Moge przechodzić sobie po menu i chciałbym aby te przyciski w podmenu
Kod:
if(menu_flag==&submenu11){ }

zmieniły swoje działanie ze zmiany poziomu menu na zmiane wartości parametru np.temperatury a w submenu 21 te same przyciski zmienią wartość parametru histerezy.

Może teraz rozjaśniłem o co mi chodzi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 25 cze 2015, o 21:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

usiex napisał(a):
Witam
Do obsługi przycisków używam mirkowego superdebounce
Kod:
SuperDebounce(&up, &PIND, K_up, 10, 100, next, 0);
SuperDebounce(&down, &PIND, K_down, 10, 100, prev,0);


Moge przechodzić sobie po menu i chciałbym aby te przyciski w podmenu
Kod:
if(menu_flag==&submenu11){ }

zmieniły swoje działanie ze zmiany poziomu menu na zmiane wartości parametru np.temperatury a w submenu 21 te same przyciski zmienią wartość parametru histerezy.

Może teraz rozjaśniłem o co mi chodzi


Dokadnie to samo miałem na myśli :)

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 26 cze 2015, o 13:42 
Offline
Użytkownik

Dołączył(a): 05 lut 2014
Posty: 252
Lokalizacja: obok Częstochowy
Pomógł: 14

Menu jest tak skonstruowane, że jak się wejdzie w funkcję wywołaną z menu to przyciski nawigacji już nie działają i można je użyć do własnych celów. Tylko może ja coś tam zmieniłem.
Moja funkcja do nawigacji pilotem wygląda tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 26 cze 2015, o 20:32 
Offline
Użytkownik

Dołączył(a): 07 maja 2014
Posty: 31
Pomógł: 0

Cytuj:
Menu jest tak skonstruowane, że jak się wejdzie w funkcję wywołaną z menu to przyciski nawigacji już nie działają i można je użyć do własnych celów. Tylko może ja coś tam zmieniłem.

Chyba jednak musiałeś coś zmienić bo przyciski nawigacyjne działają nadal,czy może użyłeś jakiejś dodatkowej flagi aby je zablokować.Będe wdzięczny za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: Menu na LCD
PostNapisane: 26 cze 2015, o 20:45 
Offline
Użytkownik

Dołączył(a): 05 lut 2014
Posty: 252
Lokalizacja: obok Częstochowy
Pomógł: 14

No wyżej masz przykład. To jest od nawigacji menu - if (menu_flag != pozycja) { i po tym warunku jest nawigacja w menu}. A funkcje, czy też instrukcje w pętli głównej wywołane z menu poprzedź warunkiem if (menu_flag == pozycja).

Żeby lepiej zobrazować fragment funkcji wywołanej z menu (wsio w jednej funkcji wywoływanej naciśnięciem klawisza)

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 49 ]  Przejdź na stronę Poprzednia strona  1, 2

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO