Gast
#852040
hallo leute! habe da ein verständnis problem beim erzeugen eines PWM für meinen AT89S4051! möchte über die PWM einen servo-regler ansteuern! hab mir auch eine schaltung aufgebaut und die scheint zu funktionieren. schreibe den code in C aber habe mit dem programmieren von µC nicht viel erfahrung! damit ich auf die periodendauer von 20ms komme, wird der takt von 12MHz intern schon mal durch 2 gemindert somit ist ein zyklus rund 1µs! dann lasse ich das TL0 register von 177 bis 255 zählen (dauer 78µs) und der overflow von TL0 inc. mir den TL1 um 1! somit erhalte ich eine periodendauer von 20ms. ich hoffe, dass ist bis hierhin noch richtig! habe dann einfach die werte in mein programm übergeben! siehe anhang! da der T0 einen auto reload hat, müsste es doch so funktionieren...oder mache ich was falsch?? jedenfalls regelt der servo nur nach einer seite aus und will über die endposition hinaus!! danke für eure hilfe!! mfg christian