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



Teraz jest 12 lis 2024, o 17:38


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 8 sty 2013, o 09:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 gru 2012
Posty: 72
Pomógł: 6

Witam.

Mam problem z podziałem projektu na pliki. Jak to bywa na początku wszystko w jednym kotle, ale działa...
Przyszło mi więc na myśl, że podzielę sobie wszystko ładnie na kilka mniejszych plików. tworze pliki *.h oraz *.c i nastał wielki problem. Po podziale tematycznym zostały mi tablica i struktura które to mają odniesienie w kilku funkcjach w różnych plikach.

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

Mam pliki do obsługi ds18b20 (ds18b20.h oraz c) funkcja odczytująca temperatury zapisuje je do tablicy pod wskazane indeksy (wykorzystuje także jeden element struktury)
Następnie funkcje do wyświetlania wyników na LCD (pliki menu.h oraz c) oraz kilka stanów ze struktury.
Dochodzi to tego plik z funkcjami sterującymi sprzętem (hardware.h oraz c) w których wykorzystywane są wszystkie pozycje ze struktury oraz odnosi się do tablicy.
Taki mały termometr funkcyjny. Oczywiście jest jeszcze kilka plików ale one nie stanowią problemu. Program przepisuje na nowo na podstawie starego (bez ctrl+c, ctrl+v) i napotkałem na taki problem.

Jak to najprościej zrobić żeby się nie narobić a dobrze zrobić? ;)
Podajcie jakieś namiary na rozwiązania a się do edukuje bo teraz to nawet nie wiem co mam szukać.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 09:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 paź 2011
Posty: 581
Pomógł: 17

Nie jestem pewny ale chyba powinieneś poszukać informacji o extern



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 09:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

http://mirekk36.blogspot.com/2012/11/av ... iazek.html
Najprościej jak się da odpalasz filmiki poniżej i już wiesz co nie tak



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 10:04 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 gru 2012
Posty: 72
Pomógł: 6

Nie to żebym był leniem aż takim i już czym prędzej na forum pisać...
Filmy obejrzałem ale nie dopatrzyłem się rozwiązania.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 10:12 
Offline
Moderator
Avatar użytkownika

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

tom1988p napisał(a):
Nie to żebym był leniem aż takim i już czym prędzej na forum pisać...
Filmy obejrzałem ale nie dopatrzyłem się rozwiązania.


To obejrzyj jednak jeszcze raz, potem jeszcze raz - hmmm możesz też POLECAM GORĄCO obejrzeć szczególnie ten nowszy.

http://mirekk36.blogspot.com/2012/12/ws ... a-bez.html

I nie mów że w obydwu poradnikach NIE MA rozwiązania twojego i to konkretnego problemu bo JEST ;) JEST panie kochany .... na 100000% jest.....

szczególnie gdy tłumaczę jak podchodzić do tworzenia struktur - (podpowiedź dla ciebie - w filmach typedef) .... a ty co ? W ogóle z tego nie korzystasz a potem KLOPS. Oczywiście można poradzić sobie i bez typedef - ale jak chcesz - może coś robić 4x trudniej a można robić 5x łatwiej. Niektórzy nie wiem dlaczego wybierają tą pierwszą drogę ... i o tym właśnie mowa w obydwu poradnikach.

_________________
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: 8 sty 2013, o 10:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 gru 2012
Posty: 72
Pomógł: 6

Napisałem tak bo to powstało zanim trafiłem na to forum oraz zanim powstały poradniki.
Obejrzę ze 3 razy, zrozumie lub nie, odezwę się. Właśnie pobieram sobie na dysk.
Wyraziłem skruchę, chęć naprawienia szkody (błeee kodu) bo "trzeba pisać jak dla zespołu programistów"
Nie napisałem ze go nie ma, tylko że się nie dopatrzyłem, bez okularów oglądałem ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 10:51 

Pomógł: 0

Na początku ciężko załapać, jeżeli przykłady są na innym kodzie niż nasz, ale po paru obejrzeniach i częstych powtórkach samo się potem w głowie układa.
Sam miałem sporo problemów z podziałem na pliki bo wiecznie mi się rzucał kompilator o to, że albo nie ma deklaracji, albo, że są ale wielokrotne, bo miałem pliki .h pododawane w wielu miejscach projektu i deklaracje i definicje się powielały.



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 8 sty 2013, o 12:57 
Offline
Moderator
Avatar użytkownika

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

tom1988p napisał(a):
... chęć naprawienia szkody (błeee kodu) bo "trzeba pisać jak dla zespołu programistów"....;)


oooo załapanie tej idei to już jest dużo ;) bardzo mocno staram się to przekazać .... a reszta jest już jakby pochodną tego wszystkiego ;)

tak więc obejrzyj - tym razem z okularkami ;) hyhy a wtedy jeśli jeszcze coś będzie niezrozumiałe to dawaj śmiało z pytaniami - dużo łatwiej i szybciej będzie coś podpowiedzieć.

_________________
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: 8 sty 2013, o 13:10 

Pomógł: 0

Najgorzej to jak masz właśnie jakieś #define, no i używasz w kilku miejscach zmiennych z bibliotek Mirka i swoich, jak np. u mnie w moim projekcie sterownika do DS18x20 , ależ ja się namęczyłem. Definicje wrzuciłem do .c, deklaracje do .h, a i tak mi się rzucał.....



Góra
  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

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