www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LEDs vom AT90USB wollen nicht blinken


Autor: Hanh Star (stryke)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

da ich gerne mal ein Projekt mit einem Mikrokontroller machen wollte, 
habe ich mir den Mikrokontroller + USB-Anschluss AT90USB von Atmel 
geholt. Nun habe ich vorgehabt als Einstieg die LEDs des Demo-Kits zum 
blinken zu bringen. Dazu habe ich auf 
http://www.avrfreaks.net/wiki/index.php/Documentat... 
den Quelltext kopiert und ins Programm eingefügt.




#include <avr/io.h>

#include "my_bit.h"
#include "my_types.h"

//300 ~ 3s
//100 ~ 1s
#define SLEEP_TIME 25

void stupid_sleep(uInt time){
  uInt i = 0;
  uInt j = 0;
  for(i=0;i<time;i++){
    for(j=0;j<530;j++){
      //Do nothing
      asm volatile ("NOP");
    }
  }
}

int main(void){

  //The AT90USBKey includes 2 bi-color LEDs (green/red) implemented on 
one line.
  //They are connected to the high nibble of Port D of AT90USB 
(PORTD[4..7]).
  //To light on a LED, the corresponding port pin must drive a high 
level.
  //To light off a LED, the corresponding port pin must drive a low 
level.

  //Set portD pins 4..7 to output mode (this doesn't set what the output 
will be)
  DDRD SET_BIT4;
  DDRD SET_BIT5;
  DDRD SET_BIT6;
  DDRD SET_BIT7;


  while(1){

    PORTD SET_BIT4;      //Drive portD pin 4 high
    stupid_sleep(SLEEP_TIME);
    PORTD CLEAR_BIT4;    //Drive portD pin 4 low

    PORTD SET_BIT5;
    stupid_sleep(SLEEP_TIME);
    PORTD CLEAR_BIT5;

    PORTD SET_BIT7;
    stupid_sleep(SLEEP_TIME);
    PORTD CLEAR_BIT7;

    PORTD SET_BIT6;
    stupid_sleep(SLEEP_TIME);
    PORTD CLEAR_BIT6;
  }
}




Nach dem Start des Programms sehe ich auch im I/O View Fenster, dass die 
bits an den richtigen Port übergeben werden.

Mein Problem jetzt ist, dass ich nachdem ich den µC geflasht habe keine 
blinkenden LEDs bekomme...

Bin für jeden Lösungsvorschlag offen

Autor: Stefan Salewski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Mein Problem jetzt ist, dass ich nachdem ich den µC geflasht habe keine
>blinkenden LEDs bekomme...

Du hast den USBKEY?

Der hat doch gar keinen Anschluss für ein Programmiergerät?
Bei dem wird doch das Programm über USB mit dem Windows-Programm Flip 
oder unter Linux mit dfu-programmer aufgespielt.

Oder habe ich dich falsch verstanden?

Autor: Hubert G. (hubertg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Datenblatt Seite 382 ist das "Serial Downloading" über die SPI-Pin 
beschrieben.

Autor: Hanh Star (stryke)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja sry, hab vergessen das Programm Flip zu erwähnen. Über diese Software 
habe ich den USBKey geflasht.

Autor: Hanh Star (stryke)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab den Fehler gefunden. Im AVR Studio 4 Programm war der falsche µC 
ausgewählt.

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.