-         

Ergebnis 1 bis 7 von 7

Thema: LED dimmen

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    06.07.2008
    Ort
    Münster
    Alter
    27
    Beiträge
    5

    LED dimmen

    Anzeige

    Aloah,
    ich beschäftige mich seit kurzem mit Microcontrollern und arbeite mich zur Zeit an diesem Tutorial entlang. Mittlerweile habe ich auch eine funktionierende Grundschaltung mit LED aufgebaut bekommen.
    Allerdings sieht es schon ein Bisschen mager aus wenn die LED nur blinkt. Deshalb würde ich gerne einen Helligkeitssteuerung einbauen, die auch einen fließenden Übergang von einem Zustand in den anderen ermöglicht.
    Mittlerweile habe ich mir die Finger schon nach pwm wundgesucht, aber bisher ist dabei nur eine blinkende, dauerhaft oder gar nicht leuchtende LED heruasgekommen.

    Da ich mich mit den Grundlagen der Programmierung durch das Programmieren von Desktopanwendungen bereits einigermaßen auskenne ließe sich der fließende Übergang bestimmt relativ einfach realisieren - wenn ich wüsste wie ich die Helligkeit verändern kann.

    Also ist meine Frage jetzt, ob evtl. jemand von euch Beispielcode für die Helligkeitsveränderung über den ATMega32 hat.

    Schon mal im Vorraus vielen Danke für eure Antworten.

    //Edit
    Also ich habe mittlerweile gesehen, wie oft dieses Thema hier im Forum schon behandelt wurde (irgendwie habe ich wohl vorher immer nach den falschen Stichwörtern gesucht). Ich denke es ist das Beste, wenn ich die Beiträge noch weiter durcharbeite.

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    24.02.2006
    Ort
    3. Planet eines kleinen Sonnensystems in einem Seitenarm der Milchstraße
    Alter
    63
    Beiträge
    622
    Hi,

    unter http://www.roboternetz.de/wissen/index.php/Pwm gibt es auch eine Verknüpfung zu einem Artikel zu PWM und Bascom: http://www.roboternetz.de/wissen/ind...Bascom_und_PWM .

    Gruß

    Fred
    Only entropy comes easy. - Anton Checkhov

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    06.07.2008
    Ort
    Münster
    Alter
    27
    Beiträge
    5
    Danke für die Antwort, aber die Beschreibungen von dort habe ich auch schon umgesetzt. Dabei hatte die LED immer die gleiche Helligkeitsstufe, auch wenn ich die Werte verändert habe.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    24.02.2006
    Ort
    3. Planet eines kleinen Sonnensystems in einem Seitenarm der Milchstraße
    Alter
    63
    Beiträge
    622
    Hallo,
    Zitat Zitat von any_key
    Danke für die Antwort, aber die Beschreibungen von dort habe ich auch schon umgesetzt. Dabei hatte die LED immer die gleiche Helligkeitsstufe, auch wenn ich die Werte verändert habe.
    Dann zeige doch einmal Deinen Code -- die Bascom-Experten hier können sicher den Fehler finden!

    Gruß

    Fred
    Only entropy comes easy. - Anton Checkhov

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    06.07.2008
    Ort
    Münster
    Alter
    27
    Beiträge
    5
    Also ich habe mittlerweile einiges an Code ausprobiert, aber ich kann ja exemplarisch den zu dem von dir genannten Beispiel posten.
    Code:
    $regfile = "m32def.dat"
    $crystal = 4000000
    
    Config Portc.0 = Output
    
    Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1
    
    Do
     Compare1a = 205
    Loop
    
    End
    //Edit
    Ich habe es jetzt mit dem Code von hier http://www.roboternetz.de/phpBB2/zei...oftware+dimmen mehr schlecht als recht hinbekommen. Entweder die LED blinkt noch sichtbar, oder sie geht direkt wieder aus.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    705
    Mit PortC.0 wird´s auch nicht funktionieren: Das "Output-Compare 1A"-Signal liegt beim Mega32 auf D.5.

    Und dann solltest Du mal versuchen, den Wert Compare1A über einige Sekunden zwischen 0 und 255 hin- und herlaufen zu lassen

    (z.B. so):


    Config PortD.5 = Output
    ...
    Do

    If Compare1A = 255 then Compare1A = 0 else Compare1A = Compare1A + 1

    waitms 10

    Loop

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    06.07.2008
    Ort
    Münster
    Alter
    27
    Beiträge
    5
    Ayyyyyyyyy!
    Danke für die Antwort.
    Ich hab heute Nacht noch in einem anderen Threat gelesen, dass es am Port liegen könnte. Daraufhin habe ich den Anschluss umgelegt. Aber da ich meine Platine auf dem Kopf liegen hatte habe ich es aus Versehen an Pin 2 und nicht an Pin 19 gelötet.
    Jetzt funktioniert es perfekt. Danke!

Berechtigungen

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