Forum: PC-Programmierung Welche Includ´s?


von Thomas H. (datatom)


Lesenswert?

Hallo zusammen,

wenn ich in AVR32-Studio ein C-Programm schreiben möchte, woher weiß ich 
welche Includ-Dateien ich zuweisen muss, z.B. bei:

static const gpio_map_t USART_GPIO_MAP =
     {
       {EXAMPLE_USART_RX_PIN, EXAMPLE_USART_RX_FUNCTION},
       {EXAMPLE_USART_TX_PIN, EXAMPLE_USART_TX_FUNCTION}
     };

Ich benötige also eine Includ-Datei für:

      gpio_map_t USART_GPIO_MAP

Wie finde ich die richtige?

Vielen Dank für eure Hilfe.

Grüße

datatom

von Hc Z. (mizch)


Lesenswert?

In der Dokumentation zu den Funktionen, die ein gpio_map_t benötigen, 
steht
1
#include <gpio.h>
dabei.

von Thomas H. (datatom)


Lesenswert?

Hc Zimmerer schrieb:
> In der Dokumentation zu den Funktionen, die ein gpio_map_t benötigen,
> steht#include <gpio.h>
> dabei.

Hi Hc Zimmerer,

woher weiß ich denn, wo die gpio.h steht?

Grüße

datatom

von Hc Z. (mizch)


Lesenswert?

Im Zweifelsfall entnimmst Du die Details aus der Online Help von Studio, 
zu finden auch im Internet:
http://support.atmel.no/knowledgebase/avr32studiohelp/AT32UC3B_Software_Framework/DRIVERS/GPIO/PERIPHERAL_BUS_EXAMPLE/DOC/html/index.html

von Thomas H. (datatom)


Lesenswert?

Hc Zimmerer schrieb:
> Im Zweifelsfall entnimmst Du die Details aus der Online Help von Studio,
> zu finden auch im Internet:
> http://support.atmel.no/knowledgebase/avr32studioh...

Ich muss die Datei gpio.h ja im Framework 
AVR32-SoftwareFramework-AT32UC3B-1.4.0 wiederfinden, oder? Ich hatte 
bisher immer das framwork durchsucht und mir den Pfad der gefundenen 
gpio.h gemerkt und ihn dann verlinkt. Aber woher weiß ich, dass es der 
richtige Pfad bzw. die richtige gpio.h ist? Ist denn das 
AVR32-SoftwareFramework-AT32UC3B-1.4.0 die offizielle Bibliothek?

Entschuldigung das ich so schwer von Begriff bin.

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Bietet dein Rechner keine Suchfunktion, um Dateien mit definiertem Namen 
zu finden?

von datatom (Gast)


Lesenswert?

Wegstaben Verbuchsler schrieb:
> Bietet dein Rechner keine Suchfunktion, um Dateien mit definiertem Namen
> zu finden?

Doch... kann ich denn eine von den gefundenen Dateien einfach nehmen 
oder muss es eine bestimmte sein aus einem bestimmten Verzeichnis?

von Klaus W. (mfgkw)


Lesenswert?

Das Dumme an C ist, daß man zwar einerseits eine *.h
nehmen muß, die zu der Lib passt die man beim Linken
verwendet, andererseits dir niemand die Arbeit abnimmt,
das zu kontrollieren.

So nett wie ich C und C++ finde, das ist sicher ein schwacher
Punkt.

von datatom (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> Das Dumme an C ist, daß man zwar einerseits eine *.h
> nehmen muß, die zu der Lib passt, andererseits dir
> niemand die Arbeit abnimmt, das zu kontrollieren.
>
> So nett wie ich C und C++ finde, das ist sicher ein schwacher
> Punkt.

Ein wircklich schwacher Punkt. Z.B. wird mir folgender Fehler angezeigt:

**** Build of configuration Debug for project Projekt_Usart_2 ****

**** Internal Builder is used for build               ****
avr32-gcc -O0 -g3 -Wall -c -fmessage-length=0 -mpart=uc3b0256 
-ffunction-sections -masm-addr-pseudos -oMain.o ..\Main.c
..\Main.c: In function 'main':
..\Main.c:59: error: 'FOSC0' undeclared (first use in this function)


Wo finde ich nun die declaration von FOSC0 ?

Ich benutze das framework von atmehl 
AVR32-SoftwareFramework-AT32UC3B-1.4.0

Aber ich finde nicht die declaration von  FOSCO.

Hilfe!!

von Klaus W. (mfgkw)


Lesenswert?

Das ist aber ein anderer Punkt, und da kann C eigentlich nichts dafür.
Wenn du Typen oder Funktionen aus irgendeiner Lib oder
einem Framework nutzst, liegt es an dir, in die Doku zu sehen,
welche Headerdatei nötig ist und dann das #include einzufügen.
Sollte es keine Doku geben, taugt die Lib nix. Aber in der Regel
war in so einem Fall der Programmierer zu faul zu lesen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.