PWM per Poti mit dem Atmega8


Hier mal ein sehr einfaches Beispiel , wie man mit einem Poti
ein PWM regeln kann , das über Timer1 läuft.
Das PWM liegt am OCA1-Pin , so das dort direkt die LED
angeschlossen werden kann .



Hier zunächst der Schaltplan  :








Der Code sieht wie folgt aus :

$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 30
$swstack = 30
$framesize = 30


Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down , Prescale = 1024
Config Adc = Single , Prescaler = Auto , Reference = Avcc


Dim W As Word
Dim X As Word

Enable Timer1
Enable Interrupts
Compare1b = 255

Do

   W = Getadc(0)
   W = W / 4
   If W <> X Then
      X = W
      Compare1a = W
   End If

Loop
End


zurück zur Beispiel-Übersicht