Hallo,
Ich habe ein Problem:
Irgendwie bekomm ich immer eine merkwürdige Fehlermeldung, sobald ich die Chirpfunktion benutzen will. Ich habe Windows XP, AVR Lib 2.80, Programmers Notepad 2. Pfad in makefile wurde geändert. Die Dateien hab ich auch in den default Ordner kopiert/ersetzt und in den Options make new lib erstellt und dieses mit make-all verbunden.
Wenn ich nun ein Programm kompiliere, indem nur "Standardfunktionen" aus der asuro.h verwendet werden gibt es keine Fehlermeldung, sobald ich die chirp Funktion verwenden möchte, erhalte ich folgende Fehlermeldung:
Und ich kann damit überhaupt nix anfangen. Mein Quellcode ist einfach nur ein Testcode für den Ultraschallsensor:Code:C:\Asuro\ASURO_src\FirstTry>make clean set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c \ | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \ [ -s test.d ] || rm -f test.d -------- begin -------- rm -f test.hex rm -f test.eep rm -f test.obj rm -f test.cof rm -f test.elf rm -f test.map rm -f test.obj rm -f test.a90 rm -f test.sym rm -f test.lnk rm -f test.lss rm -f test.o asuro.o rm -f test.lst asuro.lst rm -f test.s asuro.s rm -f test.d asuro.d Errors: none -------- end -------- C:\Asuro\ASURO_src\FirstTry>make MCU=atmega8 LIBFILE=asuro set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c \ | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > asuro.d; \ [ -s asuro.d ] || rm -f asuro.d set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c \ | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \ [ -s test.d ] || rm -f test.d -------- begin -------- avr-gcc --version avr-gcc (GCC) 3.3.1 Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c -o test.o test.c: In function `main': test.c:17: warning: implicit declaration of function `SerPrint' test.c:25: warning: implicit declaration of function `PrintInt' avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c -o asuro.o avr-gcc -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.o test.o asuro.o --output test.elf -Wl,-Map=test.map,--cref -LC:/Asuro/lib -lm -lasuro C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: BFD 2.14 20030612 + coff-avr-patch (20030831) internal error, aborting at ../../bfd/reloc.c line 444 in bfd_get_reloc_size C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: Please report this bug. make: *** [test.elf] Error 1 C:\Asuro\ASURO_src\FirstTry>pause Press any key to continue . . .
Das Programm geht, weil auch die hex datei dieses Programms mit dabei war...Code:/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * any later version. * ***************************************************************************/ #include "asuro.h" #include "ultrasonic.h" int abstand=0; int main(void) { Init(); SerPrint("\r\n --- ultrasonic test ---"); do { abstand = Chirp(); SerPrint("\r\n distanz in cm: "); PrintInt(abstand); } while(1); return 0; }
Ich hoffe sehr, dass ihr mir helfen könnt....







Zitieren

Lesezeichen