Guten Morgen zusammen,

ich habe bei Roboternetz-Wissen ein kurzes abe feines Tutorial zum Thema PWM und Bascom gefunden.
Dort ist folgender Code zu finden:
' Hardware PWM mit Timer1

$regfile = "m8def.dat"
$crystal = 4000000

Config Portb.1 = Output
Config Portb.2 = 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
Soweit sogut.

Nun habe ich den Code für einen tiny2313 angewendet.
Wie man sieht, wird der Timer1 für PWM konfiguriert.
Aber beim tiny ist nur Timer0 mit PWM verbunden.

Wieso aber funktiniert denn der Code auch bei 2313???

Natürlch habe ich die Ausgabeports dem 2313 entsprechend auf Portb.3 und Portb.4 konfiguriert.
Trotzdem erklärt sich für mich nicht die zeile
Config Timer1 ......

Würde mich über eine kurze Erklärung freuen.

Was mich auch wurdert ist die Tatsache, das sich bei Änderung der "Prescale"-Wertes nicht an de Blinkfrequenz ändert.

Hier mal mein Code:
$regfile "ATtiny2313.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 32
$framesize = 24

'************************************************* *****************************
Config Portb.3 = Output
Config Portb.4 = Output
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1

Dim Schleife As Integer
'************************************************* *****************************

Do

For Schleife = 100 To 250 Step 5
Compare1a = Schleife
Compare1b = 350 - Schleife
Waitms 10
Next Schleife

For Schleife = 250 To 100 Step -5
Compare1a = Schleife
Compare1b = 350 - Schleife
Waitms 10
Next Schleife

Loop

End
Danke im Voraus und Grüße

popi