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



Teraz jest 11 gru 2024, o 08:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
Autor Wiadomość
PostNapisane: 1 lip 2012, o 12:50 
Offline
Nowy

Dołączył(a): 01 lip 2012
Posty: 7
Pomógł: 0

Witam,

Mam problem przy lekcji drugiej, w miejscu, gdzie korzysta się z trzech przycisków albo wlaczyc/wylaczyc/zmienic stand diody. Ponizej kod programu:

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


A to komunikaty:

../main.c: In function 'main':
../main.c:32: error: stray '$' in program
../main.c:32: warning: large integer implicitly truncated to unsigned type
make: *** [main.o] Error 1


Mimo usilnych staran, nie moge rozszyfrowac, co oznacza stray '$'. Ponadto, dlaczego wyskakuje to ostrzezenie o "large integer"? Czy chodzi tu o probe wpisania liczby wiekszej niz 8-bitowa? Dlaczegoby nie dotyczylo to innych switch_pinow?

Prosilbym serdecznie o jakies nakierowanie na odpowiedz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 13:07 
Offline
Moderator
Avatar użytkownika

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

No ale popatrz kolego napisałeś sobie linię programu nr 32:

if (zmiana(SWITCH_PIN1)) LED_ON;

kompilator krzyczy w niebo głosy że masz tu babola i że jakiś znak $ się pojawił

no to co ? gdzie trzeba zajrzeć - przecież w tej linii nie masz żadnego polecenia w języku C poza warunkiem IF

1. masz wywołanie funkcji zmiana() - hmmm może w niej problem ? może warto przejrzeć jej kod?
2. masz wywołanie definicji preprocesora SWITCH_PIN1 - hmm może w niej problem ? może warto przejrzeć jej kod?
3. masz wywołanie definicji preprocesora LED_ON - hmm może w niej problem ? może warto przejrzeć jej kod?

(przecież te definicje zostaną w tym miejscu rozwinięte do kodu jaki jest wcześniej zrobiony w #define - więc tam trzeba kierować swoje oczka żeby szukać błędów a nie konkretnie w linijce nr 32 - tym bardziej że kompilator wyraźnie ci krzyczy - że nie podoba mu się jakiś znak $ - no i ma rację ;)

no to weź przejrzyj to co napisałem wyżej bo babol widoczny z daleka że HEJ ;)

ale jakbyś nie znalazł - to pisz śmiało dalej ;)

_________________
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: 1 lip 2012, o 15:04 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 maja 2012
Posty: 758
Pomógł: 9

Zamień znak dolara na ampersand (&) i gra gitara.

_________________
ATB 1.03, Win XP SP3, ECLIPSE Indigo 3.7.2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 21:22 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Ledes napisał(a):
Zamień znak dolara na ampersand (&) i gra gitara.

A Mirkowi bardziej chodziło o to, żeby autor sam znalazł błąd. ;)
Tym sposobem więcej by się nauczył niż jak poda się rozwiązanie "na tacy"

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 21:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 maja 2012
Posty: 758
Pomógł: 9

Ale czego tu się uczyć - to po prostu literówka w kodzie. ;)

_________________
ATB 1.03, Win XP SP3, ECLIPSE Indigo 3.7.2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 21:37 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Ledes napisał(a):
Ale czego tu się uczyć - to po prostu literówka w kodzie. ;)

A choćby tego jak szukać takich literówek ;)
Wiem, bo sam też kiedyś szukałem dlaczego najprostszy możliwy programik do migania diodką mi nie działa. ;)

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 21:46 
Offline
Moderator
Avatar użytkownika

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

Dokładnie - przecież jak siadamy do nowego środowiska i napiszemy pierwszy program a tu SRU! i posypią się błędy to pomimo znajomości angielskiego na jakimś tam poziomie sam nieraz nie wiem gdzie mam ręce włożyć i na co zacząć patrzeć. A mówię z praktyki - np chciałem się nauczyć ostatnio QT albo uczę się Javy Androida - to kota można dostać jak w kosoli zacznie się czerwono robić ;)

Tak więc kolega ledes - z tego co wiemy zna już w miarę dobrze języczki na PC i dla kolegi to pewnie normalka ;) .... ale ja rzeczywiście staram się zawsze nie od razu odpowiedzieć - tylko staram się naprowadzić ... oczywiście jak sobie ktoś nie radzi to pisze i wtedy naturalnie pokazuje się już wprost błąd.

A znalezienie błędu we własnym zakresie - eeeeh to nieoceniona nauka ;) bo drugim razem nie będzie kogoś pod ręką kto ot tak pokaże.

dlatego też zachęcam oczywiście do podobnego podejścia na tym forum te osoby, które już coś więcej wiedzą ;)

_________________
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: 1 lip 2012, o 21:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 maja 2012
Posty: 758
Pomógł: 9

Dobra, od tej pory będę dawał 'wędkę', a nie 'rybę' na tym forum, oczywiście tam, gdzie będę w stanie pomóc. ;)
Ehhh jestem poza domem 5 dni i bez ATB tak jakoś... smutno :(

_________________
ATB 1.03, Win XP SP3, ECLIPSE Indigo 3.7.2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 22:01 
Offline
Moderator
Avatar użytkownika

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

Ledes napisał(a):
Dobra, od tej pory będę dawał 'wędkę', a nie 'rybę' na tym forum, oczywiście tam, gdzie będę w stanie pomóc. ;)

No ty jakby już nie patrzeć masz sporą wiedzę ;) więc te wędki na pewno uda ci się nieraz rozdać ;)

Ledes napisał(a):
Ehhh jestem poza domem 5 dni i bez ATB tak jakoś... smutno :(


No ja też nieraz tak mam, że jak wyjadę np na jakiś urlop chociaż to rzadkość u mnie - to żona już może się nie dziwi ale znajomi albo rodzina dziwią się, że mnie nosi jakoś ;) że wciąż płaczę, że wieczorkiem usiadłbym i coś podłubał w elektronice ... więc wiem jak to jest.

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

Dołączył(a): 06 maja 2012
Posty: 758
Pomógł: 9

A tam sporą wiedzę... Bez przesady. Na studiach wymęczyli solidnie z C++, cyfrówki, trochę z 8051 i innych mniej lub bardziej ważnych rzeczy, myślę, że wyrobiło to we mnie umiejętność myślenia zero-jedynkowego na poziomie bitów, bajtów, słów itp. W dziedzinie mikrokontrolerów dopiero raczkuję. ;) Chciałbym opanować AVR i przejść na ARM. Ale to raczej dłuższa perspektywa. ;)

_________________
ATB 1.03, Win XP SP3, ECLIPSE Indigo 3.7.2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lip 2012, o 22:18 
Offline
Moderator
Avatar użytkownika

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

Ledes napisał(a):
A tam sporą wiedzę... Bez przesady. Na studiach wymęczyli solidnie z C++, cyfrówki, trochę z 8051 i innych mniej lub bardziej ważnych rzeczy, myślę, że wyrobiło to we mnie umiejętność myślenia zero-jedynkowego na poziomie bitów, bajtów, słów itp. W dziedzinie mikrokontrolerów dopiero raczkuję. ;)


Trochę się po prostu nie doceniasz - bo pomyśl sobie ILE jesteś do przodu ucząc się mikroklocków z takim już swoim doświadczeniem nawet ze studiów skoro "wymęczyli solidnie" ;) w porównaniu do osób, które jeszcze w ogóle nie znały chociażby żadnego języka C albo podobnego ... O to mi chodzi ;) .... dlatego też przejście przez podstawy C to dla ciebie już tzw koci pikuś ;)

-- dodano 1 lip 2012, o 21:21 --

Ledes napisał(a):
....Chciałbym opanować AVR i przejść na ARM. Ale to raczej dłuższa perspektywa. ;)


Zdziwisz się - bo zobaczysz, że dość szybko będziesz w stanie się przesiąść ... i tym bardziej, że ciągnie cię jak wilka do lasu jeśli chodzi o C++ (obiektówkę, klasy itp) .... Na ARM'ach to już można sobie poszaleć z tym że tak powiem. Tylko właśnie najpierw trzeba cokolwiek liznąć i sprawdzić jak się poruszać w tych mikroklockach programując w C czy C++ - bo różnice są spore w podejściu do pewnych rzeczy w porównaniu do programowania na PC.

_________________
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: 2 lip 2012, o 13:39 
Offline
Nowy

Dołączył(a): 01 lip 2012
Posty: 7
Pomógł: 0

Widze, że rozwikłałem nie lada dyskusje, ale przeczytalem ja dopiero po znalezieniu bledu po pierwszy poscie pana Mirka :)

Co do samego bledu, to taki durny, ze az zal, ze nie znalazlem :) Ale wynika to tez z nieznajomosci bledu "stray" i nie wiedzialem, ze chodzi mu po prostu o znak. Dziekuje w kazdym razie wszystkim za odpowiedzi i wypada mi teraz sie douczyc o komunikatach. Ale moze potem, bo teraz wciaga mnie multipleksowanie :)

Pozdrawiam,
Złoty



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 lip 2012, o 15:01 
Offline
Nowy

Dołączył(a): 01 lip 2012
Posty: 7
Pomógł: 0

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


Co by nie tworzyc kolejnego tematu, bede pisal w tym z kolejnymi problemami. Otoz robie pwmy i sie zabralem za zrobienie programowego pwm. Niestety, powyzszy kod nie dziala. Diody nie reaguja w zaden sposob. Co ciekawe, projekt z ksiazki tez ladowalem do uc, bez skutki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 lip 2012, o 15:10 
Offline
Moderator
Avatar użytkownika

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

Ja powiem tak - jeśli ci nie działa kod z książki na początek - to nie twórz nowego tylko najpierw na siłę staraj się uruchomić ten z książki bo inaczej pakujesz się w jeszcze większe problemy. To mniej więcej tak jakbyś pomyślał -

hmmm ten program z książki pewnie nie działa bo jest w nim jakiś babol, poprawię go i będzie OK a tu skucha

Jeśli nie działa ci to znaczy że sprzętowo robisz jakiś koszmarek - to nie komputer PC niestety :( .... gdzie wszystko działa pod kontrolą tego samego systemu operacyjnego. Tu jest jeszcze sprzęt/elektronika

Zatem do takiego pytania to:

po pierwsze przydałoby się zadać je w oddzielnym wątku bo dotyczy zupełnie czego innego
po drugie pokazać schemat jak to zrobiłeś
po trzecie napisać na czym to testujesz ? stykówka? jakiś zestaw uruchomieniowy? może jakaś fotka połączeń ?

inaczej to możemy tylko pogdybać :(

_________________
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  
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