Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > > Hallo Torsten, > > > > > > > > > > habe den code dahingehend geändert, ergab leider keine Änderung, bleibt genau beim switch hängen. > > > > > Ist dies wirklich ein Problem, wenn ich mit switch eine Bytevariable abfrage. > > > > > Ich komme mit dem Byte nicht an die Grenze von 32 767, ich muss nur darauf achten, dass ich > > > > > beim case nicht negativ werde. > > > > > > > > Hallo Josef, > > > > > > > > schade ... hatte gedacht dass in der Sprungweitenberechnung was schief > > > > läuft. Weder die Anzahl der Anweisungen innerhalb einer "switch" > > > > Kontrollstruktur, noch die Größe des eigentlichen Programms sind > > > > alleine dafür verantwortlich. Das lässt sich mit dem Programm > > > > "TestSwitch.cc" gut nachvollziehen. > > > > > > > > Gruß Torsten > > > Hallo Torsten, > > > > > > herzlichen Dank für deine Mühe. Habe auch sehr gehofft , dass mit der Änderung der > > > Variablen auf int der Fehler behoben ist. > > > Das von dir beigefügte Programm funkt bei mir auch. > > > > > > Ich habe bei meinem Programm bis zur switch Abfrage, die nicht akzeptiert wird noch > > > folgendes ausprobiert: > > > -alle switch Variablen bis zu void page_change(void) auf int Variable geändert-kein Erfolg > > > - default beim switch eingefügt - kein Erfolg > > > -watch dog entfernt - kein Erfolg > > > -U-Prg Aufruf -> PORT_INIT (); deaktiviert - Erfolg > > > > > > Meldungen: > > > Übersetze Projekt Haussteuerung > > > C-Control Pro Compiler (C) 2011 Conrad Electronic > > > Durchlaufe Pass 1 > > > Durchlaufe Pass 2 > > > 1126 bytes (4kb:45% - 64kb:1%) globale Variablen > > > Generiere Bytecode - 57035 bytes.. > > > Schreibe Symboldaten - 26790 bytes.. > > > Starte AVRA Assembler > > > Linken der Assembler Adressen erfolgreich > > > > > > also über 57 k > > > > > > Ausgaben: > > > Interpreter gestartet - 4kb RAM > > > 0 0 5 6 m_page: 0 switch ANFANG default switch ENDE 10 > > > > > > switch wird akzeptiert - Programm läuft > > > > > > Frage macht mein Prg bei dir denselben Fehler? > > > > > Hallo Torsten, > > > > habe noch weiter getestet: > > Deaktiviere ich den 10ms Interrupt ( Irq_SetVect(INT_TIM2COMP,INT_10ms);) dann > > funkt das ganze wieder. > > Bei Deaktivierung der anderen Interrupts mit aktiviertem 10ms Interrupt funktionierts > > nicht. > > Habe den 10ms Interrupt in dein Prg eingebaut, hier funktioniert dieser auch. > > Hallo Josef, > > wie ich oben schon mal sagte, es ist vermutlich eine ungüstige Kombination.... > > Versuche doch mal einzelne Funktionen in dem 10ms Interrupt zu aktivieren, deaktivieren. Von gar nichts bis alles.... > Die Funktionen in meinem 10ms Interrupt habe ich damals auch reduziert. > > Grüße Jörg >