AVR32 Studio - C++ Projekt erstellen - Elemente aus Framework einfügen - kleine main.cpp erstellen

Gast #2301212
Lesenswert?
• ▲
▼
Hallo,

(Sorry, viel Text aber vermutlich kleines Problem...)

Ich möchte mit dem AVR32 Studio:
 - ein C++ Projekt erstellen
 - die Library zu den IOs aus dem Framework einfügen
 - eine kleine main.cpp erstellen, um zu testen

Das mit dem Projekt erstellen bekomme ich ohne weiteres hin.
File -> New -> AVR C++ Project
Target Device: AT32UC3C0512C
Project type: 32-Bit AVR/GNU Executable
-> Finish

Nun binde ich das IO-Element aus dem Framework ein.
Framework-> Select Drivers/Components/Services
Dort wähle ich GPIO - Gerneral Purpose I/O Controller aus
-> Finish

Jetzt noch die main.cpp im Projekt erstellen.
Rechte Maustate auf TestProjektName -> New -> Source File
Source Folder: TestProjektName
Source File: main.cpp
Template: Default C++ source template
-> Finish

So nun die main.cpp mit wenig code füllen:
#include "gpio.h"
int main(void)
{
   while(1)//Nur zum testen ob komillieren geht.
   {;}
   //Später möchte ich damit IOs schalten...
   //pio_clr_gpio_pin(0);
   //gpio_set_gpio_pin(0);
}

Und nun kompilliren.
Project -> Build all
wait... ...währe schön gewesen...
2 errors:
**** Build of configuration Debug for project test ****
**** Internal Builder is used for build               ****
avr32-g++ -I../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS/INCLUDE 
-I../src/SOFTWARE_FRAMEWORK/DRIVERS/INTC 
-I../src/SOFTWARE_FRAMEWORK/BOARDS 
-I../src/SOFTWARE_FRAMEWORK/UTILS/PREPROCESSOR 
-I../src/SOFTWARE_FRAMEWORK/UTILS 
-I../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO -O0 -g3 -Wall -c 
-fmessage-length=0 -mpart=uc3c0512crevc -ffunction-sections 
-masm-addr-pseudos -omain.o ..\main.cpp
In file included from ..\main.cpp:2:
../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h:101: error: non-local 
function 'int gpio_enable_module(const<anonymous struct>*, unsigned 
int)' uses anonymous type
../src/SOFTWARE_FRAMEWORK/DRIVERS/GPIO/gpio.h:125: error: non-local 
function 'void gpio_enable_gpio(const<anonymous struct>*, unsigned int)' 
uses anonymous type
Build error occurred, build is stopped
Time consumed: 703  ms.

Was habe ich falsch gemacht???

Währe super, wenn ihr mir weiterhelfen könnt.

Gruß Jo
Gast #2301338
Lesenswert?
• ▲
▼
Nun, da sind die Code-Dateien für die GPIO nicht im Projekt integriert 
worden.

Im Projektbrowser müßte unter dem Ordner src (Sources) die gpio.h und 
gpio.c enthalten sein.

Man kann auch alternativ unter Kontext-Menü Properties / Compiler diese 
Dateien händisch einbinden.

Aber, wenn der Compiler da meckert, fehlen diese Dateien definitiv im 
make-file.

Entweder hat die Auswahl über die Wizard nicht funktioniert oder in der 
SW-Version ist eine Macke.

Ich habe die Benutzung ddes AVR32-Studios eingestellt, weil man sich nur 
verzettelt. Außerdem ist das Debugging sehr unübersichtlich.

Das AVRStudio 5.0 ist jetzt realeased worden. Das ist wesentlich 
komfortabeler.
Gast #2301432
Lesenswert?
• ▲
▼
Hallo, danke für deine Antwort...

Ich habe mittlerweile die Ursache für die Errors gefunden.

Der Fehler war: Ich hab ein C++ Projekt erstellt und dann in der Library 
C-Funktionen aufgerufen...
Die Lösung war das gleiche wie oben, nur anstatt C++ einfach C-Projekt 
auswählen...

> Ich habe die Benutzung ddes AVR32-Studios eingestellt,
> weil man sich nur verzettelt. Außerdem ist das Debugging
> sehr unübersichtlich.

Ja, ich bin von dem AVR32 Studio auch nicht begeistert. Das einsigste, 
was mir daran gefällt, ist das schöne einbinden der Frameworkelemente 
über das Menü. Das einbinden von Frameworkelementen bekomme ich im 
AVR-Studio 5 nicht hin...

Wie bindest du Librarys also teile des Frameworks ins AVRStudio 5 ein?

Hast du Lust mir eine Mail an mc.joe.werbung@web.de zu schreiben?
...dann schreib ich dir von meiner "richtigen" E-Mail-Adresse zurück...
Ich würde gern noch ein paar fragen loswerden...

Jo (www.elektronik-hannes.de)

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.