www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bekomme Elektor 12/2004 Ultraschall Projekt nicht kompiliert


Autor: Simon S. (simasc)
Datum:
Angehängte Dateien:
  • err.txt (708 Bytes, 120 Downloads)

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

In der Elektor 12/2004 gibt es auf Seite 30ff das Projekt "In höchsten
Tönen - Ultraschall Entvernungs und Füllstandmesser".

Da dieses Projekt bereits einen ATmega zum Messen der Entvernung
verwendet und allgemein einen gut durchdachten Eindruck macht habe ich
die Schaltung leicht modifiziert als kleine Projektarbeit aufgebaut
(Akku zur Stromversorgung über DC/DC Wandler; kein Display; FT232RL für
Serielle kommunikation mit PC - darüber soll später Distanz ausgegeben
werden).

Die Elektronik steht soweit, nur fehlt nun noch die Software.
Eigentlich wollte ich einfach nur die vorhandene Elektor Software
meinen Bedüfnissen anpassen, musste nun aber feststellen, dass sich das
Projekt noch nicht einmal kompilieren lässt.

Source:
http://213.222.12.204/Default.aspx?tabid=27&year=2...
Direct Download:
http://213.222.12.204/Portals/0/Magazine/Downloads...

Fehlermeldung bei "make all" (Komplette Meldung siehe TXT Anhang):
signal.h:36:2: #warning "This header file is obsolete.  Use
<avr/interrupt.h>.

Hinzu kommt, dass die calibrate.c nicht vollständig ist. Der Block der
ersten Funktion wird noch geöffnet, danach gibt es jedoch keinen
weiteren Code.

Bisher habe ich mich in der µControllerwelt nur mit ASM beschäftigt,
C/C++ kam bei mir bisher nur auf x86 zum Einsatz.
Daher bin ich mit dem Problem nun doch etw. überfordert. Offensichtlich
reicht es nicht aus einfach anstelle der signal.h die interrupt.h
einzubinden (Neue Funktionen!?) & Elektor hat es nicht für nötig
gehalten die genaue Version von WinAVR anzugeben, mit der das
Kompilieren noch geht.

Ich wäre euch daher sehr dankbar, wenn ihr mir soweit unter die Arme
greifen könntet, dass das Projekt wenigstens einmal lauffähig
kompiliert werden kann!

BIG THX!
Simon S.

Autor: Andreas B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne Änderung kein Fehler...

> "make.exe" all

-------- begin --------
avr-gcc (GCC) 3.4.3
Copyright (C) 2004 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.


Compiling: measure.c
avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=measure.lst  -std=gnu99
measure.c -o measure.o

Compiling: result.c
avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=result.lst  -std=gnu99 result.c
-o result.o

Compiling: temperature.c
avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=temperature.lst  -std=gnu99
temperature.c -o temperature.o

Compiling: clock.c
avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=clock.lst  -std=gnu99 clock.c
-o clock.o

Compiling: command.c
avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=command.lst  -std=gnu99
command.c -o command.o

Assembling: uart.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=uart.lst,-gstabs uart.S -o uart.o

Assembling: utilities.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=utilities.lst,-gstabs utilities.S -o utilities.o

Assembling: sseg.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=sseg.lst,-gstabs sseg.S -o sseg.o

Assembling: lcd.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=lcd.lst,-gstabs lcd.S -o lcd.o

Assembling: adc.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=adc.lst,-gstabs adc.S -o adc.o

Assembling: signal.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=signal.lst,-gstabs signal.S -o signal.o

Assembling: timing.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=timing.lst,-gstabs timing.S -o timing.o

Assembling: control.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=control.lst,-gstabs control.S -o control.o

Linking: measure.elf
avr-gcc -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields
-fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Werror
-Wa,-adhlns=measure.o  -std=gnu99 measure.o result.o temperature.o
clock.o command.o uart.o utilities.o sseg.o lcd.o adc.o signal.o
timing.o control.o --output measure.elf -Wl,-Map=measure.map,--cref
-lm

Creating load file for Flash: measure.hex
avr-objcopy -O ihex -R .eeprom measure.elf measure.hex

Creating load file for EEPROM: measure.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O ihex measure.elf measure.eep
avr-gcc -S -mmcu=atmega8 -I. -g -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Werror -Wa,-adhlns=measure.lst  -std=gnu99
measure.c -o measure.s

Creating Extended Listing: measure.lss
avr-objdump -h -S measure.elf > measure.lss

Creating Symbol Table: measure.sym
avr-nm -n measure.elf > measure.sym

Size after:
   text     data      bss      dec      hex  filename
   6914      486      824     8224     2020  measure.elf


> Process Exit Code: 0


mfg Andreas

Autor: Simon S. (simasc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank!
Mit avr-gcc (GCC) 3.4.3 kompiliert es :]

Was es mit der calibrate.c auf sich hat ist mir noch immer nicht klar -
aber solange es läuft ^^

THX
Simon S.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.