Suchergebnisse
Suchergebnisse 1-6 von insgesamt 6.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
BeitragHi, ich bin dabei in C (AVR-GCC) eine kleine Spannungsanzeige zu programmieren. Als Microcontroller verwende ich den ATTINY13 (1024Bytes PROGMEM, 64Bytes RAM). Mein Problem ist, das mein aktueller Code knapp mehr als 1kB (10Bytes zuviel) braucht. Ich habe selber schon versucht, den Code etwas zu verkleinern, jedoch ohne grossen Erfolg. (Versteckter Text) Könntet ihr mir helfen, den Code kleiner zu machen? Habs schon probiert und konnte 24Bytes 'sichern'. thx & mfg gfc
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
BeitragHabe schon teile (delay durch nop) in Assembler geändert. Das Problem ist, das ich keine Erfahrung mit Kommazahlen in Assembler habe, die ich jedoch benötige. Und ich zweifle das BASCOM Basic besser/effektiver ist als AVR-GCC Habe schon die Code optimierungs-Optionen eingehauen... EDIT:// Hab mal die Int und uint8_t's durch "char" ersetzt. Nun fehlt mir genau 1 Byte :o
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
BeitragLeider ja, benötige den Wert nach dem Komma um die Spannung richtig anzuzeigen.
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
Beitrag=) Schönes Projekt diylab. Ich mach es teilweise aus Lernzwecken("Porterweiterungen" mit Shift-Register) und Materialgründen("Will meine 74'er ICs und ATTINYs mal brauchen ^^"). Ich glaube, das C ziehmlich mit dem "float" zu kämpfen hat. Als ich das mal zum probieren die Zeile "float ADCNUM = 0;" durch "int ADCNUM = 0;" ersetzt habe, ist das Programm auf 276Bytes gefallen :wacko: jedoch wüsste ich nicht wie ich um das float herumkomme um an mein Ziel zu gelangen
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
Beitragich glaube das der C-Compiler die Division schon selbst in Bit-Shiften ändert. Also das Problem (Float) ist gefunden, aber ein Ersatz müsste her. hmm...
-
[AVR]Memory Overflow - Programmcode verkleinern
gfcwfzkm - - Weitere Sprachen und sprachübergreifende Themen
BeitragEin AVR hat ein 10bit ADC -> 1024. ein 8Bit-ADC hätte nur 256 Werte. Hab dein Code überflogen da ich dieses BASCOM Basic mühsam zum lesen finde (C sieht einfach hübscher aus ^^) Aber jetzt sehe ich es :O (facepalm) ich ändere im Code die Zeile 73 zu: ADCNUM = ((ADCNUM * 50) / 1023) * 3; So komm ich mit einem "integer" gut davon =) Mal Probieren ob das geht... EDIT:// :o mein Code ist nun nur ca. 350B gross. Mission Complete =). Thx an alle =D