Hallo, Ich arbeite zurzeit mit dem PIC16F876A und nun habe ich das Problem das der Speicher voll ist. Jetzt würde ich gerne wissen was man da am Besten gegen machen kann, also gibt es evtl. irgendwelche Möglichkeiten den Code zu komprimieren, durch anderen Compiler oder so??(Nutze zurzeit den HI-Tech C Compiler) Oder hilft da nur einen größeren PIC zu nehmen. Wenn ja gibt es da evtl. welche die ich nehmen könnte bei denen ich nix im Programm ändern müsste ? Vielen Dank im Voraus!
* Optimizer vom Compiler einschalten * Programmcode durchsehen, was davon ungeschickt und unnötig kompliziert programmiert wurde * Variablen durchsehen, ob ein paar davon nicht mit dem nächst kleineren Datentyp auskommen. * Algorithmen durchsehen, ob es da nicht einfachere Varianten gibt Wunder kann natürlich keiner bewirken. Aber ein bischen was geht meistens noch immer. Vor allem bei Programmen von Neulingen, die manche Dinge noch ungeschickt machen.
Wo kann ich diesen Optimizer abschalten ?
Einchalten, nicht abschalten. UNd wie das geht, steht im Handbuch oder in der Hilfe deines Compilers. Zur Not kann man aich einfach mal alle Menüs abgrasen, ob es irgendwo einen Menüpunkt "Optionen" oder "Einstellungen" oder "Projekteinstellungen" oder so ähnlich gibt und dann dort wieder die Dialoge abklopfen, bis man die Einstellung gefunden hat. Ich kenne deine ENtwicklungsumgebung nicht. Aber so schwer ist das dann normalerweise auch wieder nicht zu finden. Vor allen Dingen findet man dann nämlich meistens auch noch viele andere interessante Dinge :-)
oh hups verlesen xD ähm ich benutze MPLAB, ich werds ma durchschauen
Ich denk mal du benutzt die kostenlose Variante des Compilers? Da ist gerade diese Optimierung deaktiviert!
Ne ich hab die Pro Version, aber wo kann ich das denn einstellen ?
Gast
#2268013
Chris Meier schrieb: > Wenn > ja gibt es da evtl. welche die ich nehmen könnte bei denen ich nix im > Programm ändern müsste ? Nein der PIC16F876A ist schon der größte innerhalb der Serie. Der nächst größere mit demselben Pinning (also minimalen Hardware-Änderungen) wäre der PIC18F2520. Damit verdoppelt sich die Anzahl der möglichen Instruktionen. Ein paar Änderungen in der Software sind allerdings schon nötig. Beim PIC16F876A hängt auch viel davon ab wie man das Programm in den 4 Pages des Programmspeichers ablegt. (Minimierung der Bankumschaltungen). Eventuell läßt sich ja durch eine geschickte Modularisierung etwas erreichen. Gruß Anja
Gast
#2268028
Verzicht auf den Datentyp float.
Du hast so viel Geld für ne Pro Version ausgegeben und weißt nicht mal wie man dann die Optimierung einschaltet? Naja, ob das ne legale Version ist? So schwer ist des jetzt auch nicht zu finden. Schau mal unter Project, Build Options, Project. Dann unter dem Reiter Compiler. Man muss ja nicht gleich ein PIC18 nehmen, ein PIC16F1938 hat auch 28kB Flash und ist deutlich billiger.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.