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



Teraz jest 28 mar 2024, o 17:20


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 43 ]  Przejdź na stronę 1, 2  Następna strona
Autor Wiadomość
PostNapisane: 10 sty 2019, o 16:53 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Czołem,

nie wiem czy tutaj powinienem to zamieścić, bo dotyczy samego programu niż problemu z pisaniem kodu.
Podczas programowania rozjechały mi się okna, które później udało mi się przywrócić na swoje miejsca. Jednak stało się coś z main.c

Mianowicie jest przekreślony plik main.c (załączone zdjęcie), co ukazuje brak podpiętych funkcji pod program główny.

Czy ktoś już miał taki problem i mógłby podpowiedzieć jak to naprawić? Zakładam, że to drobnostka.

Z góry dziękuję za wszelkie pomoce :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sty 2019, o 18:16 
Offline
Użytkownik

Dołączył(a): 23 lut 2015
Posty: 69
Pomógł: 1

nie widzę zdjęcia ale wydaje mi się ze wyłączyłeś plik z projektu. żeby go z powrotem włączyć
na pliku" main.c " prawy przycisk myszy
wybierz " Resource Configurations " następnie " Exclude from build "
jeśli na " Relase " jest ptaszek odznacz go przyciśnij " OK "


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sty 2019, o 18:48 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Działa, wielkie dzięki !

Pojawił się kolejny problem, w folderze Release brakuje pliku .hex.

Nie wiem czemu ale te zdjęcia nie chcą się załączać, pomimo informacji że je załadowało.

Ogólnie chodzi o to,że jak chcę wgrać program do płytki atb. 1.05 to wyrzuca mi błąd " The file [${workspace_loc:/000_CENTRALA}/Release/000_CENTRALA.hex] for the Flash memory does not exist or is not readable. Maybe the project needs to be build first."

Gdzie używałem jej opcji build i bez skutku.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sty 2019, o 20:42 
Offline
Użytkownik

Dołączył(a): 23 lut 2015
Posty: 69
Pomógł: 1

A próbowałeś " Clean-a" ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sty 2019, o 20:44 
Offline
Moderator
Avatar użytkownika

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

Gammadion napisał(a):
Mianowicie jest przekreślony plik main.c (załączone zdjęcie)

Panie kochany, załącz że to zdjęcie

a instrukcję "jak?" masz na forum - tutaj: topic44.html


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: 11 sty 2019, o 09:23 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Błąd mam za każdym razem, gdy chcę wgrać program do zestawu uruchomieniowego.
Próbowałem clean'a, bez skutku.

Zdjęcia próbowałem wrzucić wcześniej takim samym sposobem, jak w instrukcji zalinkowanej przez Pana Mirka. Niestety nie chcą się przesłać, ponieważ wyskakuje komunikat na czerwono, że "Nowy użytkownik nie może zamieszczać linków w postach!"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 sty 2019, o 12:25 
Offline
Użytkownik

Dołączył(a): 23 lut 2015
Posty: 69
Pomógł: 1

Pokaż może kod, bo podejrzewam że
tam jest jakiś błąd.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 sty 2019, o 16:44 
Offline
Moderator
Avatar użytkownika

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

Gammadion napisał(a):
Zdjęcia próbowałem wrzucić wcześniej takim samym sposobem, jak w instrukcji zalinkowanej przez Pana Mirka. Niestety nie chcą się przesłać, ponieważ wyskakuje komunikat na czerwono, że "Nowy użytkownik nie może zamieszczać linków w postach!"

Ok przepraszam, pracujemy już nad tym, żeby obrazki można było wstawiać - sorki za błąd

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

ale też druga sprawa - napisz na forum ze 20 postów, zadaj pytania , może wypowiedz się w jakichś wątkach żeby było ich ze 20 to będzie już można od razu bez problemu obrazki wstawiać

_________________
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: 12 sty 2019, o 18:42 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Dziękuję, jak coś informuje, że jeszcze nie działa mi załączanie linków z wgranych zdjęć. Wrzucam wszystkie spakowane kody (program jeszcze nieukończony, brakuje mi funkcji, które będą wywoływane callbackami w pętli głównej), ale faktycznie po kompilacji podkreśla mi na żółto niektóre fragmenty, natomiast po ponownej już to znika. Do końca nie wiem z czym to jest związane...

Co do drugiej sprawy, Panie Mirku raczej jestem jeszcze za cienki bolek żeby się wypowiadać na jakieś tematy :) Ale mimo wszystko postaram się więcej udzielać jeśli będą takie, w których uda mi się pomóc. Pytania również będę zadawał, bo muszę dokończyć właśnie załączony kod i mogę napotkać jeszcze różne problemy.



Ostatnio edytowano 12 sty 2019, o 21:59 przez Gammadion, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2019, o 21:14 
Offline
Użytkownik

Dołączył(a): 23 lut 2015
Posty: 69
Pomógł: 1

W tych zip-ach jest ten kod? Jak tak to użyj funkcji do wklejenia kodów.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2019, o 21:20 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

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

Cytuj:
Zdjęcia próbowałem wrzucić wcześniej takim samym sposobem, jak w instrukcji zalinkowanej przez Pana Mirka. Niestety nie chcą się przesłać, ponieważ wyskakuje komunikat na czerwono, że "Nowy użytkownik nie może zamieszczać linków w postach!"


Albo daj gdziekolwiek i na PW podaj mi link a umieszczę.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2019, o 21:36 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Biblioteki LCD, czujników DS18B20 i IR są od Pana Mirka,


Wrzucę tutaj kod od menu:

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



oraz menu.h

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


Obrazek
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 sty 2019, o 12:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 mar 2015
Posty: 310
Pomógł: 18

Problem z utworzeniem pliku *.hex wynika z błędów.
Znalazłem takie:
Obrazek
Istnieją jeszcze inne żółte plamy(podpowiedzi w eclipse).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2019, o 09:29 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Witam,

przepraszam, że nie odpowiadałem, ale byłem za granicą i nie miałem zbytnio dostępu i czasu do programu. Ogólnie po drobnych poprawkach i wyrzuceniu jednego pliku, program zgłasza już mniej błędów, a właściwie do 3 podkreśleń w pliku menu.c - buf_str i menu_refresh.

ObrazekObrazek

Załączam spakowane dwa pliki menu.c, menu.h i main.c (niedokończony) dodatkowo wykorzystuję pliki Pana Mirka do LCD.

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


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


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: 28 sty 2019, o 12:41 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Odnosząc się jeszcze do tego problemu, to błąd lcd_locate zniknął poprzez skopiowanie include'ów z lcd.c do lcd.h

Natomiast ostrzeżenie buf_str wynikający z tego, że *name jest zdefiniowane jako const char (bo raczej musi być), to buf_str nie chce mi tego zaakceptować jako stałej. Nie wiem co z tym zrobić.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2019, o 15:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Zmień deklarację funkcji buf_str ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 09:25 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Zmieniałem na różne sposoby, niestety bez skutku. Co jeszcze zrobiłem - skopiowałem void buf_str(char * text); i wstawiłem niżej ze średnikiem na końcu. Efektem tego były komunikaty przedstawione poniżej :
Obrazek

Mimo to plik hex. nie został wygenerowany, w folderze Release go nie ma, a kompilator ignoruje ostrzeżenia.
Jest tam też nawiązanie do pliku .elf, aczkolwiek jak sprawdzałem go to nie jest pusty.

Czy ktoś miał taki przypadek? Bardzo proszę o pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 09:53 
Offline
Użytkownik

Dołączył(a): 09 lut 2017
Posty: 73
Lokalizacja: 51°03′22″N 15°45′48″E
Pomógł: 18

Tak próbowałeś?:

void buf_str(const char *name)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 11:42 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Nie przepuszcza "const". Podkreśla na czerwono error: conflicting types for 'buf_str'



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 11:54 
Offline
Użytkownik

Dołączył(a): 09 lut 2017
Posty: 73
Lokalizacja: 51°03′22″N 15°45′48″E
Pomógł: 18

W menu.c i menu.h zmieniłeś? Tzn. deklarację i definicję?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 11:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Musisz poprawić i deklarację i definicję. Najłatwiej: wyszukaj void buf_str(char *name) (bo chyba tak jest ta funkcja deklarowana) i zamień na void buf_str(const char *name). Koniecznie we wszystkich miejscach. Bo wygląda na to, że zmieniłeś w jednym miejscu i eclipse woła, że masz różne funkcje buf_str

Edit: Kolega mnie ubiegł, ale zamieszczę, może się przyda



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 13:04 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

buf_str mam wrzucone w menu.h następująco :

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


następnie w menu.c mam w raz zadeklarowaną i wywołaną w menu_refresh, jak poniżej :

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


Obawiam się, że problem może tkwić w samym eclipsie, ponieważ teraz po kompilacji mam jakiś nowy błąd, nie generuje już nawet pliku.elf. Robiłem Builda, nie pomaga. Aczkolwiek jeśli kompiluje przykładowy program od Pana Mirka, to normalnie działa.
Wrzucam jeszcze screena z ostatniego komunikatu w zakładce Console:
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 13:25 
Offline
Moderator
Avatar użytkownika

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

Gammadion napisał(a):
void buf_str(const char *name)
{
        while(*name)
                buf_char(*name++);
}


Panie kochany no zajrzyj proszę do Bluebooka, czy greenbooka do pierwszej lepszej biblioteki wysyłającej string z pamięci FLASH (czy to biblioteka do UART, czy do LCD itp) ;) no przecież masz tam jak byk jak to się robi - bo ta funkcja będzie zwracać śmieci

_________________
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: 29 sty 2019, o 13:34 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Teraz nie widzi funkcji menu_refresh w pliku menu.c. Dziwne... spróbuj zrobić Clean projektu przed kompilacją.
Widzę, że w funkcji buf_str wywołujesz funkcję buf_char. W niej też zmieniłeś parametry?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 14:00 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Sprawdzę dzisiaj w książce jak będę w domu, może rzeczywiście robię coś źle. Clean nie pomaga, wyrzuca takie same błędy.
Co do buf_char, nic nie zmieniałem i napisany jest następująco:
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: 29 sty 2019, o 21:25 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Przejrzałem kody w greenbooku na 365 i 366 stronie. Ogólnie miałem stringa wysyłać z pamięci RAM, przerobiłem na FLASH i wyrzuca mi kolejne błędy. Zdefiniowałem active_buf i lcd_buf w menu.h. Jeszcze jedna uwaga - w książce jest kod void buf_str_P(char*s), natomiast w kodzie źródłowym, który wrzuciłem do Eclipsa jest void buf_str_P(const char*s).
Przeróbki i błędy wyglądają następująco :

ObrazekObrazekObrazek
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 sty 2019, o 21:48 
Offline
Moderator
Avatar użytkownika

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

eee bo mieszasz pojęcia - co ty bierzesz za jakąś funkcję lcd_buf() - nie dość, że masz wyraźny komunikat że zła ilość argumentów to mieszasz między książkami GB i BB nie patrząc nawet do czego są dane funkcje

Mówiłem ci zajrzyj do BB do np biblioteki LCD i tam zobacz

_________________
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: 30 sty 2019, o 09:40 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Panie Mirku, oczywiście zaglądałem do BB nawet przed GB (przepraszam za wcześniejsze niedomówienie :) ). Jest tam wszystko jasno rozpisane. Ale po moich wypocinach nie osiągnąłem celu zamierzonego. Nie chcę już tutaj wrzucać różnych przypadków, tak więc napiszę krótko jak rozwiązałem problem z kompilacją - po prostu wrzuciłem menu_refresh (który był na samym dole menu.c) na samą górę pod linijkami :

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


Problem zniknął, wygenerował się plik.hex, niezależnie od tego, czy wrzucę swoją funkcję pierwotną, którą miałem, czy podpowiedzi kolegów lub kody z książki. Niestety nie mam przy sobie płytki, ale jak wrócę do domu to napiszę, czy wszystko działa jak należy ;)
Co do funkcji lcd_buf(), została ona stworzona na podobieństwo Pana funkcji. Robię dość złożony projekt, do którego dojdą funkcje wykonawcze i zapewne jeszcze nie raz utknę i opiszę niejeden problem.
W każdym razie dziękuję wszystkim za pomoc !



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 sty 2019, o 11:29 
Offline
Użytkownik

Dołączył(a): 09 lut 2017
Posty: 73
Lokalizacja: 51°03′22″N 15°45′48″E
Pomógł: 18

Kolego, znalazłem gdzie miałeś babola. Nie zamknąłeś klamrą funkcji void menu_enter(void) w main.c. Funkcja void menu_refresh(void) była poniżej i kompilator traktował ją jako wewnętrzną, a to się kłóciło z deklaracją w main.h. Po usunięciu klamry na końcu pliku wszystko się kompiluje poprawnie. Przenosząc funkcję na górę przypadkowo pewnie to naprawiłeś.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 sty 2019, o 12:09 
Offline
Użytkownik

Dołączył(a): 17 gru 2018
Posty: 29
Pomógł: 0

Pod menu_enter(void) jeszcze było menu_cancel(void), ale faktycznie to było to...
A ja z tym walczyłem tyle czasu..
Dziękuję za wyjaśnienie :)



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: 43 ]  Przejdź na stronę 1, 2  Następna strona

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