Gast
#2198806
Hallo, ich habe zwei unsigned int Variablen. Die Variable Alarm_high besitzt den Wert 0xFF;
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
|
Anzeige
|
Bitverschiebung + Integer
Gast
#2198806
Hallo, ich habe zwei unsigned int Variablen. Die Variable Alarm_high besitzt den Wert 0xFF;
Gast
#2198812
Stefanie schrieb: > //Warum komme ich bei i>=8 nicht mehr hier rein?? Erwartest du was anderes? Bei 0xFF sind doch genau die Bits 0 bis 7 gesetzt, Bits >= 8 aber nicht.
Gast
#2198823
OK, ich habe ihr nun den Wert "65535" zugewiesen und ich komme trotzdem nicht rein. Liegt dass daran, dass ich es auf einem 8Bit-Prozessor teste? Die Laufvariable i ist auch vom Typ int.
Gast
#2198832
Stefanie schrieb: > OK, ich habe ihr nun den Wert "65535" zugewiesen und ich komme trotzdem > nicht rein. Liegt dass daran, dass ich es auf einem 8Bit-Prozessor > teste? Nein. > Die Laufvariable i ist auch vom Typ int. Zeig doch mal ein komplettes Programm, das den Fehler aufweist. Momentan kann man nur raten.
Gast
#2198903
An dem Code liegt's nicht. Werden 'Alarm_Flag' und 'Alarm_high' evtl. in einer ISR gesetzt/ geändert? Oder 'heimlich'?: Ralf schrieb in "Tipps zum Fehler finden": > Reihenfolge der globalen Variablen ändern, wenn's geht. Falls es dann > eine andere Variable trifft -> Stacküberlauf.
Gast
#2198908
Äähm, bist Du sicher, dass die Schleife nicht abgearbeitet wird? Wenn '...' sozusagen 'wegoptimiert' wird, kann mann die Abfrage vergessen.
Gast
#2198914
Vielen Dank! Das ist dann wohl aktuell auch das Problem, ich bin mit meinem Speicher anscheinend am Ende bzw. habe falsche Compilereinstellungen. Gibt's hier irgend ein allgemeines Tutorial dazu? Ich nutze den Codevision-Compiler und weiß natürlich, dass man im Handbuch auch nachsehen muss...
Gast
#2199015
Also, wenn der RAM ausgeht, hat das nicht so viel mit den Compileroptionen zu tun. Variable aus dem RAM (auch Stack) in Register auslagern, ich glaube nicht dass da viel kommt.
Gast
#2199416
OK, das Problem ist, dass ich bei dem Projekt viele z.T. große Variablen haben, die dauerhaft ihren Inhalt haben (und ich nicht nur temporär erzeugen kann). Was gibt es da für eine Lösung?
Gast
#2199425
- µC mit mehr RAM - Wertebereiche überdenken um kleinere Varialben verwenden zu können - Puffer für Datenübertragung verkleinern, dafür mehrmals senden
Gast
#2199479
Stefanie schrieb: > Ich nutze den Codevision-Compiler Dann ist GCC das falsche Forum, denn Codevision ist nicht GCC.
Gast
#2199655
Danke für die Info, wußte ich bereits ;-) Dennoch war meine Startfrage sehr allgemein (Compilerunabhängig) und manche Profis habe mit beiden Erfahrungen... Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|