Forum: Compiler & IDEs Alternativer Delay-Code


von Anton A. (miom)


Lesenswert?

Hallo zusammen,
ich hab meine kompletten Programmierumgebungen auf einen anderen Rechner 
umgelagert. Leider habe ich dort nun einige Probleme beim Erstellen von 
Programmen mit den Funktionen aus der util/delay.h.
Und zwar schießt sich der Compiler sobald eine solche Funktion vorkommt 
mit folgendem Fehler ab: internal compiler error: Illegal instruction

Ich habe ein wenig recherchiert und ein paar vereinzelte Probleme 
gefunden, die ähnlich sind, folgende scheint mir die aufschlussreichste 
zu sein:
Beitrag "Was ist die aktuelle, STABILE WinAVR Version?"

Leider habe ich nicht die Kenntnisse um zu prüfen, ob genau der selbe 
Fehler auftritt, aber da auf dem Rechner eine zumindest etwas 
exotischere CPU (Via C7) ihre Arbeit verrichtet, kann ich mir das gut 
vorstellen.

Da ich keine Lösung für das Problem habe, ist es eventuell am besten 
alternative Delayfunktionen zu verwenden. Die müssen nicht unbedingt 
hochoptimiert sein. Wie eine solche Delay Funktion abläuft ist mir vom 
Prinzip her einigermaßen klar, nur an der Umsetzung hapert es etwas (und 
ich fürchte es gibt nur sehr ungenaue Wartezeiten...).

Daher lange Rede, kurzer Sinn: Gibt es brauchbare (möglichst < 5% 
ungenauigkeit) alternative Funktionen? Hat vll jmd von euch sowas schon 
mal programmiert?
Oder weiß gar jemand, wie ich den Fehler allgmein verhindern kann (ohne 
mir neue Hardware kaufen zu müssen ;))?

Es wäre wirklich toll wenn mir jemand bei der Sache helfen könnte.

Gruß,
Anton

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Anton Arnold wrote:

> Da ich keine Lösung für das Problem habe, ist es eventuell am besten
> alternative Delayfunktionen zu verwenden.

Genau.  Warum die Ursache des Problems beheben, wenn man an den
Symptomen herumdoktorn kann?  Wenn beim Auto die Öldrucklampe
aufleuchtet, klemmt man ja schließlich auch lieber die Lampe ab,
statt Öl nachzufüllen, nicht wahr?

Wer sagt dir, dass nicht der gleiche Fehler übermorgen bei etsas
komplett anderem passiert?

Falls dir das mit der letzten WinAVR-Version immer noch passiert, dann
wäre es höchste Zeit, endlich mal einen Bugreport dafür zu schreiben,
ansonsten wird das Problem vermutlich nämlich nie behoben werden --
weil Eric nichts davon erfährt.

von Michael U. (amiga)


Lesenswert?

Hallo,

die VIA-CPUs sind immer mal für eine Überraschung gut, war schön früher 
so, als noch Cyrix draufstand. ;)

Win98 und ein altes DOS-basiertes Kassenprogramm auf VIA: keine 
Probleme.
Selbiges unter W2000/WinXP: beim Start stürzt 2-3x die DOS-Emu ab, dann 
startet es und läuft fehlerfrei. Bis zum nächsten beenden und 
neustarten...

Auf AMD und Intel keine Probleme.

Gruß aus Berlin
Michael

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.