MicroPythonで使うWio Terminal - 目次 machine.PWM の使用例 # Wio Terminal machine.PWMのサンプル # This code is provided under a CC0 Public Domain License. # http://creativecommons.org/publicdomain/zero/1.0/ # 2022年6月19日 佐藤恭一 https://kyoutan.jpn.org from machine import PWM, Pin pwm0 = PWM(Pin( 13 )) # pin13 PWM0 # PWM以外のピンでは使用できない。エラーは出ず動かないだけ # 設定できる周波数は 460, 1830, 7330, 29300, 58600, 117000, 234000, 470000 [Hz] pwm0 .freq( 7330 ) pwm0 .duty( 511 ) # デューティ比は 0-1023 pwm1 = PWM(Pin( 16 ), freq = 1830 , duty = 200 ) # 一行で書くこともできる """ >>> help(pwm0) object PWM(Arduino Pin(13), freq=1000, duty=512) is of type PWM init -- <function> deinit -- <function> freq -- <function> duty -- <function> """ 周波数とディユーティ比を指定すれば PWMピンから波形が出てきます。 いろいろな数値を指定して波形を観測してみたところ、設定できる周波数の段階が荒くて、460, 1830, 7330, 29300, 58600, 117000, 234000, 470000 [Hz] の8段階でした(数値はおよその値)。この数値から外れた値を指定した場合、低い方の値に設定されます。 デューティ比は 0~1023で指定します。 PWMで使用できるピンは、13, 16, 23