Archiv verlassen und diese Seite im Standarddesign anzeigen : delay.h --will nicht mehr?
Hi Megacoder!
Ich nutze seit kurzen den WinAVR, Ver. 20080512 unter Win98se
und wundere mich, das folgendes nicht mehr geht:
#include<util/delay.h>
// The maximal possible delay is 262.14 ms / F_CPU in MHz.
// = 262.14mS/ 16MHz = 16.38
// MCU Frequenz steht in der "make".
int main(void)
{
_delay_ms(10);
}
Ich bekomme hier einen allgemeinen Compiler-Error ohne weitere Hinweise.
Kennt jemand Abhilfe?
Vielen Dank,
tholan
Ich bekomme hier einen allgemeinen Compiler-Error ohne weitere Hinweise.
Kannst Du bitte den kompletten Output posten?
PS: WinAVR20080512 würd ich nicht verwenden, das ist voll mit Bugs und erzeugt oft laufunfähigen Code oder eben internal compiler errors.
Ja die komplette Compieler Ausgabe würde mich auch interessieren...
Außerdem würde ich hinter dem #include ein Leerzeichen machen!
Nur zur Info:
Ich habe mal edelay veröffentlicht (siehe hier im Forum) um 100prozentgenaue Wartezeiten zu erreichen. Das könnte auch interessant für dich sein...
Herkulase
09.06.2008, 08:04
ich glaub, unter windows musst Du einen Backslash benutzen <util\delay.h> , nicht <util\delay.h> oder täusch ich mich da?
Gerald
Hi,
bis auf einen leeren ".dep" - Ordner
produziert der Compiler nur die folgende
Standartausgabe:
-------- begin --------
avr-gcc (WinAVR 20080512) 4.3.0
Copyright (C) 2008 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 C: M8hallo.c
avr-gcc -c -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./M8hallo.lst -std=gnu99 -Wundef -MMD -MP -MF .dep/M8hallo.o.d M8hallo.c -o M8hallo.o
M8hallo.c: In function '_delay_ms' :
M8hallo.c:10: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://sourceforge.net/tracker/?atid=52007&group_id=68108&func=browse> for instructions.
make: *** [M8hallo.o] Error 1
Ich hab noch etwas gegoogelt und noch einen knappen Hinweis gefunden, daß das mit
der Optimierung zu tun haben könnte.
Dann hab ich "opt=" in der makefile mal auf "0" gesetzt.
Daraufhin wird es fehlerfrei kompiliert.
@Herkulase:
Das mit dem Forslash in den Präprozessoranweisungen stimmt schon, da das alles unter
der Cygwin-Shell von Redhead unter Windows läuft.
Das ist 'ne kleine Linux-Emulation für Windows.
p.s. :
Außerdem würde ich hinter dem #include ein Leerzeichen machen!
...wenn's scheee macht!
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.