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



Teraz jest 29 sty 2025, o 00:50


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 4 wrz 2013, o 14:50 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Witam wszystkich :)
Przy przerabianiu niebieskiej książki M. Kardasia, napotkałem na problem przy projekcie MULTIPLEKSOWANIE LED - przerwania.
Cały czas przy kompilacji wyrzuca błąd "undefined reference to 'd_led_init'", pomimo, że wszystko jest napisane dokładnie tak samo jak w książce.
Jeśli ma to znaczenie, program to Atmel Studio 6.1, a procesor ATMEGA644PA.

Przesyłam cały kod programu, bardzo proszę o jakieś wskazówki co może być problemem.

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


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


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



Pozdrawiam :)
Piotr



Ostatnio edytowano 11 wrz 2013, o 15:11 przez Monster11, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 14:58 
Offline
Moderator
Avatar użytkownika

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

Monster11 napisał(a):
Jeśli ma to znaczenie, program to Atmel Studio 6.1


No widzisz, a gdybyś odpalił to w Eclipse to z marszu odpadłaby ci kupa problemów w tym także ten o którym tu piszesz oraz przyszłe na które się natkniesz.

Więc ja na twoim miejscu najpierw odpaliłbym sobie to pod Eclipsem - chociażby dla porównania a gdy będzie działać to wtedy łatwiej będzie ci szukać babola w Atmel kocim Studio ;)

_________________
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: 4 wrz 2013, o 15:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 15 lut 2013
Posty: 101
Lokalizacja: Wrocław
Pomógł: 4

A co to jest np: LED_DATA_DIR ? Brakuje definicji.

_________________
ATB 1.04, Bluebook wyd.II, Greenbook wyd.II



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 15:25 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Eclipsa zainstalowałem, narazie muszę chwilę z nim posiedzieć, żeby wiedzieć co i jak :)

Też mnie dziwiło to LED_DATA_DIR, wygląda na to, że w książce jest dość sporo błędów, z deklaracjami zmiennych też były jaja.
Sądziłem jeszcze, że czegoś nie wiem, i poprzez dopisanie _DIR coś się osiąga... nvm
Co w takim razie powinienem zdefiniować pod LED_DATA_DIR? W książce LED_DATA_DIR = 0xFF; opisane jest jako ustawienie wszystkich pinów portu C jako wyjscia? Analogicznie będzie z ANODY_DIR.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 15:29 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 3209
Lokalizacja: Kraków - obok FAB5 ATMEL'a
Pomógł: 91

Monster11 napisał(a):
wygląda na to, że w książce jest dość sporo błędów,


No weź że nie opowiadaj takich rzeczy.

Jeśli nie potrafisz sobie z czymś poradzić to nie gadaj że są jakieś błędy.

W wyjątkowych wypadkach są przecież erraty na stronie ATNELa.

_________________
http://www.jaglarz.info



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 15:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 15 lut 2013
Posty: 101
Lokalizacja: Wrocław
Pomógł: 4

Zobacz erratę, która jest tu: http://www.atnel.pl/errata.html

_________________
ATB 1.04, Bluebook wyd.II, Greenbook wyd.II



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 16:45 
Offline
Moderator
Avatar użytkownika

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

Monster11 napisał(a):
wygląda na to, że w książce jest dość sporo błędów,


Panie kolego - weź że sobie GOTOWY kod do multipleksowania do tej lekcji z książki, który masz na DVD, jest on tam na pewno. Ale że nie chce ci się obejrzeć lekcji video i zobaczyć jak sobie poradzić z Eclipse to już nie jest niestety moja wina. Ten KOD działa na 100%

A w książce nie ma błędów - ona oraz kody w niej omawiane nie są po to, żeby sobie na zasadzie "przeklep bez zrozumienia" wpisywać do kodu swojego programu - w książce tłumaczę i wyjaśniam ... jak działa ... dlatego często przykłady wcale nie odnoszą się do rzeczywistych gotowych kodów. Za to dużo trudu, pracy i wysiłku poświęciłem aby przygotować sprawnie działające kody na płycie DVD i to do każdej lekcji.

Owszem wkradły się pewne błędy drobne do książki ale po to masz erratę a także uwaktualnienia do książki - ale co? tam też nie chce ci się zajrzeć ? tylko pisać że w książce jest wszystko źle ?

http://atnel.pl/errata.html

http://atnel.pl/uaktualnienia-programow-do-dvd.html

już nie wspomnę o tym że na tym forum, temat z nie działającym przykładem po niedudolnym przeportowaniu na ATmega644PA to jeden z najczęstszych tematów. Tyle że większość ludzi zdaje sobie sprawę, że gdzieś mogło się coś walnąć, że się źle zrobiło i pytają ale także idą zgodnie z poradami w książce czyli przede wszystkim Eclipse i obserwacja poprawnie działających kodów na DVD ....

a tobie coś tam nie zadziała i od razu..... "aaaa pewnie w książce są błędy" .... masakra ... przy takim podejściu trudno ci będzie się uczyć tego języka C.

Spójrz sobie tutaj na forum, jak sobie ludzie fajnie dają radę z przeportowaniem przykładu na ATmega644P i bez narzekania na błędy w tym zakresie w książce bo ich tam nie ma za bardzo. Zresztą sam zobacz to:

topic19.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  
PostNapisane: 4 wrz 2013, o 20:13 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

@mirekk36
Źle mnie chyba zrozumiałeś...
Nie piszę, że w całej książce są błędy, napisałem tylko, że trafiają się jakieś małe i nic więcej...
Płytki z książki niestety nie mam.
Po ściągnięciu tu z forum tego właśnie programu o dziwo znowu powywalało błędy, że nie widzi w ogóle zmiennych...
Przypuszczam, że to problem z atmel studio albo z jego skonfigurowaniem, także albo będę się zagłębiał w nim dalej, albo zajmę się eclipsem.
I nie nie chce mi się oglądnąć jak używać eclipsa, po prostu dopiero co go zainstalowałem i dopiero będę się w niego zagłebiał...
A o erratach to nawet nie wiedziałem, że istnieją :)
Tak już jest z początkującymi, staram się jak mogę...

Narazie do usłyszenia, muszę przeglądnąć wszystko to, co mi tu daliście.
Narazie dzięki za wskazówki.

Pozdr



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 wrz 2013, o 15:10 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Witam ponownie, wracam ze swoim problemem.
Zainstalowałem eclipsa, ogólnie bardzo mi nie podszedł ten program, póki co chciałbym go omijać.

Wprowadziłem do programu poprawki z erraty oraz ustawiłem preskaler pod moje taktowanie (2MHz) (pierwszy post wyedytowany, wprowadzony najnowszy kod)


Niestety dalej problem pozostał, niewiele się zmieniło. Strasznie mnie to gryzie, co jest tu nie tak. Owszem mógłbym próbować innych programów, ale tak czy tak coś jest tu na rzeczy.

Czy to będzie coś związanego bardziej z samym środowiskiem / jego ustawieniami pod program i/lub programator, czy jednak dalej coś nie tak z kodem? (z kodem chyba już nic nie jest źle, tym bardziej, że z właściwym przykładem z innego źródła wychodzi to samo...)

Bardzo Was proszę o dalszą pomoc i podpowiedzi.

Pozdrawiam
Piotr



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2013, o 12:29 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Czy o to chodziło?

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2013, o 13:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 208
Lokalizacja: Kraków
Pomógł: 16

Jak dasz rade to pokaz dzrzewko z eclipse. W Atmel Studio ciezko sie jest polapac. Dobrym zwyczajem jest aby glowny plik nazywac main.c



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 wrz 2013, o 19:55 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Cytuj:
Czy o to chodziło?

Kliknij prawym klawiszem na żółtym folderze w tym drzewku i wybierz Add> Existing Item... i wybierz plik d_led.c, a wtedy pojawi się jako plik do kompilacji.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 wrz 2013, o 16:18 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Witam,

z tym add existing item szukałem wszędzie tylko nie na tym żółtym folderze, nie wiem czemu... Pomogło.

Przy okazji wcześniej znalazłem, że oznaczenia timerów itp dla 644PA są inne...
Poprawieł wszystko co trzeba było, mam nadzieję, że dobrze.

Program kompiluje się bez żadnych błędów.

Teraz tylko pytanie jest takie, dla czego dalej nic mi nie wyświetla na LED'ach :(

Przesyłam aktualny 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.


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


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



EDIT:

Po podpięciu wszystkich pinów portu D to diod oraz przestawieniu w programie portu C na D okazuje się, że nie ma napięcia na żadnej nodze..



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 wrz 2013, o 16:32 
Offline
Moderator
Avatar użytkownika

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

tak, a sprawdzałeś w PDF że bity preskalera są w rejestrze TCCR0A ?

TCCR0A |= (1<<CS01) | (1<<CS00); //preskaler 64

;)

zresztą było już o tym na forum (dokładnie o tym) - warto zawsze poszukać:

topic19.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  
PostNapisane: 18 wrz 2013, o 16:48 
Offline
Nowy

Dołączył(a): 04 wrz 2013
Posty: 7
Pomógł: 0

Ahhh, widziałem ten temat wielokrotnie, ale go już teraz pod koniec nie skojarzyłem.

Dlaczego musimy go ustawiać już pod B, a nie dalej A?

Kolejny problem to dziwnie wyświetla mi wartości. Gdzieś chyba widziałem taki temat, chodzi może o złe podłączenie bądź inną prostą rzecz? (pytam od razu, dopiero za chwilę będę szukał o tym problemie)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 wrz 2013, o 20:12 
Offline
Moderator
Avatar użytkownika

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

Monster11 napisał(a):
laczego musimy go ustawiać już pod B, a nie dalej A?


Tego pytania to ja kompletnie nie rozumiem ? ... jak to dlaczego ? zapytam jeszcze raz zaglądałeś do noty PDF ? przecież tam masz czarno na białym jakie bity są w jakim rejestrze ? .... więc co dlaczego ? ;)

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

Strefa czasowa: UTC + 1


Kto przegląda forum

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