Gut. Dann schließt du die LED einfach mit einem 470 Ohm Widerstand in Reihe an den Pin 16(PB6/OC1B) an und benutzt folgendes Programm:
Denke mal die ersten beiden zeilen kennst du dazu muss man nichts sagen.Code:$regfile = "m128def.dat" $crystal = 16000000 Config Portb.6 = Output Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1 Do Compare1a = 205 Compare1b = 51 Loop End
Mit "Config Portb.6 = Output" sagste halt das der Portb.6 wo das PWM-Signal rauskommt ein Ausgang ist.
And er kennzeichnung OC1B siehst du das dieser Port zu Timer 1 gehört und der Port B von Timer 1 ist.
Und so konfigurierst du den Timer mit der Zeile "Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1".
Mit Clear up bzw. Clear down sagst du wann der Controller schalten soll aber das ist erstmal nicht so wichtig.
Und da er das Signal dauernd erzeugen soll schreibst du in einem Loop Befehl "Compare1b = .....". Mit dieser Zahl legst du das Tast-/ Pausenverhältnis fest.







Zitieren

Lesezeichen