Hallihallo,
Ich habe ein ganz dummes verständnis Problem...
Und zwar möchte ich ein PPM Signal, an eine Modellfernsteuerung geben. Das funktioniert über einen Lehrer-Schüler Eingang, und ist (noch) nicht das Problem.
Um das PPM signal zu erzeugen, wollte ich meinen Raspberry Pi, mit der WiringPi lib benutzen. Dieser Besitzt ja auf GPIO-Pin 18 ein PWM-Signal möglichkeit.
Falls ich das richtig verstanden habe, ist ein PPM Signal im grunde nichts anderes als ein umgedrehtes PPM Signal oder Beim PPM Signal ist der Puls fest (0,5ms) und der Bereich zwischen den Flanken auschlaggebend (0,5-1,5ms). Bzw brauch das die Fernbedienung in diesem Fall.
Die WiringPi lib bietet also die Möglichkeit, für das PWM Signal, einmal den Divisor zu setzen
den "Range" zu setzten
Und den (?eigendlichen) Wert zu schreiben
Also wenn ich das richtig verstanden habe, teil der Divisor sozusagen die Taktrate (vom Prozessor :?:/ Haupttakt ) auf. Also wenn der einen Takt von zB. 10Mhz hat, und ich den Devisor auf 500 Setze, hätte ich dann einen Takt von 10.000.000\500 = 20Khz ? für das PWM Signal?
Was genau macht der "Range" in diesem Fall? Gibt der den Bereich an, für den eigentlichen Wert?
Und was schreibt der pwmWrite? trägt man hier den DutyCycle ein? Wenn ja, wie soll man dann damit so ein PPM Signal erzeugen... Der DC gibt doch nur das Verhältnis von Peak zu Pause an oder? Aber ich will ja einen festen Peak... Und ich dachte der DC wäre ein Wert zwischen 0-1..
Vll kann mir das jmd erklären.. hänge da wie gesagt grade etwas im Kopf fest...
Lg Peanuts
Ich habe ein ganz dummes verständnis Problem...
Und zwar möchte ich ein PPM Signal, an eine Modellfernsteuerung geben. Das funktioniert über einen Lehrer-Schüler Eingang, und ist (noch) nicht das Problem.
Um das PPM signal zu erzeugen, wollte ich meinen Raspberry Pi, mit der WiringPi lib benutzen. Dieser Besitzt ja auf GPIO-Pin 18 ein PWM-Signal möglichkeit.
Falls ich das richtig verstanden habe, ist ein PPM Signal im grunde nichts anderes als ein umgedrehtes PPM Signal oder Beim PPM Signal ist der Puls fest (0,5ms) und der Bereich zwischen den Flanken auschlaggebend (0,5-1,5ms). Bzw brauch das die Fernbedienung in diesem Fall.
Die WiringPi lib bietet also die Möglichkeit, für das PWM Signal, einmal den Divisor zu setzen
pwmSetClock (int divisor) ;
This sets the divisor for the PWM clock.
den "Range" zu setzten
pwmSetRange (unsigned int range) ;
This sets the range register in the PWM generator. The default is 1024.
Und den (?eigendlichen) Wert zu schreiben
void pwmWrite (int pin, int value) ;
Writes the value to the PWM register for the given pin. The value must be between 0 and 1024.
Also wenn ich das richtig verstanden habe, teil der Divisor sozusagen die Taktrate (vom Prozessor :?:/ Haupttakt ) auf. Also wenn der einen Takt von zB. 10Mhz hat, und ich den Devisor auf 500 Setze, hätte ich dann einen Takt von 10.000.000\500 = 20Khz ? für das PWM Signal?
Was genau macht der "Range" in diesem Fall? Gibt der den Bereich an, für den eigentlichen Wert?
Und was schreibt der pwmWrite? trägt man hier den DutyCycle ein? Wenn ja, wie soll man dann damit so ein PPM Signal erzeugen... Der DC gibt doch nur das Verhältnis von Peak zu Pause an oder? Aber ich will ja einen festen Peak... Und ich dachte der DC wäre ein Wert zwischen 0-1..
Vll kann mir das jmd erklären.. hänge da wie gesagt grade etwas im Kopf fest...
Lg Peanuts