ATNEL tech-forum
https://forum.atnel.pl/

Arduino Dzielenie kodu na pliki
https://forum.atnel.pl/topic22949.html
Strona 1 z 1

Autor:  gozziu [ 21 mar 2020, o 17:28 ]
Tytuł:  Arduino Dzielenie kodu na pliki

Witam
Postanowiłem uporządkować swój projekt w związku z tym podzieliłem go na pliki.
I tu pojawił się problem, którym mnie zatrzymał.
Zamieszczam kod przykładowy:
Składnia: [ Pobierz ] [ Ukryj ]
język cpp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


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


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


Błędy kompilatora

make: *** [Nano_test.elf] Error 1
Method 'println' could not be resolved
Method 'println' could not be resolved
recipe for target 'Nano_test.elf' failed
undefined reference to `wyslij()'

lub

C:\Users\stasz\eclipse_workspace\Nano_test\build\uno/../../Nano_test.cpp:18: undefined reference to `wyslij()'
collect2.exe: error: ld returned 1 exit status
make: *** [Nano_test.elf] Error 1
makefile:64: recipe for target 'Nano_test.elf' failed

Zastanawiam się jakie magiczne słowo należy dopisać i gdzie, próbowałem różne opcje ale bez rezultatu.
Podobna sytuacja jest z instrukcją np. "sensors.requestTemperatures();" z biblioteki DallasTemperature , w funkcji loop() jest ok, a po przeniesieniu do oddzielnego pliku lipa!
Proszę o pomoc.

Autor:  ProgramistaAVR [ 22 mar 2020, o 07:06 ]
Tytuł:  Re: Arduino Dzielenie kodu na pliki

Arduino jest tak (nie)pomyślane aby na max utrudnić normalną pracę o czym świadczy chociażby brak wsparcia dla debugera, narzędzia niezbędnego do wygodnej i szybkiej pracy. Zostaw to pseudo IDE arduino i użyj AtmelStudio jeśli pracujesz na AVR. Jeśli na STM32 to uzyj CubeIDE.

Autor:  gozziu [ 22 mar 2020, o 08:46 ]
Tytuł:  Re: Arduino Dzielenie kodu na pliki

Zapomniałem dodać, że używam Eclips-a.

Autor:  gozziu [ 24 mar 2020, o 15:44 ]
Tytuł:  Re: Arduino Dzielenie kodu na pliki

Problem rozwiązany.
Banalna sprawa, plik źródłowy powinien mieć rozszerzenie .cpp a nie .c ponieważ aplikacje na Arduino piszemy w C++ :)

Autor:  fofex [ 25 mar 2020, o 11:07 ]
Tytuł:  Re: Arduino Dzielenie kodu na pliki

gozziu napisał(a):
plik źródłowy powinien mieć rozszerzenie .cpp a nie .c

Nie. Należy użyć dyrektywy extern "C".

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/