undefined reference to

Gast #2349490
Lesenswert?
• ▲
▼
Hi,
ich bin vor kurzem auf das AVR-Studio 5 umgestiegen und habe nun 
folgendes Problem "ERROR undefined reference to 'uart0init'".
Im AVR-Studio 4 funktionierte es mit einem externen Makefile.
Alle Dateien befinden sich im gleichen Verzeichnis und ich habe sie im 
Studio5 im Solution Explorer hinzugefügt.

Hat jemand eine Idee woran es liegen könnte.

Umgestiegen weil ATmega88PA vom Studio 4 nicht unterstützt wird nur asm.

Gruß
Jörg
Gast #2349513
Lesenswert?
• ▲
▼
Ja, die Funktion wird benutzt.
Aufbau:
1
//uart0.h
2
void uart0init(uint32_t baudrate, uint8_t bits, parityMode parity, uint8_t stopbits);
1
//uart0.c
2
void uart0init(uint32_t baudrate, uint8_t bits, parityMode parity, uint8_t stopbits)
3
{
4
  //implementation
5
}
1
#include "uart0.h"
2
int main( void )
3
{  
4
  uart0init(9600, 8, NONE_PARITY, 1);
5
}

obj files werden erstellt.
Im Makfile steht die uart0.c auch drin.
#2349554
Lesenswert?
• ▲
▼
Christian H. schrieb:
> In deiner .h Datei deklarierst du schon Variablennamen in dem
> Funktionsheader (nur Dateitypen!)? Ist die Funktion dann nicht doppelt
> deklariert? Versuch das mal ganz schnell zu ändern.

Sorry, aber das ist Unsinn.

Jörg schrieb:
> Im Makfile steht die uart0.c auch drin.

Und hast du das Studio5 auch so eingestellt, dass das externe Makefile 
verwendet wird?

Jörg schrieb:
> Umgestiegen weil ATmega88PA vom Studio 4 nicht unterstützt wird nur asm.

Wie bitte?
Gast #2349848
Lesenswert?
• ▲
▼
Hi,
ich denke ich hab es gefunden.
uart.c
1
#define UART0
2

3
#if defined(UART)
4
void uart0init(uint32_t baudrate, uint8_t bits, parityMode parity, uint8_t stopbits)
5
{
6
  //implementation
7
}
8
#endif

kein wunder das die nicht gefunden wurde.

Jetzt bekomme ich den Fehler F_CPU nicht definiert. Gibt es im Studio 5 
eine möglichkeit dies zu setzten wie im 4er?
oder
#define F_CPU 8000000UL


Danke für die Hilfe.

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.