Forum: Compiler & IDEs simpler Code eines 8515 funzt nicht mit Mega128


von Posko (Gast)


Lesenswert?

Habe mal auf einem 8515 ein simples Programm mit einer Endlosschleife,
zwei Tastenabfragen und LEDs an- und ausschalten geschrieben. Nach der
Anpassung der Ports auf dem Mega128 musste ich feststellen, dass der µC
nicht mal mehr in die Endlosschleife (while) springt.

Wenn solche simplen Sachen schon nicht funktionieren, brauche ich gar
nicht erst mit dem richtigen Programmieren anfangen! Ist da etwas
Grundsätzliches falsch?

Nachfolgend ein paar Anweisungen, die eigentlich alle das Gleiche
machen sollten, das in der Simulation (AVR-Studio) auch tun, aber der
µC machts nicht.

int main(void)
    {
      unit8_t inf=0;
      while(inf==0)
          {
             //LED an funktioniert nicht mit MEGA128
          }
    }


int main(void)
    {
      for(;;)
          {
             //LED an funktioniert
          }
    }

Wie gesagt, die Simulation funzt. Auf dem 8515 ging die erste Version
auch. Habe dann noch Probleme mit verschachtelten if-Anweisungen, die
ebenfalls auf dem 8515 liefen, vom Mega128 aber ignoriert werden.

Bei allen Anweisungen spielt der Datentyp uint8_t eine Rolle. Kann das
damit zusammen hängen?

Was hat sich im C-Sprachverständnis des Mega128 im Vergleich zum 8515
geändert?

Vielen Dank!

von Posko (Gast)


Lesenswert?

Hab´s rausgekriegt:

Der Kompatibilitäts-Mode mit dem Mega103 funkt dazwischen.
Einfach die Fuse M103C löschen (in PonyProg unter Command, Security
Configuration Bits), dann geht´s!

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.