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?
Gruß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
stefan8010







Zitieren

Lesezeichen