Hallo,

ich habe vor mir eine RGB-Farbsteuerung zu bauen. Diese will ich mit einem µC von AVR realisieren. Ich hatte mir das vorerst so gedacht, dass ich ein Potentiometer habe und 3 LEDs. Wenn ich jetzt am Poti drehe sollen die einzelnen LEDs mittels PWM angesteuert werden, aber alle mit einer anderen Pulsweite - so dass ich am Ende das gesamte Farbspecktrum durchlaufen kann (theoretisch!).

Ich habe das ganze bis jetzt nur mit 2 LEDs hinbekommen, leider fällt mir nichts mehr ein, wie ich da noch eine dritte reinbekommen soll. Hier ist mal mein bisheriger Code in Bascom:

Code:
$regfile = "m8def.dat"                                   
$crystal = 3686400                                         
$baud = 9600                                            

On Timer0 Ontimer
On Adc Onadc

Dim Helligkeit As Byte

Ddrd = &B01100000
Ddrc = &B00000000

Tccr0 = &B00000100
Timsk.toie0 = 1

Admux = &B01100000
Adcsr = &B11101111

'--------------------------------

Helligkeit = 255                      'Initial LED ganz hell
Sreg.7 = 1
                                      'Interrupts global einschalten
Do                                    'Hauptschleife
  Helligkeit = Adch                   'Neuer Helligkeitswert
Loop

'--------------------------------

Ontimer:
  Portd.5 = Not Portd.5               'LED wechselnd an/aus
  Portd.6 = Not Portd.6
  If Portd.5 = 1 Then                 'Wenn LED gerade an
    Portd.6 = 0
    Timer0 = 256 - Helligkeit         'Timer zählt vorwärts!
  Else
    Portd.6 = 1                       'Wenn LED gerade aus
    Timer0 = Helligkeit               'Komplementäre Zeit
  End If
Return

Onadc:                                'ADC-Interrupt-Routine
  Udr = Adch                                              
Return

Für Hilfe wäre ich sehr dankbar.

Grüße
Enrico