Ta strona używa ciasteczek (plików cookies), dzięki którym może działać lepiej. Dowiedz się więcejRozumiem i akceptuję

Problem przy kompilacji: collect2.exe: error: ld returned 5 exit status

Autor Wiadomość
XAX 



Posty: 2
Wysłany: 11-01-2017, 23:08   Problem przy kompilacji: collect2.exe: error: ld returned 5 exit status

Witam Kolegów.

Arduino 1.8.1 (było też na 1.6.12)
System: XP sp3

Mam prosty projekt który ma na celu mierzyć temperaturę NTC podpiętego do A0 i wysiedlać wynik na LCD.
Ma tez pokazywać jej wartość minimalną i maksymalną.
Zrobiłem pomiar i wyświetlanie temperatury i wszystko działało poprawnie.
Kompilator zgłaszał że wszystko jest dobrze:

Szkic używa 3902 bajtów (12%) pamięci programu. Maksimum to 30720 bajtów.
Zmienne globalne używają 101 bajtów (4%) pamięci dynamicznej, pozostawiając 1947 bajtów dla zmiennych lokalnych. Maksimum to 2048 bajtów.


Gdy zacząłem dopisywać kolejne zmienne kompilator zaczął głupieć i nie mam już pomysłu co może być tego powodem. Dopisanie jakiekolwiek linii powoduje wywalenie błędu przy kompilacji:

collect2.exe: error: ld returned 5 exit status
exit status 1
Błąd kompilacji dla płytki Arduino Nano.


Jestem początkujący i może błąd jest jakiś prosty. Ale nie mam pomysłu skąd i dlaczego on się pojawia :-(

Kod programu: Zaznacz cały

#include <LiquidCrystal.h> //Dołączenie bilbioteki
#include <math.h>

LiquidCrystal lcd(7, 6, 2, 3, 4, 5); //Informacja o podłączeniu nowego wyświetlacza (RS), (Enable), (D4), (D5), (D6), (D7)

double TempNTC;
word Temp;
word Tmin=24;
word Tmax=24;
//word Td=0;

void setup() {
 lcd.begin(16, 2); //Deklaracja typu
 lcd.setCursor(0, 0); //Ustawienie kursora
 lcd.print("    Termomet"); //Wyświetlenie tekstu
 lcd.setCursor(0, 1); //Ustawienie kursora
 lcd.print("   do Zelazek"); //Wyświetlenie tekstu
 delay(3000); //Odczekanie 1 sekundy
 lcd.clear();
 lcd.begin(16, 2); //Deklaracja typu
 lcd.setCursor(0, 0); //Ustawienie kursora
 lcd.print("   Serwis"); //Wyświetlenie tekstu
 lcd.setCursor(0, 1); //Ustawienie kursora
 lcd.print("     V0.01"); //Wyświetlenie tekstu
 delay(3000); //Odczekanie 1 sekundy
 lcd.clear();
}

double Thermister(int RawADC) {

 // See http://en.wikipedia.org/wiki/Thermistor for explanation of formula
 TempNTC = log(((10240000 / RawADC) - 10000));
 TempNTC = 1 / (0.001129148 + (0.000234125 * TempNTC) + (0.0000000876741 * TempNTC * TempNTC * TempNTC));
 TempNTC = TempNTC - 273.15;           // Convert Kelvin to Celcius
 return TempNTC;
}



void loop() {
 lcd.clear();
 Temp = Thermister(analogRead(0));  // Read sensor

 lcd.setCursor(0, 0); //Ustawienie kursora
 lcd.print (Temp); //Wyświetlenie tekstu
 lcd.print ("C");



 delay(500);
}
Polecany artykuł z FORBOT.PL:
Szybki start z WinAVR

Pakiet programów WinAVR zawiera w sobie całkiem dobry i zupełnie darmowy (na licencji GPL) kompilator języka C... Czytaj całość

Polecany artykuł » Kurs elektroniki - #2 - multimetr, pomiary, rezystory


Postaw piwo autorowi tego posta
 
 
deshipu 




Posty: 1679
Pomógł: 88 razy
Otrzymał 142 piw(a)
Programuję w:
Python, C, Lua
Należę do:
Nigmalabs
Moje roboty:
uKubik, pKubik, Katka, Tote

Wysłany: 11-01-2017, 23:59   

U mnie działa. Musisz mieć coś zepsutego w swojej instalacji Arduino IDE. Co to za system, Windows? Robiłeś może jakieś update-y ostatnio? A może masz jakiegoś antywirusa, który coś miesza?

Postaw piwo autorowi tego posta
 
 
XAX 



Posty: 2
Wysłany: 12-01-2017, 00:15   

>> U mnie działa
Dopisywałeś linie lub deklaracje zmienych??

>> Musisz mieć coś zepsutego w swojej instalacji Arduino IDE.
Już je kilka razy reinstalowałem i wszystkie biblioteki. Przy wersji 1.5 nie było większych problemów. Nim wyższa wersja tym więcej dziwnych błędów mi się pojawia. Nawet w programy które wcześniej działały na nowych wersjach nie chcą się kompilować :(

>> Co to za system, Windows?
Legalny Windows XP z service pack 3
Muszę sprawdzić na Windows 10 czy też będzie robił takie jaja.


>> Robiłeś może jakieś update-y ostatnio? A może masz jakiegoś antywirusa, który coś miesza?
Staram się mieć wszystko aktualne.
Używam Nortona ale on raczej nie robi takich problemów i nie podejrzewam go o to bo co ma jego działanie do kompilowania większej liczby linii w IDE?

Postaw piwo autorowi tego posta
 
 
deshipu 




Posty: 1679
Pomógł: 88 razy
Otrzymał 142 piw(a)
Programuję w:
Python, C, Lua
Należę do:
Nigmalabs
Moje roboty:
uKubik, pKubik, Katka, Tote

Wysłany: 12-01-2017, 08:52   

Nic nie dopisywałem, skompilowało się tak, jak wkleiłeś.

Upewnij się, że instalujesz IDE w ścieżce, która jest krótka i nie zawiera polskich liter i spacji.

Warto przeczytać » Kurs elektroniki II - #7 - scalone odbiorniki podczerwieni


Postaw piwo autorowi tego posta
 
 
jpx 



Posty: 1
Skąd: praszka
Wysłany: 14-01-2017, 14:15   

Ja mialem taki blad kiedy nie okreslilem predkosci komunikacji z pc.


jpx
Postaw piwo autorowi tego posta
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Wersja do druku

Skocz do:  

Nie rozwiązałeś swojego problemu? Zobacz podobne tematy: Arduino ATmega 328-k... Arduino, problem z o... Poszukuję kogoś z A... Arduino - dziwne zac...
lub przeszukaj forum po wybranych tagach: collect2.exe, error, exit, kompilacji, ld, problem, przy, returned, status


Powered by phpBB modified by Przemo © 2003 phpBB Group
Popularne kursy: Arduinopodstawy elektroniki