Problem mit TI StellarisWare LaunchPad

Gast #2993814
Lesenswert?
• ▲
▼
Hallo,

nachdem das MSP430 Launchpad für mein µC-Debüt-Projekt, ein 
SDCard-Datenlogger zu klein wurde (Code und Ram, IOs), arbeite ich mich 
gerade durch die TI Tutorials zum Stellaris LaunchPad und scheitere an 
einer ganz einfachen Tasterabfrage (Code s.u.). ;(

Zum programmieren nutze ich CCS5.3 unter WinXP. Und erhalte folgende 
Fehlermeldung:
1
unresolved symbol ButtonsInit, first referenced in ./main.obj 
2
#10010 errors encountered during linking; "Lab2.out" not built  
3
unresolved symbols remain  
4
unresolved symbol ButtonsPoll, first referenced in ./main.obj

Wo liegt der Fehler? Fehlt eine Include Datei?


Anmerken möchte ich noch:
Als eher Anfänger, der aber schon mit dem MSP430 LaunchPad und den 
zahlreichen Codebeispielen es geschafft hat einen SD-Card-Logger  fast 
erfolgreich zum laufen zu bringen (Code und Ramgrenze erreicht), fehlen 
mir bisher die entsprechenden Code-Beispiele für das Stellaris LP (z.B. 
für SD-Card) oder finde ich die nur noch nicht?

Und ich empfinde die StellarisWare bisher noch eher als hinderlich. Z.B. 
die Delay-FCN, die noch nicht in us oder ms nutzbar ist oder die 
GPIO-FCNs bei denen ich zwar eine Bit-Maske setze, aber dann immernoch 
den entsprechenden richtigen 'Portwert' dahinterschreiben muss. Wenn 
schon vereinfachen, dann doch gerne so wie beim mBed. Nur finde ich 
lernt man(n) dort eben wengiger verstehen, was eigentlich dahinter 
steckt und passiert.

Vielen Dank für Hilfe und Antworten!
Jo
1
#include "inc/hw_types.h"
2
#include "inc/hw_memmap.h"
3
#include "driverlib/sysctl.h"
4
#include "driverlib/gpio.h"
5
#include "boards/ek-lm4f120xl/drivers/buttons.h"
6

7
#define LED_Blau_Ein GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, GPIO_PIN_2);
8
#define LED_Blau_Aus GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 0);
9

10
int main(void)
11
{
12
  SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);
13
  ButtonsInit();
14
  SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
15
  GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
16

17
  unsigned char ucState;
18
  unsigned char ucDelta;
19

20
  while(1)
21
  {
22
    ucState = ButtonsPoll(&ucDelta, 0);
23

24
    if(BUTTON_PRESSED(LEFT_BUTTON, ucState, ucDelta))
25
    {
26
      LED_Blau_Ein;
27
    }
28
    else
29
    {
30
      LED_Blau_Aus;
31
    }
32

33
    SysCtlDelay(2000000);
34

35
  }//While
36
}//Main
Persönliche Seite #2993850
Lesenswert?
• ▲
▼
Du verwendest eine Funktion namens ButtonsInit.

In einer der von Dir eingebundenen Headerdateien ist auch der Prototyp 
(die Deklaration) der Funktion zu finden -- was aber nicht gefunden 
wird, ist die Implementierung (die Definition, der Code) der Funktion.

Du wirst das C-Source-File, in dem diese Funktion drinsteht, zur 
Projektverwaltung hinzufügen müssen, das Einbinden der Headerdatei macht 
das nicht.

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.