Hallo,

mit dem ATtiny13 erzeuge ich ein PWM Signal, welches über einen L293D die Leistung von Motoren regelt.
Ist ein NXT Motor angeschlossen spinnt das PWM- Signal. Mal läuft der Motor schneller, dann langsam und ziemlich schnell erst mal gar nicht mehr. Ohne den ATtiny13, also ohne PWM, läuft der Motor ohne Probleme mit voller Leistung. Habe ich einen Motor mit geringerer Leistung angeschlossen scheint die PWM zu funktionieren.
Ist in meinem Quellcode evtl. ein Fehler oder weiß jemand woher das kommen könnte?

Code:
$regfile = "attiny13.dat"                                 
$crystal = 1200000
$hwstack = 10

Config Portb.0 = Output                                     'PWM M1
Config Portb.1 = Output                                     'PWM M2
Config Portb.3 = Input                                       'Poti M1
Config Portb.4 = Input                                       'Poti M2

Config Timer0 = Pwm , Prescale = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc

Dim Analog_m1 As Integer                                    
Dim Analog_m2 As Integer

Do
 'M1
 Analog_m1 = Getadc(3) 
                                    
 Select Case Analog_m1
  Case 0 To 200:
   Pwm0a = 140
  Case 201 To 400:
   Pwm0a = 100
  Case 401 To 600:
   Pwm0a = 60
  Case 601 To 800:
   Pwm0a = 40
  Case 801 To 900:
   Pwm0a = 20
  Case 901 To 1023:
   Pwm0a = 0
 End Select

 'M2 
 Analog_m2 = Getadc(2)        
                            
 Select Case Analog_m2
  Case 0 To 200:
   Pwm0b = 140
  Case 201 To 400:
   Pwm0b = 100
  Case 401 To 600:
   Pwm0b = 60
  Case 601 To 800:
   Pwm0b = 40
  Case 801 To 900:
   Pwm0b = 20
  Case 901 To 1023:
   Pwm0b = 0
 End Select

Loop
End
Gruß
stefan8010