私の目標は、ユーザーがラズベリー 3 のハードウェア PWM ピンの 1 つを介して PWM 信号を出力できる Java で GUI をコーディングすることです。 ms)、デューティ サイクルの長さ (ms)、およびパルスが繰り返される頻度。
これをコーディングするために、WiringPi に基づく Pi4J ライブラリ ( http://pi4j.com ) を使用しました。実際に PWM 信号を作成しようとすると、次の 3 つの主な機能があることに気付きました。
pwmSetRange(int x) pwmSetClock(int x) Setpwm(int x)
私がこれらの機能を正しく理解している限り、setRange は基本的にデューティ サイクルの可能な単一ステップを設定し、setclock は周波数の除数を設定し、setpwm はデューティ サイクルを設定します。
しかし、ユーザー入力に応じてこれらのメソッドを正しく構成するにはどうすればよいでしょうか?
また、私が気づいたこと: 私が読んだ記事を参照すると、PWM 周波数は次の式を使用して計算されます: 周波数 = 19.2e6 Hz / pwmClock / pwmRange 4095 までのクロック値と 4096 までの範囲が受け入れられます。Pi のハードウェア PWM では、約 1.2Hz から 1920Hz までの周波数のみが可能であることを正しく理解できましたか?