Gast
#2947992
Hallo, folgende knifflige Aufgabe. Vielleicht können mir Mathematiker dabei helfen. Ich habe einen Timer mit folgenden 3 Registern, die es zu befüllen gibt um eine vorgegebene Zeit zu realisieren: 1. Clockdivider mit möglichen Teilern 0, 2, 4 2. Prescaler = 16Bit 3. Timer = 16Bit Das bedeutet, dass ich Zeiten von 1 Takt bis max. 65535*65535*4 Takte damit realisieren kann. Wie bekomme ich eine Berechnung der Registerwerte aus einer Zeitangabe in zB.µs hin? Der Timertakt ist durch zurücklesen und auswerten von verschiedenen Register bekannt. D.h. somit ist die Periodendauer in der Funktion bereits als kleinste Zeiteinheit berechnet. Die Berechnung der Tackanzahl ist auch schon vorhanden. Bsp: BenötigteTackte = (TimeMicroSecond * 1e-6) / (1/SystemClock); Jetzt geht es darum: Wie muss ich die "BenötigteTackte" mit Hilfe von Algorithmen in die Register verteilen, damit dann die richtige Zeit eingestellt ist? Ich habe mich hoffentlich verständlich ausgedrückt und hoffe auf Eure Hilfe. Vielen Dank Frank