Hallo,
ich habe mich bei meiner Servo Ansteuerung für die Timer Methode entschieden (http://www.rn-wissen.de/index.php/Servoansteuerung)
Bei dem ganzen hat sich der Servo hin und wieder kurz gedreht, zuletzt gar nicht mehr
Nach dem drehen hat er immer eine weile gebrummt und danach das board neu gestartet, als hätte er die stromzufuhr kurz gekappt (versorgung über 9V batterie)
So sieht die Ansteuerung aus:
Timerinitialisierung
Meine Rechnung dazu:Code:Config Timer0 = Timer , Prescale = 1024 'timer für Servos Timer0 = 230 '224 bis 239 Config Porta.0 = Output Porta.0 = 0 On Timer0 Isr_servo
16 mhz / 1024 / 1000 ergibt 15,...
daraus ergibt sich der bereich für den timer
timer1 ist schon anderweidig vergeben, daher kann ich den nicht nehmen
(der Timer wird per Tastendruck aktiviert)
Die Isr
das ganze mit oder ohne die 20ms wartezeitCode:Isr_servo: If Aktiv = 2 Then Print "Ende" Else If Aktiv = 0 Then Porta.0 = 1 'und port anschalten Aktiv = 1 Print "An" Else Porta.0 = 0 'dann port wieder ausschalten Disable Timer0 Aktiv = 2 Print "aus" Waitms 20 End If End If Return
das board meldet ordentlich "An", "aus" und "Ende" nacheinander, danach der oben beschriebene effekt
abgesehen davon das Disable bei Timern offenbar nicht funktioniert (sonst gäbs kein "Ende") weiß einer woran es liegt?







Zitieren

Lesezeichen