www.mikrocontroller.net

Forum: Compiler & IDEs Kann keine Code::Blocks Projekte kompilieren mit GCC


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Ich beschäftige mich seit kurzem mit µControllern. Bis jetzt 
programmierte ich in Bascom, wollte aber jetzt auf C umsteigen.
Als IDE dachte ich an Code::Blocks.

Mein Problem ist nun, dass wen ich ein Projekt kompilieren will folgende 
Fehlermeldung erscheint:
"Projektname" uses an invalid compiler. Skipping...

Als Compiler is der AVR GNU GCC ausgewählt, der eigentlich auch 
installiert sein sollte, da ich das Packet mit dem enthaltenen GCC habe.
Ausgewählt ist er auch.

Was kann ich tun, um endlich wieder kompilieren zu können?

Sollte ich auf Eclipse oder ähnliches umsteigen?

danke schonmal für die (hoffentlich) nützlichen und vielen Antworten!

Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Als Compiler is der AVR GNU GCC ausgewählt, der eigentlich auch
> installiert sein sollte, da ich das Packet mit dem enthaltenen GCC habe.
> Ausgewählt ist er auch.
Soweit erinnert, kommt das Packet mit einem Compiler für den PC. Sicher, 
dass die AVR-Cross-Toolchain installiert ist? (avr-gcc et al, für 
MS-Windows: z.B. in WinAVR)

Autor: Mark .. (mork)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die installation von WinAVR alleine reicht nicht aus, man muss 
Code::Blocks auch mitteilen, wo sich der Compiler usw. befindet. Geh auf 
Settings->Compiler and Debugger, wähl dann den AVR-GCC als Compiler und 
wechel auf den Tab 'Toolchain Executables'. Dort muss man das 
Installationsverzeichnis von WinAVR angeben. Danach sollte alles 
klappen.

MfG Mark

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jippie, hat geklappt!
Warum ich WINAVR auch noch installieren muss, obwohl ich das mingw 
PAcket von C::B installiert habe, bleibt mir zwar ein Rätsel, aber 
solange es geht, is alles im grünen bereich!

Danke für die klasse Hilfe!

Autor: Mark .. (mork)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
>Warum ich WINAVR auch noch installieren muss, obwohl ich das mingw
>PAcket von C::B installiert habe, bleibt mir zwar ein Rätsel [...]

MinGW ist eine Toolchain für Win32, nicht für AVRs! Deshalb muss man 
erstmal WinAVR installieren.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, jetzt versteh' ich das.

Vielen tausend Dank!

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal eine Frage:

Ich taste mich so langsam in die Welt von C vor. Nun da mein C::B wieder 
geht, kann ich endlich weitermachen, stehe aber schon vor einem Problem:
#include <avr/io.h>
#define F_CPU 16000000


int main(void)
{

   DDRC  = 0b00000110;
   PORTC = 0b00000110;
    while(1)
    ;

    return 0;
}

Ich habe das Pollin Eval Board V2.0.1.
EIgentlich sollten doch alle Leds angehen, oder?
Leider tun sie das aber nict, und ich weiss nicht warum.

Danke für die Hilfe!

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast schrieb:
> EIgentlich sollten doch alle Leds angehen, oder?
> Leider tun sie das aber nict, und ich weiss nicht warum.

Du mußt erstmal den AVR-Typ verraten.
Es gibt AVRs, da haben manche Pins nach dem Reset Sonderfunktionen, z.B. 
JTAG-Debug.
Das läßt sich per Befehl oder Fuse abschalten.


Peter

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Du mußt erstmal den AVR-Typ verraten.
Mist! Eigentlich dachte ich, ich hab das angegeben. Es ist ein ATMega16 
der mit einem 16MHz Quarz läuft.

Due Fuses sind so wie für das Pollin Beispielprogramm gesetzt. Ich denke 
also die müssten für Zugriff auf die LED's passen.

Grüße und danke für die Antwort, Peter!

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast schrieb:
> Ich denke
> also die müssten für Zugriff auf die LED's passen.

Nicht denken, sondern im Datenblatt nachschauen.


Peter

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Peter!

Mit den Fuses hat der Zugriff auf die LEDs mit dem Pollin Testtool doch 
geklappt. Und auch eigene Bascom Programme haben so gklappt. An den 
Fuses kanns also nicht liegen.

Ich werde das .hex nochmal neu aufspielen...


Grüße...

Autor: Werner B. (werner-b)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IIRC sind auf dem Pollinboard die LEDs am PORT D5 und D6, nicht C.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.