Hallo,
ich habe einen verrückten Fehler den ich mir nicht erklären kann.
Meine Software rennt soweit gut und ich war eben am verfeinern und verbessern. Ich schreibe meist alles einfach so runter und dann, wenn die Funktionalität passt, dann fange ich an das ganze zu verbessern wo es geht.
Ich deklariere folgende Variablen:
Alles anzeigen
Ein Paar Variablen sind mit " 'DRECK / DRECKE ENDE' " markiert und genau um diese geht es. Keine dieser Variablen benötige ich im code. Sie werden nicht verwendet. Lösche ich sie aber, dann spinnt meine Software. Egal ob ich alle lösche oder eine davon. Er kompiliert sauber durch und die Software spinnt.
Jetzt wird es noch verrückter. Kopiere ich den Block an eine andere Stelle. Z.B. unter die letzte Variablen Deklaration in Zeile 51. Also einfach Copy/Paste, dann spinnt meine Software auch. Kopiere ich sie wieder dahin wo sie jetzt sind, dann geht wieder alles.
Noch verrückter: Benenne ich sie um, in irgend etwas dann geht die Software auch. Sie werden also definitiv nicht benötigt. Dürfen heißen wie sie wollen, müssen nur da sein und genau an dieser Stelle......
Tja und nun die Frage, wie kann das sein, dass Variablen, die keiner braucht so stören wenn man sie entfernt und selbst dann stören, wenn man ihre Deklaration in eine andere Zeile kopiert?
Gruselig oder?
Grüße
ich habe einen verrückten Fehler den ich mir nicht erklären kann.
Meine Software rennt soweit gut und ich war eben am verfeinern und verbessern. Ich schreibe meist alles einfach so runter und dann, wenn die Funktionalität passt, dann fange ich an das ganze zu verbessern wo es geht.
Ich deklariere folgende Variablen:
Quellcode
- DIM Eedummy AS ERAM BYTE ' AVR bug in eeram
- DIM modusEeprom AS ERAM BYTE ' save the value of discharge mode
- DIM modus AS BYTE
- DIM oledViewEeprom AS ERAM BYTE ' save the value of OLED view
- DIM oledView AS BYTE ' Specifies which display of a view is shown
- DIM oledSwitch AS BIT ' Ensures the triggering of the oled changeover in intervals
- DIM switch AS BYTE
- DIM abstand(9) AS STRING * 11
- DIM Ddata(1024) AS BYTE ' Display data buffer
- DIM hspEin AS BIT ' Beinhaltet den aktuellen Zustand der Hochspannung
- DIM hspEinAlt AS BIT
- DIM error AS BYTE ' Beinhaltet den aktuellen Zustand der Fehler
- 'DRECK
- DIM L AS SINGLE ' Abstand Elektrode zur Rollenoberfläche
- DIM D AS SINGLE ' Rollendurchmesser
- DIM V AS SINGLE ' Bahngeschwindigkeit
- DIM D1 AS SINGLE ' Materialstärke
- DIM test AS SINGLE
- DIM adcIpos AS WORD ' Übermittelter positiver Strom in Digit
- DIM iIstPos AS LONG
- 'DRECK ENDE
- DIM mnuSelect AS BYTE
- DIM mnuSelectOld AS BYTE
- DIM durchmesserEeprom AS ERAM WORD
- DIM durchmesser AS WORD
- DIM durchmesserLow AS BYTE AT durchmesser OVERLAY
- DIM durchmesserHigh AS BYTE AT durchmesser + 1 OVERLAY
- DIM abstandElektrodeEeprom AS ERAM WORD
- DIM abstandElektrode AS WORD
- DIM abstandElektrodelow AS BYTE AT abstandElektrode OVERLAY
- DIM abstandElektrodeHigh AS BYTE AT abstandElektrode + 1 OVERLAY
- DIM staerkeEeprom AS ERAM WORD
- DIM staerke AS WORD
- DIM staerkeLow AS BYTE AT staerke OVERLAY
- DIM staerkeHigh AS BYTE AT staerke + 1 OVERLAY
- DIM geschwindigkeitEeprom AS ERAM WORD
- DIM Geschwindigkeit AS WORD
- DIM GeschwindigkeitLow AS BYTE AT Geschwindigkeit OVERLAY
- DIM GeschwindigkeitHigh AS BYTE AT Geschwindigkeit + 1 OVERLAY
Jetzt wird es noch verrückter. Kopiere ich den Block an eine andere Stelle. Z.B. unter die letzte Variablen Deklaration in Zeile 51. Also einfach Copy/Paste, dann spinnt meine Software auch. Kopiere ich sie wieder dahin wo sie jetzt sind, dann geht wieder alles.
Noch verrückter: Benenne ich sie um, in irgend etwas dann geht die Software auch. Sie werden also definitiv nicht benötigt. Dürfen heißen wie sie wollen, müssen nur da sein und genau an dieser Stelle......
Tja und nun die Frage, wie kann das sein, dass Variablen, die keiner braucht so stören wenn man sie entfernt und selbst dann stören, wenn man ihre Deklaration in eine andere Zeile kopiert?
Gruselig oder?
Grüße
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Snatch ()