www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik EVK1101 über USB Bootloader programmieren


Autor: Rüdiger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir ein EVK1101 zugelegt, weil ich mich gerne in die UC3 Serie 
einarbeiten würde.

Habe hier ein kleines Testprogramm von Atmel (Sollte also richtig sein):

#include <avr32\io.h>          // UC3 GPIO controller definition

int main(void) {
  volatile avr32_gpio_port_t *gpio_port = &AVR32_GPIO.port[7>>5];
  int i=0;

  // light on a LED here
  gpio_port->ovrc  = 1 << (7); // Value to be driven on the I/O line: 0
  gpio_port->oders = 1 << (7); // The GPIO output driver is enabled
  gpio_port->gpers = 1 << (7); // The GPIO module controls the pin

  while (1) {
    i++;
    if( i == 11500 )
    {
      // toggle the LED here
      gpio_port->ovrt = 1 << (7);
      i= 0;
    }
  }
}

Das erzeugte test.elf File will ich mit dem USB Bootloader 
programmieren.
Dazu folgendes Kommondo:
batchisp -device at32uc3b0256 -hardware usb -operation erase f memory 
flash
loadbuffer test.elf program verify start reset 0

Folgende Ausgabe erscheint:
Running batchisp 1.2.4 on Mon Dec 15 21:08:28 2008



AT32UC3B0256 - USB - USB/DFU


Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS    1.0.0
Erasing................................ PASS
Selecting FLASH........................ PASS
Parsing ELF file....................... PASS    test.elf
WARNING: The user program and the bootloader overlap!
Programming memory..................... PASS    0x00000 0x0142b
Verifying memory....................... PASS    0x00000 0x0142b
Starting Application................... PASS    RESET   0

Summary:  Total 10   Passed 10   Failed 0

Und weiter passiert nichts.
Wahrscheinlich wird es an der Ausgabe liegen: WARNING: The user program 
and the bootloader overlap!

Weiß jemand wie ich das programm zum laufen bekomme?
Weiter ist mir nicht ganz klar, was die Programmzeile macht:

volatile avr32_gpio_port_t *gpio_port = &AVR32_GPIO.port[7>>5];
Woher weiß ich welcher Pin getoggelt wird?

Danke schonmal für die Hilfe.

Gruß Rüdiger

Autor: re-G (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Rüdiger.
Ich hänge gerade am gleichen Problem.
Hast du vielleicht eine Lösung gefunden?
Oder kannst du mir vielleicht sagen woran es lag?
Gruß
re-G

Autor: Karsten Donat (karstendonat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wird bei euch nach dem Reset der Bootloader wieder aufgerufen (Enum 
unter Windows) oder bleibt der UC im Programm hängen?

Wenn ich nach dem Flashen über ISP den Software-Reset machen lass, funzt 
alles. Nach einem Hardware-Reset wird aber immer wieder der Booloader 
angesprungen und meldet sich unter Windows an.

Ciao

Karsten

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.