Alternativer Delay-Code

OP #1104555
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
Moderator Persönliche Seite
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.
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.