-         

Ergebnis 1 bis 10 von 10

Thema: Problem mit StatusLED

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    03.07.2007
    Beiträge
    349

    Problem mit StatusLED

    Anzeige

    Hallo!

    Bei mir war von Anfang an schon die StatusLED so, dass RED die grüne LED aktivierte und GREEN die rote. Also genau verkehrt herum.
    Nun wollte ich dieses Problem beheben. Ich benutze die lib2.7 rc3.

    Sowohl die asuro.h der lib als auch die ins Programm inkludierte asuro.h hab ich folgendermaßen geändert:

    Ich hab bei den #define's einfach die Pinnummern getauscht:
    Code:
    #define GREEN_LED   (1 << PD2)            /*!< PB0 Port fuer Gruene Status LED */
    #define RED_LED     (1 << PB0)            /*!< PD2 Port fuer Rote Status LED */
    Und dann bei den PORT's hab ich PORT B und D getauscht.
    Code:
    #define GREEN_LED_ON  PORTD |=  GREEN_LED /*!< Gruene Status LED an */
    #define GREEN_LED_OFF PORTD &= ~GREEN_LED /*!< Gruene Status LED aus */
    #define RED_LED_ON    PORTB |=  RED_LED   /*!< Rote Status LED an */
    #define RED_LED_OFF   PORTB &= ~RED_LED   /*!< Rote Status LED aus */
    Das Problem: Die LED's leuchten jetzt in der richtigen Farbe, aber nur ganz schwach(schaut aus wie eine normale Glühbirne die ganz leicht 'glimmt').

    Hat jemand eine Lösung dafür? Mal ganz abgesehen davon verstehe ich nicht warum bei mir die LED anders herum leuchtet als bei jedem anderen???

    Grüße,
    Harri
    Grüße,
    Harri

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    03.08.2007
    Alter
    26
    Beiträge
    60
    ähm, keine ahnung ob die dann überhaupt noch ginge, aber könnte es sein,
    dass die LED falsch herum eingebaut ist?
    Salvo errore et omissione

  3. #3
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Mal ganz abgesehen davon verstehe ich nicht warum bei mir die LED anders herum leuchtet als bei jedem anderen???
    Falsch eingebaut?

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    03.07.2007
    Beiträge
    349
    Der - Pol der Diode ist auf die quadratische Fläche gelötet, das passt also.
    Wenn man sie falsch herum einbaut dürfte sie gar nicht funktionieren weil + und - Pol dann vertauscht wäre=>Diode in Sperrichtung.

    Außerdem funktioniert sie ja mit den Original Headerdateien ganz normal, nur eben verkehrt!
    Grüße,
    Harri

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    03.07.2007
    Beiträge
    349
    Könnt ihr mal bei Eurer LED schauen: Wenn ich die äußerste Anode mit einer kleinen Spannung versorge(1,5Volt), dann leuchtet sie grün. Kann es sein dass sie normalerweise rot leuchten sollte und ich da eine LED habe, die sozusagen "falsch" ist, sprich, man hat mir eine falsche LED in die Packung getan?

    Wie auch immer, wie kann man das softwaremäßig abändern, dass sie mit voller Leuchtkraft leuchtet?

    Derzeit fällt über die LED eine Spannung von nur 180mV ab, wenn sie vom Mikrocontroller die Anweisung bekommt zu leuchten. Kein Wunder dass sie nur 'glimmt'
    Grüße,
    Harri

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    03.08.2007
    Alter
    26
    Beiträge
    60
    ok, war ja auch nur ne vermutung.
    und wie gesagt, ich war mir auch nicht sicher ob das ganze dann überhaupt
    noch ginge.
    Salvo errore et omissione

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    03.07.2007
    Beiträge
    349
    Ich hab jetzt in der leds.c Datei folgendes gemacht, und es funktioniert:
    Code:
    /*in den if Anweisungen RED und GREEN vertauscht*/
      if (color == RED)
      {
        GREEN_LED_ON;
        RED_LED_OFF;
      }
    
      if (color == GREEN)
      {
        GREEN_LED_OFF;
        RED_LED_ON;
      }
    Trotzdem würde mich interessieren warum die Version mit den Vertauschen der Ausgänge nicht funktioniert hat. Vielleicht weiß ja ein AVR Experte eine Antwort darauf.
    Grüße,
    Harri

  8. #8
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.912
    stop stop stop:

    die led ist mit sicherheit fallschrum eingelötet. der minuspol dieser led ist nömlich in der mitte! das längste beinchen bezeichnet bei diesem teil ausnahmsweise nicht den minuspol, sondern die seite die rot leuchtet (oder grün? weiss nimmer). minus ist in der mitte!!
    kleinschreibung ist cool!

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hmmm, eventuell ist die Diode gar kein Typ, bei dem der Masse-Anschluß (-) in der Mitte liegt, denn wie harry3 schon schreibt, ist es sehr verwunderlich, dass die Leuchtstärke total unterschiedlich ist nach der Umdefinition der Bits.
    Erst mit bewußtem ausschalten der 'anderen' Farbe scheint es ja bei ihm zu gehen.
    Ich hatte auch auf eine verdrehte LED getippt, und zwar so, dass aber die Vorwiderstände unterschiedlich wären, so dass beim verdrehen irgendeine Seite zu wenig Saft bekommt. Widerstände sind aber beide mit 470 Ohm identisch.

    Meiner LED kann ich nicht mehr ansehen in welcher Richtung sie eingebaut ist.
    Das Gehäuse ist jedenfalls halbtransparent und... ach hier Foto:
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken img_2679-1.jpg  
    Lieber Asuro programieren als arbeiten gehen.

  10. #10
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.912
    meine led war zu anfang falschrum, und die farben waren vertauscht. umgedreht, und ging...
    kleinschreibung ist cool!

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •