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



Teraz jest 28 kwi 2024, o 00:32


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 21 ] 
Autor Wiadomość
PostNapisane: 6 lut 2013, o 22:40 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Chciałem się trochę pobawić w pisanie lub też testowanie prostych programów więc stworzyłem w eclipse nowy projekt, ale wywala mi błąd. Najpierw gdzieś zgubiło mi programator USBAsp a teraz wywala taki błąd jak w załączniku. Podpowiecie mi o co chodzi?
Znaczy z informacji wynika że w folderze DEBUG nie ma pliku hex do zaprogramowania procesora, ale jak to naprawić?

Jedno jest pewne, AVRDude działa ok bo z poziomu MkAVRCalkulator bez kłopotu czytam procka podpiętego pod programator.


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2013, o 22:48 
Offline
Moderator
Avatar użytkownika

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

No i bardzo dobrze, że wyrzuca że w folderze debug nie ma HEXa do wgrania ;)

eeeh czy oglądałeś chociaż jeden mój poradnik o Eclipse ? prawie w każdym wałkuję ten temat że gdy się tworzy nowy projekt to WYŁĄCZASZ ptaka przy profilu DEBUG i pozostawiasz tylko przy profilu RELEASE

ale może zamiast pisać - weź obejrzyj bo z takiego poradnika przyda ci się jeszcze kilka rzeczy, proszę tu ogólnodostępny jest ten (LEKCJA 01 z niebieskiej książki z DVD - i jest o tym WYRAŹNIE mowa ) ok ?

http://mirekk36.blogspot.com/2011/11/dl ... tudio.html

na dole artykułu masz link do filmu

_________________
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: 6 lut 2013, o 22:50 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

No ale właśnie chodzi o to że wyłączyłem. Oglądałem Twój filmik i jednocześnie tworzyłem projekt.

Sory, odznaczałem RELESE, ale odznaczenie DEBUG zmienia tylko tyle że wywala ten sam błąd zle z informacją RELESE.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2013, o 23:03 
Offline
Moderator
Avatar użytkownika

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

matrix napisał(a):
No ale właśnie chodzi o to że wyłączyłem. Oglądałem Twój filmik i jednocześnie tworzyłem projekt.

Sory, odznaczałem RELESE, ale odznaczenie DEBUG zmienia tylko tyle że wywala ten sam błąd zle z informacją RELESE.


no ok ale z kolei ten komunikat świadczy o tym, że jednak NIE WYŁĄCZYŁEŚ - niestety. Ale spokojnie na początku zwykle każdy ma taką małą czkawkę - nic się nie stało.

Bo nawet jeśli jest włączony to można w Eclipse przełączyć aktywny profil z Debug na Release i będzie ok o masz rysunek jak to przestawić

Obrazek

w punkcie nr.4 - widzisz ? trza przestawić ptaszka teraz na Release - od nowa skompilować i będzie cacy ;)

_________________
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: 6 lut 2013, o 23:09 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Jak odznaczyłem DEBUG to:
wywala mi taki błąd podczas przebudowywania projektu:

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


I do tego wywala błąd jak podczas DEBUG tylko że odnosi się do RELEASE. I w ogóle za każdym razem muszę ustawiać programator bo na początku wywala brak programatora dla projektu.


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2013, o 23:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 21 gru 2012
Posty: 161
Pomógł: 9

W_delayms w nawiasie wpisz np. 500 zamiast tego co masz. Skompiluj i wgraj.


Autor postu otrzymał pochwałę

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2013, o 23:20 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Dzięki. Musiałem usunąć całą linię delayms i dopiero poszło.

Ale masa niespodzianek czyha. Szok.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2013, o 23:21 
Offline
Moderator
Avatar użytkownika

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

Wiesz co? jestem na skype teraz

szybciej będzie jak zadzwonisz skypem i przez zdalny pulpit pokażę ci raz a dobrze co i jak to na zawsze ci zostanie to w pamięci ;) - zapraszam jak coś - śmiało

------------------------ [ Dodano po: kilkunastu sekundach ]

aaaa już jest OK - to fajnie ;)

_________________
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 2013, o 00:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 21 gru 2012
Posty: 161
Pomógł: 9

Pisałem przez telefon. Błąd polegał na tym, że delay_ms potrzebuje jako argumentu liczby, a z tego co tam widać na screenach to miałeś coś związanego ze zmianą na pinie? :)

Dlatego program nie chciał się zbudować (należy zawsze odznaczać Debug - pracować na Relase). A skoro się nie zbudował to nie było pliku który avrdude mógłby wgrać i stąd ten błąd. Dlatego następnym razem pamiętaj, że jak coś będzie źle, tzn. czerwone ostrzeżenia to program się nie zbudował przez błędy i zostanie wgrana (o ile jest) starsza wersja wsadu, która została wygenerowana wcześniej.


-----
a jeśli ta zmiana na pinie w argumencie delay_ms miała w założeniu zatrzymać program podczas naciskania przycisku to robi się to przez pętlę np. while (przyciskWciśnięty) {}. W sumie to nawet jest to w książce pokazane.

kto pyta nie błądzi :)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 12:07 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Skoro ja założyłem temat to dorzucę kolejny błąd. Mam zainstalowany avr toolchain a przy takim kawalku kodu:

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

wywala mi taki oto komunikat:

Kod:
../main.c:7:9: error: unknown type name 'uint8_t'
../main.c:7:20: error: unknown type name 'uint8_t'



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 12:39 
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

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

Tam jest m.in. uint8_t (zagrzebany, bo właściwie to jest to w stdint.h)

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 13:00 
Offline
Moderator
Avatar użytkownika

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

Tak jak kolega wyżej mówi - w C trzeba dołączać systemowe pliki nagłówkowe, PODSTAW to zawsze

<avr/io.h>

ale później gdy będziesz chciał skorzystać np z wbudowanej funkcji _delay_ms() to będziesz musiał dołączyć kolejny

#include <util/delay.h>

itd

_________________
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: 10 lut 2013, o 13:52 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Krauser napisał(a):
Każdy program na AVR rozpoczynaj od:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tam jest m.in. uint8_t (zagrzebany, bo właściwie to jest to w stdint.h)

Nawet po wstawieniu obu nagłówków czyli:

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


mam taki błąd:

Kod:
../main.c:13:14: warning: unused variable 'm' [-Wunused-variable]
../main.c:12:19: warning: unused variable 'a' [-Wunused-variable]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 13:58 
Offline
Moderator
Avatar użytkownika

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

ale to już inna para kaloszy, poza tym to nie błąd tylko WARNING w języku C czyli ostrzeżenie. Ale dobry zwyczaj każe traktować to jak błędy ....

więc co masz - czytasz?

unused variable 'm'

co to wg ciebie znaczy ????

nie użyta zmienna 'm'

i co ? Bascom zostawiłby ci taki "kwiatek" i śmietnik w kodzie a kompilator C przypomina ci że niepotrzebnie zdefiniowałeś te dwie zmienne skoro ich dalej w kodzie nie używasz. Więc skasuj je z kodu - po co one ?

_________________
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: 10 lut 2013, o 14:09 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

mirekk36 napisał(a):
skasuj je z kodu - po co one ?

Po skasowaniu mam inny warning, mianowicie:

Kod:
../main.c:20:5: error: expected identifier or '(' before '{' token



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 14:19 
Offline
Moderator
Avatar użytkownika

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

matrix napisał(a):
mirekk36 napisał(a):
skasuj je z kodu - po co one ?

Po skasowaniu mam inny warning, mianowicie:

Kod:
../main.c:20:5: error: expected identifier or '(' before '{' token


to do takich kwiatków pokazuj zawsze też kod jaki masz - żeby można było podpowiedzieć gdzie babola zrobiłeś jeśli sam go nie widzisz - ok?

_________________
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: 10 lut 2013, o 14:21 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

mirekk36 napisał(a):
to do takich kwiatków pokazuj zawsze też kod jaki masz - żeby można było podpowiedzieć gdzie babola zrobiłeś jeśli sam go nie widzisz - ok?

To kod żywcem z Twojej książki:
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: 10 lut 2013, o 14:24 
Offline
Moderator
Avatar użytkownika

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

zobacz

Cytuj:
int max(uint8_t a, uint8_t b); //definicja funkcji max
{
int z=10;

//obliczenia i zwrot wyniku
return (a>b) ? (a*z)+w : (b*z)+w;
}


tu wstawiłeś sobie średnik niepotrzebnie :(

------------------------ [ Dodano po: 1 minucie ]

to już jest DEFINICJA funkcji czyli zaczyna się jej ciało - i dlatego masz dalej otwierający nawias klamrowy

a ty strzeliłeś przed nim średnik ... więc dla kompilatora to zbyt dziwna koństrukcja i nie wie o co kaman ;)

------------------------ [ Dodano po: 2 minutach ]

przy okazji jeszcze raz na spokojnie

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

_________________
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: 10 lut 2013, o 14:29 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

mirekk36 napisał(a):
ty strzeliłeś przed nim średnik ... więc dla kompilatora to zbyt dziwna koństrukcja i nie wie o co kaman ;)

Z tym że jak nie miałem wcześniej tego średnka to też wywalało błąd. Dlatego dodałem średnik żeby zobaczyć co się będzie działo. Między innymi przez takie akcje dębieję i nic nie rozumiem. Z tym samym kodem raz jest dobrze a raz źle. Makabra.

EDIT: Poprawiono literówki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lut 2013, o 14:42 
Offline
Moderator
Avatar użytkownika

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

Wiesz co?

jednak ciężko ci pomóc bo ty sam tego nie chcesz....

zamiast zrozumieć, że w trakcie nauki czegokolwiek możesz na początku popełniać 100 różnych błędów, to ty wypisujesz tu (sorki za określenie) farmazony teraz już tak powiem, że w tym samym kodzie raz jest dobrze a raz jest źle - i że makabra....

to zaczyna wyglądać nie tak jakbyś chciał się nauczyć pomimo że wszyscy starają się ci pomóc tylko tak jakbyś chciał wszystkim udowodnić że C jest do D....

to może jeśli masz taki cel ? to faktycznie zostań przy bascomie ?

------------------------ [ Dodano po: 1 minucie ]

Bo to że człowiek głupieje jak się uczy początków to raczej normalne - i wiadomo że popełnia się błędy - ale pytaj - zamiast wciąż stwierdzać że tu jest wszystko skopane ok ?

tak będzie łatwiej i tobie i nam.

_________________
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: 10 lut 2013, o 14:57 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Jeżeli mówię że tak było to tak było i możesz (możecie) wierzyć lub nie. Chcę tylko byście mi uwierzyli że tak było i niczego nie wymyślam.
Nie chcę udowadniać że C jest do bani czy nie jest do bani, chcę tylko pokazać że natrafiam jako początkujący na tyle błędów że nie potrafię sam sobie z nimi poradzić więc dlatego piszę. Czy to tak trudno zrozumieć?

Po co miałbym opisywać dany błąd jeśli bym go nie miał?

Pokazałem pierwszą wersję kodu żywcem przepisaną z książki, kazałeś mi zaremować zmienne które wywalały błąd. Zrobiłem ale dalej wywalało błąd, wstawiłem na końcu średnik żeby zobaczyć co się stanie, dalej błąd, wskazałeś mi średnik więc go wywaliłem i zrobiło się dobrze. Więc napisałem że z tym samym kodem raz jest dobrze a raz źle i tu moja wypowiedź makabra wskazuje na to że jest to dla mnie nad wyraz dziwne i dziwię się strasznie że raz działa a raz nie i że nie wiem o co chodzi.

Stąd mój wywód, więc nie odbieraj proszę tego w ten sposób że chcę pokazać że C jest do D.. bo wcale tego nie chcę.



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

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