-
Thread
gcc erfindet befehle?
return 1; } das programm (ich habe den code mal auf die relevanten zeilen reduziert) wird vom gcc (version 3.4.5) mit der optimierung "s" für den atmel ATtiny26 folgendermaßen übersetzt: 1 .file "test.c" 2 .arch attiny26 3 __SREG
GCC ist nicht optimal für 8bit-Prozessoren. Generell geht GCC von mindestens 16bit breiten Maschinen aus - und das sieht man dann gelegentlich auch. Besser wird es mit -mint8, also 8bit "int" Typ, allerdings
-
Thread
Frage Bitoperation
Diese Optimierung zu bst/bld wird aber auch nur für Bit 0 gemacht ... zumindest bei avr-g++ 7.2.0 und 8.0.0
um es mit avr-g++ und allen Bits 0...7 und Algorithmen zu testen. Es fällt auf, dass die beste Optimierung nur bei Bit 0 gemacht wird. Mir ist nicht klar warum?
-
Thread
DSPs mit viel RAM samplen
Hersteller nicht unbedingt billig sind! Die Leute bei Analog Devices benutzen glaub auch einen GCC für Ihre DSPs. Ich weiß aber nicht, ob der auch frei zu bekommen ist. Diverse Optimierungen lass sich die meisten Hersteller gut bezahlen. Die andere Quelle, die mir noch einfällt ist Texas Instruments
Hi, der GCC fuer den Blackfin bzw. den SHARC von Analog Devices ist kostenlos (jeder GCC muss kostenlos sein, dafuer gibt's ja die Gnu Public License). Die offizielle Distribution kommt von blackfin.uclinux.org
-
Thread
C: int * rückgabewert bei einer Funktion
Versuch den Code zu compilieren. error: conflicting types for 'firstEight'| Ich nutze einen gcc Compiler und die Entwicklungsumgebung Code::Blocks 10.05 Ich habe schon einiges ausprobiert aber leider hilft nichts, ich verstehe das Problem nicht. Vllt kann mir ja jmd auf die Sprünge helfen
GNU GCC Compiler
-
Thread
STM32 USB Übertragungsproblem mit Code von S.F.
dann geht uns jetzt beiden wieder besser :-) Spiel grad mit der Compiler-Optimierung rum: sobald die Optimierung ausgeschaltet ist, läuft die Sache. Bei -Os (size) gehts mit max. 10 chars, bei -O3 enumeriert das device nicht korrekt.
Alex schrieb im Beitrag #6630997: > Spiel grad mit der Compiler-Optimierung rum: > sobald die Optimierung ausgeschaltet ist, läuft die Sache. > Bei -Os (size) gehts mit max. 10 chars, > bei -O3 enumeriert das device nicht korrekt. Das nützt nur leider keinem was,
-
Thread
Mutex Problem bei ISR
> Letzteres ist etwas Denksport. Würde ich auch so machen (den Denksport). Mit einem modernen GCC muß man da aber aufpassen; der spielt gelegentlich an der Reihenfolge der Speicherzugriffe herum. Herauszufinden, welche Optimierungen man abschalten muß, damit er das bleibenläßt, artet schon fast
Nosnibor schrieb im Beitrag #3857502: > Mit einem modernen GCC muß man > da aber aufpassen Eine gute libc bringt dir atomic Definitionen mit. Die überreden dann den GCC zu passender Arbeit.
-
Thread
Problem bei Erstellung eines Arrays
Hallo zusammen, ich arbeite mit einem STM32F4 und CooCox (mit neuster GCC Version). Ich habe ein etwas größeres Programm (hier die gekürzte Fassung!!!) geschrieben, in dem ich ein Array V_f[16] innerhalb einer Funktion erstelle. [c]void estimator_qmethod(float a1, float
funktioniert das wie gewohnt. Beim Kompilieren erhalte ich keine Warnungen. Ich habe keinerlei Code-Optimierungen an. Hat jemand eine Idee woran das liegen könnte? Falls ihr mehr Informationen braucht, stelle ich die gerne bereit! MfG Peter
-
Thread
-Wignored-qualifiers
: type qualifiers ignored on function return type [-Wignored-qualifiers] [/CODE] Unter http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html finde ich dazu die Erklärung [code] Warn if the return type of a function has a type qualifier such as const. For ISO C such a type qualifier has no effect
sondern nur named casts, also reinterpret_cast, static_cast, dynamic_cast, const_cast ... Dafür beim GCC mit -Werror=old-style-cast compilieren ;-)
-
Thread
Atmega88P, Blinklicht in AtmelStudio 7 simulieren
nicht so lange warten zu müssen. Gruß Dennis [1] http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
kannst Du? Dieter F. schrieb im Beitrag #4622157: > In solchen Fällen schalte ich die Compiler-Optimierung komplett aus und > das Debug-Level auf Maximum. Dennis S. schrieb im Beitrag #4622425: > OHNE die > herablassende Art. Die kennst Du noch nicht :-) gute Nacht
-
Thread
GCC: Variable wird trotz 'KEEP' im Linkerscript wegoptimiert?
Hallo, für die Programmierung eines STM32 verwende ich Atollic Truestudio, also GCC drunterliegend und bastle mir gerade die Option Bytes direkt ins ELF bzw. HEX File. Hierfür habe ich das Linkerscript wie folgt modifiziert: [c] ... MEMORY { ... OPT_BYTES (r) : ORIGIN
belegen muss, wenn ich doch > im Linkerscript die Sektionen schon mit KEEP markiert habe Davon weiß GCC aber nix. "used" wirkt auf Compiler-Ebene. "KEEP" wirkt auf Linker-Ebene. Wenn globale Optimierungen aktiviert sind, dann kann GCC nicht referenzierte Objekte / Funktionen entsorgen. Gleiches
-
Thread
LCD Ansteuerung, was tun
Nabend, habe den Beispielcode von http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung verwendet und auch so die Verdrahtung vorgenommen. Debuggen funktioniert einwandfrei. Jedoch wird mir immer noch kein Test sondern nur viele dunkle Balken in der ersten
initialisiert. Der Compiler meckert nicht zufällig über eine nicht definierte F_CPU oder fehlende Optimierung für die delays? Poste mal deinen kompletten Code. Die RW Leitung liegt auch wirklich an GND?
-
Thread
STM32 unter Linux programmieren und debuggen
line at 26 // the end of this function, used to pop the compiler diagnostics status. 27 #pragma GCC diagnostic push 28 #pragma GCC diagnostic ignored "-Wunused-parameter" 29 #pragma GCC diagnostic ignored "-Wmissing-declarations" 30 #pragma GCC diagnostic ignored "-Wreturn-type" 31 32 int
Ich hab auch openocd, das arm plugin, arm-none-eabi- gcc und gdb installiert. Was hast du für Einstellungen im "GDB OpenOCD Debugging" in Eclipse eingestellt? Im Anhang findest du meine Einstellungen. Aber nur mit dem OpenOCD Debugger in Eclipse komm ich
-
Thread
LCD-Display mit Attiny24 betreiben
Hallo, ich habe gerade versucht nach der Anleitung aus dem [[AVR-GCC-Tutorial/LCD-Ansteuerung]] ein HD44780 kompatibles Display mit einem Attiny24 zu betreiben, doch scheint der Speicher zu klein zusein.. Besteht überhaupt ein Chance es doch mit dem µCzum laufen zu
muß. Auch Umsortierungen unterbleiben (der GCC optimiert zwanghaft auf spätest mögliche Ausführung, egal, was es kostet). Man kann dann zwar debuggen, bloß hat das dann keinerlei Ähnlichkeit mit dem Release-Build, ist also voll für die Katz.
-
Thread
GCC generiert 2 Jumptables bei Switch
richtig gefunden. Ich hab in der main() eine Schleife in der eine Switch-Anweisung steht. Der avr-gcc (GCC) 4.1.3 20070724 generiert daraus 2 Jumptables. Das ganze wird für nen Atmega8 kompiliert Hier 3 Ausschnitte [c] uint16_t t = ...; switch (t) { case 0x01: set_act_date(); break
unabhängig von der Anzahl der unterschiedlichen Werte von t, wenn der Compiler bei Switches keine Optimierung durch berechnete Sprünge kann.
-
Thread
C mit Visual Studio Code
C-Compiler direkt als Extension in das VS Code einbinden und welcher ist empfehlenswert (gibt es dort GCC)?
Udo S. schrieb im Beitrag #8017595: > Ich persönlich würde ja den GCC Compiler, ggf. make und einen netten > Editor nehmen. VSCode ist nur ein Editor, sonst nichts. Ob nett, ist Ansichtssache. Und da unter Linux gcc und make dranzudengeln sollte man wohl hinbekommen
-
Thread
Wozu 'inline' in C++?
Compiler-spezifischen Attributen zum Erzwingen des Inlining helfen kann, z.B. "__attribute__((always_inline))" beim GCC.
inzwischen besser geworden ist, andererseits sind die Optimierungs Möglichkeiten bei modernen i7 mit AVX512 auch gestiegen.
-
Thread
LSB <----> MSB tauschen in c
Hmm, jetzt habe ich die Optimierung (auf Größe wohlgemerkt) im Compiler aktiviert, und plötzlich braucht mein Code 50 Bytes und Detlefs 42. Aber ich habe festgestellt, daß mein Code unnötig umständlich war, diese Version benötigt nur 29 Bytes bei aktivierter Optimierung: [C] char i,out; for(i=0;i<8;i++) { out >>= 1; out |= (byte & 0x80); byte <<= 1; } [/C]
-
Thread
WinAVR Hexfiles corrupt?
Hi Georg, Du hast vollkommen recht, nach der Optimierung bleibt von dem Blinken nicht mehr viel übrig... Dank Dir für die schnelle Antwort. Aber seit wann optimiert GCC denn schon so? Als ich die Programme geschrieben hab (gut ok ist auch schon anderthalb
Damals hat's funktioniert, war aber schon inkorrekt. Seit Version 4 ist GCC nochmal was aggressiver beim Optimieren, weil durch die interne SSA-Darstellung einige neue Optimierungsalgorithmen anwendbar sind. Zudem war früher mal in GCC eingebaut, daß leere Schleifen nicht
-
Thread
optimale avr-gcc compiler optionen
Hallo avr-gcc Entwickler! welche avr-gcc compiler optionen verwendet ihr in einem Makefile? Mein Fragestellung war, wie ich den cocoOS "cooperative task scheduler" - http://www.cocoos.net/ so verwenden kann
Uwe S. schrieb im Beitrag #2039842: > Hallo avr-gcc Entwickler! > > welche avr-gcc compiler optionen verwendet ihr in einem Makefile? > > Mein Fragestellung war, wie ich den cocoOS "cooperative task scheduler" > - http://www.cocoos.net/ so verwenden
-
Thread
AVR-GCC: Disassembler-Ansicht unvollständig
Ich fange gerade an mein ATMega32 mit AVRStudio in Verbindung mit WinAVR zu programmieren. Als Optimierung ist -Os eingestellt. Wenn ich nun meinen Quellcode compiliere sagt gcc, dass der Code 906 Bytes groß ist. Wenn ich jetzt in die Disassembly Ansicht gehe, geht mein Code aber nur bis 0x1C4 das würde
Funktion lokal benutzen darf. Auch bei Risen-IR-Funktionen habe ich es übrigens nie geschafft, dass gcc mehr als 18 Register pusht. Gruß, Stefan
-
Thread
AtTiny2313 Timer1 kein Interrupt
das Problem, jetzt tut's. Aber warum gibt mir der compiler da keinen fehler? ich verwende avr-gcc Naja, hauptsache es tut
/interrupt.h> ISP(TIMER1_COMPA_vect) $ avr-gcc -Wall -mmcu=attiny2313 -o main main.c main.c:5: warning: return type defaults to ‘int’ main.c: In function ‘ISP’: main.c:7: warning: control reaches end of non-void function [/code] ..was wünscht
-
Thread
Was passiert wenn das RAM nicht ausreicht?
Aha, kann der gcc denn das maximal belegte RAM bestimmen?
rekursiven Funktion oder malloc kann man ja schnell die Limits erreichen. Welche Einschränkungen brauchen gcc und Keil denn?
-
Thread
Kommazahl in dezimal umwandeln
Max, schau Dir die konvertierungs routinen an von den gcc compiler. Der tut genau das, ohne dabei den "float" oder "double" zu verwenden. von asc->single float, asc->double float etc etc.. Ach ja... suche dir ein alte compiler (pre gcc 3.0) da ist es verstaendlicher und der per cpu optimierungs blabla ist nicht dabei. vor jahren hatte ich das selber problem, habe damals die konvertierungs routine extrahiert und verwendet. (die datei heisst gcc/real.c ) gruss roman
-
Thread
Zehntel springt von 4 wieder auf 2. Warum?
Jens N. schrieb im Beitrag #5748429: > Optimierungen der Debugger sich nicht 100% an die Reihenfolge hält. Das kann man dem Compiler verbieten. Wenn alles läuft, werden die Optimierungen wieder eingeschaltet.
Philipp M. schrieb im Beitrag #5749059: > Besser noch, -Og: -Og ist relativ neu, hat nicht jede avr-gcc Version.
-
Thread
structs auf 8-Bit-MCUs
auf mit einem 8-Bit Controller/Compiler immer funktionnieren, oder kann es sein, daß nach einer Optimierung so Dinge herauskommen wie t->i==66, t->j==55, t->k==44332211?
wirklich haben möchte. Ist ziemlich brutal und sieht wild aus, aber es funktioniert **g** Beim GCC gehts so: [c] struct test_t { int a; char b; int c; } __attribute__((__packed__)); [/c] Quelle: http://sig9.com/articles/gcc-packed-structures MfG Thomas Pototschnig
-
Thread
Rückgabe vom Typ uint32_t funktioniert nicht
im c-File der main() als auch im c-File der Funktion eingebunden. Achso, es geht um einen Avr & gcc. Die Optimierung habe ich eingeschaltet (-0s) Hat jemand eine Erklärung?
mal "volatile" an.. Der Compiler arbeitet bei mit volatile deklarierten Variablen ohne jede Optimierung.... Variable in der Unterfunktion debuggen und anschauen ob hier noch alles stimmt. Aber unbedingt wie schon erwähnt: Code posten! Gruß Choose
-
Thread
const char *text in C Struktur zur Laufzeit ändern
Welchen Compiler verwendest du? Avr-gcc? Bei mir kompiliert dein obiger Code ohne Probleme/Warnings
will er, dass du nach (const char *) castest. Ich kann den Code auch ohne Casting kompilieren (avr-gcc)
-
Thread
Programmablauf simulieren, vorm Compilieren
du sie mit Add Watch ins Watch-Fenster bringst. Hilfreich ist es ggf., die Übersetzung ohne Optimierung durchzuführen, sonst sind manche von dir definierte Variablen gar nicht vorhanden: wegoptimiert.
sie mit Add Watch ins Watch-Fenster bringst. > > Hilfreich ist es ggf., die Übersetzung ohne Optimierung durchzuführen, > sonst sind manche von dir definierte Variablen gar nicht vorhanden: > wegoptimiert. Da habe ich mich missverständlich ausgedrückt - meinte; mitten im Programmschreiben, mal eben
-
Thread
pgm_read_byte Problem
Flash != EEPROM Definiere entweder Deine Variable "volatile" oder schalte zum debuggen die Optimierung aus. mfg
wieder bei dem "pgm_read_byte" Befehl stehen und nichts passiert mehr. Was genau meinst du mit "Optimierung ausschalten" wie mache ich das ?
-
Thread
AVR Studio zeigen keinen Source-Code mehr an
halt doch recht gut). Unabhängig davon: heute hatte ich den Eindruck, daß C-Programme (mit AVR-GCC bzw. WinAVR compiliert) sich unterschiedlich verhalten, je nachdem, ob sie ohne Optimierung (-O0) oder mit Optimierung (-O2 oder -Os) compiliert werden (natürlich abgesehen von der Code-Größe bzw. geringfügigen
-
Thread
Raspberry Pi Pico SDR
schön, aber ist das so? Ich sehe aus meiner Sicht drei Optimierungen, die es wert wären in der Praxis zu testen: Diff nach Original vs. INA nach Sandras Vorschlag vs. "Doppelt Balanced" mit Übertragern nach dem Optimierungs-Paper. Da eh ein Muxer brach liegt
Wulf D. schrieb im Beitrag #7950362: > > Ich sehe aus meiner Sicht drei Optimierungen, die es wert wären in der > Praxis zu testen: Diff nach Original vs. INA nach Sandras Vorschlag vs. > "Doppelt Balanced" mit Übertragern nach dem Optimierungs-Paper. > > Da eh ein Muxer
-
Thread
avrstudio 5 simulator geht nicht richtig
ein tiny461. Debugger ist simulator. debugging infos sind im assembler und compiler auf max. optimierung ist aus. ich habe folgenden Code in der Main: [c] int main(void) { volatile uint8_t soi = sizeof(int); volatile void* t = &soi; //... } [/c] das lss zeigt mir, dass der
irgendein windowsprogramm, sondern um einen Teil der Entwicklungsumgebung, die sogar noch auf dem gcc basiert. Das meiste was sonst so unter gcc steht, ist hingegen generische C-Programmierung und hat mit der Toolchain überhaupt nix zu tun und gehört nochweniger da hin.
-
Thread
Frage zur Laufzeit von if else
1; // oder auch y++ - als Speziealfall hier, geht teilweise noch schneller, bzw lässt weitere optimierungen des Compilers zu.
Und vergleiche auch noch if(x) y=0; else y=1; mit, gerade mit dem avr-gcc habe ich schon die lustigsten Erfahrungen gemacht.
-
Thread
I2C und MSPGCC - Erfahrungsaustausch gesucht
Das kompiliert doch der GCC garantiert nich ohne zumindest Warnungen?!? Die Interrupts werden da anders deklariert. Ebenso fehlt die für Interrupts zuständige signal.h includiert.
raufzählen bis i==0??? Macht sich ganz besonders gut auf einer 32bit Kiste ;-) Könnte sein, dass du den GCC damit so verwirrt hast, dass er die Schleife drin liess. Normalerweise optimiert er die komplett weg, weil sinnlos.
-
Thread
ATMega32 Absturz bei Zeicheneingang
Hallo, jetzt wird es noch merkwürdiger: schalte ich die Optimierung von s auf 3 dann wird der Code größer, schneller (Ich habe jetzt mal eine LED in der main blinken lassen) und stürzt nicht mehr ab. :-o Mit optimierung 2 stürzt er am schnellsten ab. neue Main
kommen und dann kann ich Daten schicken wie ich will, der AVR ignoriert sie und nix stürzt ab. Optimierungen -Os und -O2 probiert. Also ich würde sagen an der SW liegts definitiv nicht. Bricht die Versorgung vielleicht zusammen durch irgendeinen Schluss von Datenleitung nach Vcc oder Masse?
-
Thread
4 Byte in 1 float wandeln
pData[1] << 8) | (pData[0])); printf("Value: %f\n", dResult); return 0; } $ rm -f main ; gcc -o main main.c $ ./main Value: 3.141593 [/code] ..will man aber nicht machen (gcc warnt auch (vollkommen zurecht) sobald man die Warnungen nicht unterdrückt und Optimierungen anfordert).
-
Thread
AVR C Projekt mit Assembler-Code LCD
Da steht es.. http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial AVR-GCC-Tutorial Wenn du auf Optimierung bist und ein Grafik LCD (ohne Display, das sagt schon das D aus) solltest du die eingebettete ASM Variante nehmen. Wenn du aber nur ein pobloges
Hallo Jens hab ich zwar noch nie gemacht aber im AVR-GCC-Tutorial steht eine ziemlich ausführliche Anleitung. Sebastian
-
Thread
Wie effizient arbeiten PCs?
Beispiele: Flash, mehrere Websites parallel, HTML 5 mit mittlerweile 3D Javascript Grafiksachen. 3. Optimierung: früher wurde mehr Software wirklich in C hard gecoded. Heute nimmt man vermehrt auch interpretierte Sprachen, da sie einfach flexibler sind (z.B. beim Debuggen oder um systemübergreifend sein zu
einfach Leute die glauben, je komplexer ein System ist um so besser, und dass sich Komplexität zur Optimierung immer lohnt. Somit werden die Programme teilweise 10 mal so groß, was jede Optimierung wieder eliminiert. Lies mal "The Art of Unix Programming" (gibts auch online) und Du liest eine informierte
-
Thread
Struct mit Schleife durch zählen
gesehen, welche die Elemente entsprechend der Reihenfolge in der Deklaration anordnen. Selbst Optimierungen die sich aus einer anderen Reihenfolge ergeben würden sah ich bis jetzt nicht). Wenn also die Reihenfolge bei dem selben Compiler immer gleich ist, gibt es mit der Zeigermethode keine Probleme.
, sizeof( MyHeizung ) ); [/C] Im gcc-Tutorial gibt es da einen schönen Abschnitt darüber. Padding ist natürlich grundsätzlich ein Thema. Allerdings ist es auf einem AVR müssig darüber nachzudenken, weil es im gcc in diesem Fall keines
-
Thread
Sinusberechnung auf Controller STM32F030
meisten > Compilern Code Größe und Performance. Tut es leider nicht, scheinbar ist der arm-none-eabi-gcc so gut in der Optimierung, dass es keinen Unterschied macht... auch etwas in der Art: p3= degree * degree * degree; anstelle von tiny_pow bringt nichts (abgesehen davon , dass ich das tiny_pow
nearly equal printf("%f : %f\n", s/MUL, sin(p)); } return 0; } [/c] gcc main.c cordic-32bit.c -o CordicTest
-
Thread
Mein erstes Programm mit C
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
<util/delay.h> // Funktionen zum warten // Achtung, damit delay richtig funktioniert muß mit Optimierung compiliert werden int main(void) { DDRB = 0xff; // alle B pins als ausgang konfigurieren PORTB = 0xff; // erstmal alles abstellen DDRC = 0xff; PORTC = 0xff; while
-
Thread
Wieso vor allem AVR µCs bei Bastlern?
programmieren. Für mich war das Umstiegskriterium von PIC auf AVR aber auch die Verfügbarkeit eines GCC.
was jeder Assembler kann), also habe ich mir dann lieber eine Plattform gesucht, für die es einen GCC gibt. Dass ich dadurch mal recht aktiv in die ganze Toolchain-Entwicklung um den AVR-GCC herum selbst einsteigen würde, war eher nicht so geplant. ;-)
-
Thread
Pollin Display 12232, in ASM klappts, in C nicht
WinAVR > und Gnu Plugin drauf hat. Wenn ich die C Datei kompiliere bekomme ich folgendes (mit AVR-GCC): AVR Memory Usage: ----------------- Device: attiny2313 Program: 362 bytes (17.7% Full) (.text + .data + .bootloader) Data: 1 bytes (0.8% Full) (.data + .bss + .noinit)
Grad nochmal kontrolliert, die Fuse ist auf interner 8MHz, mit längster Anlaufzeit. Die Optimierung stand aber auf -O1 habs nun auf -Os versucht, jedoch auch erfolglos. Ich hab nun nochmal versucht, nachzuverfolgen, ob er die _delay_ms aufruft, jedoch verschluckt er sich irgendwo in meiner
-
Thread
UPDI Programmer bauen - alias "El Tangas"
Das Problem hier ist nachgelagert. Vielleicht kannst du mir helfen wie ich AS7 mit aktuellen avr-gcc-9.1 überredet bekomme C++ für die neuen µC kompilieren zu können?
abzielst, der soll leider nicht in Atmel Studio funktionieren. [/c] Ja, aber funktioniert in MPLABX, GCC für AVR gibt es dafür auch.
-
Thread
rfm12lib lässt sich nicht coimpilieren
Hallo , ich versuche in Codeblock 10.5 mit dem avr-gcc 4.3.2 die RFM12lib (http://www.das-labor.org/wiki/RFM12_library) zu compilieren und bekomme bei folgender Zeile : [c] //non-inlined version of rfm12_data //warning: without the attribute, gcc will
Aber wie gesagt, ich denke der Compiler kennt die C99 uintxx_t Typen nicht...also gcc mit '-std=c99' aufrufen oder <stdint.h> einbinden...
-
Thread
Takte pro Befehl
Bestfall vom Compiler automatisch durch memmove ersetzt, im schlechtesten Fall behindern sie die Optimierung.
fehlenden Semikolons nicht compiliert und nur ein Element weniger als das erste kopiert, erzeugt GCC ansonsten identischen Code.
-
Thread
ARM Einstieg Hilfe bei Controller und IDE Wahl
GCC Make Openocd ST-Discovery F4 - Billiger wirds schwer
einmal nicht viel über C) zu installieren und dann die entsprechende Werkzeugsammlung für den ARM (gcc-arm usw.) zu installieren. Wenn Du Schritt für Schritt vorgehst, solltest Du sehr bald die obligatorische LED zum Blinken bringen können :-) Chris D.
-
Thread
AVRGCC code zu gross...
1.: Compiler-Optimierung eingeschaltet? Wenn nicht, dann ist es normal, dass der Code sehr groß wird. 2.: Floats lassen sich in vielen Fällen geschickt vermeiden. Wenn der Speicherplatz wirklich knapp wird, dann versuchen
Ach ja, 3.: Es gibt hier ein extra GCC-Forum, da sind solche Fragen i.d.R. besser aufgehoben...
-
Thread
STM32 - CoreMark
Interessant wäre auch der Coremark für -Og (debuggerfreundliche Optimierung), die es seit 4.8 gibt.
_; -I.; folgendes Ergebnis: STM32F407VG GCC4.8.3 -Og text 13892 data 44 bss 8220 168 MHz 5WS-I-D-P 258,397933 CoreMark 1,54 CoreMark/MHz Zum Vergleich: STM32F407VG GCC4.8.3 -O3 17648 44 8220 168
-
Thread
Suche Softcore Alternative mit Compiler und Debugger
> hätte. Hi, Ich habe schon mehrmals erfolgreich gcc und gdb mit mingw32 übersetzt. Der Vorteil dabei ist, dass man nachher kein cygwin braucht um die laufen zu lassen. Ist vielleicht etwas für Dich. Gruß Martin
Hallo zusammen, Danke für die Infos. GCC und GDB für Windows sollte eigentlich kein Problem sein. Da sollte ich Übung durch YAGARTO haben. Viele Grüße, Michael