PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu Beispielprogramm aus Asuro Buch 1



Asuroneuling
19.07.2009, 10:01
#include "asuro.h"

int main (void)
{
DDRB |= (1<<PB0)
PORTB |= (1<<PB0)
PORTB &= ~(1<<PB0)
while(1);
return 0;
}

o.K also bei mir kommt dann immer dieser Fehler.



avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c -o test.o
In file included from asuro.h:34,
from test.c:1:
c:/winavr-20090313/lib/gcc/../../avr/include/avr/signal.h:36:2: warning: #warning "This header file is obsolete. Use <avr/interrupt.h>."
test.c: In function 'main':
test.c:6: error: called object '1' is not a function
test.c:7: error: called object '1' is not a function
test.c:8: error: expected ';' before 'while'
make: *** [test.o] Error 1

> Process Exit Code: 2
> Time Taken: 00:01


Wer nochmal nachgucken will, dass Programm befindet sich auf Seite 50.

radbruch
19.07.2009, 11:38
Hallo

In den Zeilen 5, 6 und 7 fehlt jeweils das ; nach (1<<PB0). Deshalb wird jeweils in der folgenden Zeile ein Fehler angezeigt (6, 7 und 8).


warning: #warning "This header file is obsolete.
Die Headerdatei signal.h sollte nicht mehr verwendet werden, der Ersatz dafür ist interrupt.h Das kann man in asuro.h ändern:

...
#include <avr/io.h>
#include <avr/interrupt.h>
//#include <avr/signal.h>
#include <stdlib.h>
...


Gruß

mic

Asuroneuling
19.07.2009, 15:57
Wo ist diese interrupt.h Datei?

Asuroneuling
19.07.2009, 16:01
Sag nichts, dass war eine sehr dumme Frage ich habe die Antwort schon gefunden.

radbruch
19.07.2009, 16:27
Hihi :))

Asuroneuling
19.07.2009, 16:39
Einfach mal eine kurze zwischen Frage:

Warum sollte die signal.h Datei nicht mehr verwendet werden.

radbruch
19.07.2009, 17:21
Der Kompiler mag das nicht, warum weiß ich auch nicht. Infos gibts vermutlich hier:

interrupt.h oder signal.h (http://lmgtfy.com/?q=interrupt.h+signal.c+gcc+avr)?

Gruß

mic

[Edit]Da staunt der Laie! Fundstelle Nummer 1: http://www.rn-wissen.de/index.php/Avr-gcc#Inkompatibilit.C3.A4t :) Wir sind die Besten ;)