-
-
Erfahrener Benutzer
Robotik Einstein
Der Nachteil wenn man einen AVR mit einer Hochsprache programmiert ist der, das man nicht sieht was tatsächlich in den Flash geschrieben wird.
Die Hochsprache (Basic, C++, ...) muss ja für den Prozessor verständlich übersetzt werden. Das übersetzen erzeugt manchmal einen größeren und umständlicheren Code als wenn man alles selbst in Assembler geschrieben hätte. Mit Bascom lässt sich der Code mit einigen Trick und mitgelieferten LIBs verkleinern. Die MSCBYTES.LBX ist eine LIB die einen kleiner Code erzeugt. Sie optimiert irgendwie das Handling der Variablen. Allerdings sind dann nur noch Variablen bis Byte möglich. Word und 'größere' werden dann nicht mehr unterstützt.
Ich selbst hatte diese Fehlermeldung auch schonmal und eine Frage was das Label _PRINTWORD zu sagen hat bleib hier im Forum leider unbeantwortet. Durch probieren und Hinweise von einer englischsprachigen Seite habe ich dann herrausgefunden was die MSCBYTES bewirkt.
Für RC5 brauchst du diese LIB nicht. Wenn dir Variablen bis Byte reichen kannst du mit der LIB aber einen kleineren Code erzeugen und ggf. dein Programm in einen kleineren (und evtl. günstigeren) AVR flashen.
Du kannst ja mal die Größe des Programmcodes mit und ohne MSCBYTES vergleichen. (Sofern du nur Var bis Bytes hast).
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen