まず、関数のパラメーターを逆にします。Open() は 256 未満の char 値を取り、Set() は 10 ビットの数値を取ります。
とはいえ、最低周波数を与える最大値 (255) を選択したことになります。データシートで説明されているように、Open() 関数は期間の値をパラメーターとして受け取ります。より高い周波数はより短い期間に相当し、その逆も同様です。
最後に、なぜ 100% のデューティ サイクルが必要なのですか? これは、ピンを常にハイにすることと同じです。その場合、頻度はまったく問題ではありません。ピンをオンにするだけで、PWM はまったく使用しないでください。
この PWM で何を駆動しているかはまだ述べていませんが、一般的に言えば、周波数が高すぎると問題が発生する可能性があります。無線干渉、過熱などを引き起こす可能性があります。
あなたの質問は、PWM の目的と用語が何を指しているのかを誤解していることを示しているので、ここに tl;dr があります。
PWM は、ピンを急速にハイとローに切り替えることで、0 と Vcc の間の電圧をシミュレートします。シミュレートされた電圧は、time_high/(time_high + time_low) に比例します。ピンが Vcc にある時間の割合は、デューティ サイクルと呼ばれます。(したがって、100% デューティは常にオンで、Vcc ボルトを与えます。0% デューティは常にオフで、0 V を与えます。)
このオン/オフ サイクルが繰り返される速度は、PWM 周波数と呼ばれます。周波数が小さすぎる (周期が長すぎる) 場合、負荷によってピン電圧が変動します。目標は、負荷にかかる電圧を平滑化するのに十分な速さで PWM を実行することですが、他の問題を引き起こすほど速くはなりません。利用可能な周波数は、ほとんどのアプリケーションに適しています。また、周波数を高く (周期を小さく) 設定すると、デューティ サイクルの精度も低下することに注意してください。これはデータシートで説明されています。その理由は基本的に、デューティ サイクルを最終的にクロック ティック オンとクロック ティック オフに変換する必要があるためです。周波数が速いほど、各サイクルでクロック ティックを分割する方法が少なくなります。