AVR32 Studio: Startschwierigkeiten

Gast #1418823
Lesenswert?
• ▲
▼
Hallo,

ich möchte mich mit Hilfe eines EVK1100 in die AVR32 Architektur 
einarbeiten um den Horizont ein wenig zu erweitern. Mit 8 bit AVRs habe 
ich schon sehr viel gemacht.
Das Board wurde mit dem Beispielprojekten aus dem Framework ausgiebig 
getestet und heute habe mir mein erstes Programm zusammengetippt.

3 LEDs sollen dauerhaft leuchten, eine weitere nur wenn ein Taster 
gedrückt ist. Also wirklich die absoluten Grundlagen.
Beim Komplieren wird folgende Warnung angezeigt: 
"org.eclipse.core.internal.resources.Marker@cbcf02c4 is not of a 
displayable type" und dann noch eine mit cbcf02c3
Da ich das erste mal mit Eclipse arbeite kann ich damit nichts anfangen.
Flashen kann ich per USB aber trotzdem, nach dem Reset bleiben die LEDs 
aber alle dunkel.

Kopiere ich den kompletten Inhalt der main.c in das GPIO Projekt aus dem 
Framework läuft das Programm so wie ich es erwarte.
Es scheint also irgend ein Problem mit dem AVR32 Studio zu geben. Welche 
Punkte muss man beachten, was kann ich überprüfen? Debuggen kann ich 
leider noch nicht weil mir das JTAG ICE noch fehlt.

Hier der Sourcecode. Falls es hilft kann ich das komplette 
Projektverzeichnis packen und hier anhängen.
Ich hoffe ihr könnt mir helfen denn ich denke dass man wenn die ersten 
Hürden erst einmal überwunden sind auch gut alleine weiterkommt.
1
#include "board.h"
2
#include "gpio.h"
3

4

5
int main(void)
6
{
7
  gpio_enable_gpio_pin(LED0_GPIO);
8
  gpio_enable_gpio_pin(LED1_GPIO);
9
  gpio_enable_gpio_pin(LED2_GPIO);
10
  gpio_enable_gpio_pin(LED3_GPIO);
11
  gpio_enable_pin_glitch_filter(GPIO_PUSH_BUTTON_0);
12

13
  gpio_clr_gpio_pin(LED0_GPIO);
14
  gpio_clr_gpio_pin(LED1_GPIO);
15
  gpio_clr_gpio_pin(LED2_GPIO);
16
  gpio_clr_gpio_pin(LED3_GPIO);
17

18
  while(1){
19
       if (gpio_get_pin_value(GPIO_PUSH_BUTTON_0) == 0)
20
         gpio_clr_gpio_pin(LED0_GPIO);
21
       else
22
         gpio_set_gpio_pin(LED0_GPIO);
23
  }
24
}

Grüße
Angehängte Dateien:
#1419996
Lesenswert?
• ▲
▼
Hi,

ja das einbinden der trampolin.s(ist nicht der bootloader sondern sorgt 
nur dafür das dein Programm ab 0x80002000 startet) ist wirklich nervig. 
Aber es gibt eine Möglichkeit und diese nutze ich schon seit 2 Jahren 
erfolgreich ;).

Du musst nur die Linker Skripts von deinem Prozessor also at32uc3a0512 
umschreiben. Dort steht die start Adresse drin. 0x80000000. Diese musst 
du zu 0x80002000 umschreiben.

Wenn du das machst, dann bleibt dein bootloader erhalten und du kannst 
mit USB die Daten drauf flashen. Und wenn du später ein JTAG nutzt 
bleibt der bootloader trotzdem drauf.

gruß
Zippi
Gast #1730618
Lesenswert?
• ▲
▼
Hi,

ich bin neu und arbeite mich ebenfalls mit dem EVK1100 ein. Die 
Beispielprojekte funktionieren ganz gut. Kann sie auch ändern. Könntest 
du bitte erklären wie man ein eigenes Projekt erzeugt, dass dann auch 
auf dem Controller läuft? Bei mir will es irgendwie nicht funktionieren. 
Danke.

Grüße

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.