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



Teraz jest 13 gru 2024, o 07:37


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
Autor Wiadomość
PostNapisane: 3 gru 2014, o 18:58 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Witam

Piszę nową funkcję w bibliotece do wyświetlacza TFT:

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

pewnie nie działa ale nie o to chodzi ;)

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


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


a przy kompilacji w konsoli:
Kod:
18:41:01 **** Incremental Build of configuration Release for project SDcardTFTILI9340 ****
make all
Building file: ../main.c
Invoking: AVR Compiler
avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32 -DF_CPU=11059200UL -MMD -MP -MF"main.d" -MT"main.d" -c -o "main.o" "../main.c"
../main.c: In function 'main':
../main.c:50:5: warning: implicit declaration of function 'drawBitmapRGBfromFile' [-Wimplicit-function-declaration]
../main.c:19:7: warning: unused variable 's1' [-Wunused-variable]
Finished building: ../main.c


są "includy" do pliku z funkcją ale tak jakby kompilator jej "nie widział". Robiłem Clean projektu restartowałem Eclipse i komputer zmieniałem nazwę funkcji ale nic to nie dawało. Gdy wklejam funkcję bezpośrednio do main działa. Biblioteka też działa bo bez niej nie działałby mi wyświetlacz. O co chodzi? Z góry dzięki za pomoc.

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 19:15 
Offline
Użytkownik

Dołączył(a): 15 lut 2012
Posty: 224
Lokalizacja: Opole
Pomógł: 24

Dodaj extern do deklaracji w pliku h



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 19:18 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Niestety nic to nie dało :(.

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 19:43 
Offline
Użytkownik

Dołączył(a): 15 lut 2012
Posty: 224
Lokalizacja: Opole
Pomógł: 24

W pliku ILI9340C.c masz #include`a z plikiem ILI9340C.h ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 19:50 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Include do tej biblioteki mam w pliku ILI9340C.h, ILI9340C.c i w main.c.

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 20:19 
Offline
Użytkownik

Dołączył(a): 22 gru 2012
Posty: 256
Lokalizacja: Rumia
Pomógł: 22

Z tego co widzę to biblioteki pliki ILI....c i ILI....h masz w pod folderze, tak?
"Inkluda" w main.c wpisałeś "z ręki" czy skorzystałeś z auto uzupełniania? Być może nie widzi podfolderu ILI9340C w którym masz pliki .c i .h ? Spróbowałbym wyprowadzić te pliki poza folder, prosto do głównego folderu w którym jest plik main.c i zobaczył co wtedy będzie się działo. Kilkukrotnie zdarzały mi się podobne akcje i o ile dobrze kojarzę to powodem właśnie było nie widzenie pełnej ścieżki przez Eclipsa. Łatwo to właśnie zauważyć jak się próbuje wstawić "inkluda" z auto uzupełnianiem, czyli Control+Spacja.

_________________
http://www.marcingibas.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 20:21 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Ja nigdy nie używałem auto uzupełnienia nawet nie wiem jak ono działa :D. Spróbuję jak napisałeś czyli dam to do głównego folderu, ale napisałem, że to jest dziwne bo tylko ta funkcja nie działa :/.

------------------------ [ Dodano po: 3 minutach ]

Nie działa ta funkcja nawet jak dam pliki do głównego katalogu. :(

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 20:43 
Offline
Użytkownik

Dołączył(a): 22 gru 2012
Posty: 256
Lokalizacja: Rumia
Pomógł: 22

OK, a w pliku ILI....c masz wszystkie "inkludy" do funkcji jakich używasz w funkcji drawBitmapRGBfromFile ?

_________________
http://www.marcingibas.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 20:53 
Offline
Moderator
Avatar użytkownika

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

pokaż strukturę projektu z okienka Project Explorer

powiedz czy próbowałeś stworzyć nowy workspace i zaimportować ten projekt (bo może się workspace sypnął?)

_________________
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  
PostNapisane: 3 gru 2014, o 21:13 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Screeny z Project Explorer i includami:
ObrazekObrazekObrazek
nie próbowałem jeszcze przenieść projektu do innego workspace, teraz spróbuję.

------------------------ [ Dodano po: 22 minutach ]

Nie działa w nowym workspace. Bardzo to dziwne 1-szy raz mi się tak zdarza szczególnie, że nie działa tylko 1 funkcja :(.

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 21:47 
Offline
Nowy

Dołączył(a): 25 lis 2014
Posty: 18
Pomógł: 4

Kolego leonos2000
zobacz na swoją deklaracje funkcji:

void drawBitmapRGBfromFile(int16_t x, int16_t y, char * fname, int16_t w, int16_t h);

i na jej wywołanie:

drawBitmapRGBfromFile(1, 1,"" , 320, 240);

W deklaracji masz określone, że trzeci parametr to wskaźnik, a w wywołaniu próbujesz tam wepchać wartość. Zapewne o to chodzi.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 21:58 
Offline
Moderator
Avatar użytkownika

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

AndrzejG napisał(a):
W deklaracji masz określone, że trzeci parametr to wskaźnik, a w wywołaniu próbujesz tam wepchać wartość.


Nie nie - taki zapis to podstawienie wskaźnika za pomocą stałej dosłownej tu tzw literału, czyli "nazwa_pliku" więc to nie problem, a komunikat mówi o tym jakby nie widział w ogóle nazwy funkcji - wiec wpatruję się długo za jakąś literówką no ale też nie widzę

niech kolega sprawdzi jeszcze ten import

no i Eclipse LUUUUUNA .... ;)


Autor postu otrzymał pochwałę

_________________
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  
PostNapisane: 3 gru 2014, o 22:42 
Offline
Nowy

Dołączył(a): 25 lis 2014
Posty: 18
Pomógł: 4

To ja jeszcze zapytam, bo problem z kompilacją masz na projekcie SDcardTFTILI9340, natomiast zrzuty ekranu dla plików ILI....c i ILI....h pokazujesz z projektu SDcardTFT. Czy oby na pewno pliki ILI....c i ILI....h w tych dwóch projektach masz takie same?

Może w plikach ILI....c i ILI....h w projekcie SDcardTFTILI9340 nie masz funkcji drawBitmapRGBfromFile albo kompilujesz nie ten projekt i dlatego kompilator krzyczy.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 gru 2014, o 23:00 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Przez pomyłkę pokazywałem nie ten plik, ale w obu było to samo. Dopiero instalacja nowego eclipse pomogła, heh zainstalowałem Eclise MARS 64bit czyli "troszeczkę" inaczej jak P.Mirek podpowiada, ale działa :D. Dzięki wszystkim za odpowiedzi.

_________________
http://elektropanel.pl



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: 14 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO