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



Teraz jest 1 gru 2024, o 04:24


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 7 lut 2012, o 12:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 sty 2012
Posty: 131
Lokalizacja: Kraków
Pomógł: 2

Witam,
Problem dotyczy deklaracja funkcji
uint8_t key_down(uint8_t klawisz)
w definicji funkcji wyskakuje błąd 'klawisz' undeclared (first use in this function) podczas kompilacji.
W czym moze byc problem?
Proszę o wyrozumiałosc to moj pierwszy post;)

Kod:


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  
PostNapisane: 7 lut 2012, o 13:07 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 03 gru 2011
Posty: 5
Lokalizacja: Pobłocie
Pomógł: 0

w definicji funkcji uint8_t key_down(uint8_t klawisz) masz użyty średnik ";" a nie powinno go tam być :) a reszta wydaje się być wporzadku



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lut 2012, o 13:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 sty 2012
Posty: 131
Lokalizacja: Kraków
Pomógł: 2

bienio140 to jest definicja funkcji czyli od razu deklaracja i ma być średnik,

worner jak to?
jesli wpiszę przed tym uint8_t key_down(uint8_t klawisz) np
#define klawisz KEY0 |KEY1 to wywala błąd to chyba nie to



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lut 2012, o 13:24 
Offline
Moderator
Avatar użytkownika

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

Panowie niestety, ani jedna ani druga sugestia nie jest poprawna i na pewno nie rozwiązuje problemu. Co gorsze, to stwierdzenie jest całkowicie nieprawdziwe :(

bienio140 napisał(a):
..... a reszta wydaje się być wporzadku


No ale rozumiem, że to są początki.

Panowie mamy tu do czynienia operując językiem medycznym, z funkcją wrośniętą czyli "czyrakiem", którego należy natychmiast i bezwzględnie amputować ;) usunąć. To znaczy przenieść poza cało funkcji main() .... no tak nie można pisać programów ;) żeby definicje funkcji pisać w kodzie definicji innej funkcji. Pana autora proszę jednak o otwarcie książki na rozdziale o funkcjach o ich deklaracjach i definicjach - TO BARDZO WAŻNE! żeby więcej takich błędów nie popełniać OK ? ;) a poniżej rysunek para-medyczny ;)

Obrazek

a zresztą wydaje się też, że autora zgubił brak konsekwencji w trzymaniu się wcięć w programie i pilnowaniu się, bo może przez pomyłkę takie cudo zrobił ?

Czy Pan autor to widzi teraz ? ;)

na razie nawet nie wnikam w poprawność funkcji i samego kodu. Aczkolwiek sama deklaracja funkcji na górze z tym średnikiem na końcu jak najbardziej jest poprawna. Bo to jest właśnie DEKLARACJA a nie DEFINICJA funkcji.

_________________
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: 7 lut 2012, o 13:29 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 03 gru 2011
Posty: 5
Lokalizacja: Pobłocie
Pomógł: 0

racja, dziękuje panie Mirku za wyjaśnienie tez dopiero co zaczynam z programowaniem i nie zauważyłem takiego błędu, na drugi raz będę uważał na stwierdzenia: "reszta wydaje się w porządku"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lut 2012, o 13:38 
Offline
Moderator
Avatar użytkownika

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

Nie ma za co, każdy kiedyś zaczyna, ale tak się jeszcze zastanawiam czy przypadkiem kolega autor po prostu nie przepisywał tego kodu ręcznie z książki zamiast zajrzeć do kodów na płycie DVD dołączonej do książki ??? A wtedy zwykle łatwo popełnić takie błędy.

Dlatego polecam jeszcze raz wszystkim posługiwać się płytą DVD i obejrzeć chociaż raz lekcje VIDEO tam umieszczone, oraz korzystać z ECLIPSE a nie przypadkiem AVR Studio a już broń Boże z AVR Studio 5 !!! ;)

_________________
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: 7 lut 2012, o 14:16 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 sty 2012
Posty: 131
Lokalizacja: Kraków
Pomógł: 2

Wszystko działa, po prostu zakręciłem się w stawianiu nawisów "dziobkowatych" nie oddzielając od siebie funkcji :/
Programy na płycie już testowałem żeby się zapoznać z zestawem.
Teraz próbuje swoich sił w pisaniu programów.
Jak zwykle Pan Mirek pomocny. Dziękuje.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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