学物联网,来万物简单IoT物联网!!
PWM 介绍
- 模块功能:
PWM脉宽调制驱动模块
接口说明
PWM - 构建PWM对象
- 函数原型:PWM(ch, freq, duty)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
ch | object | Y | Pin对象 例如:Pin(2) |
freq | int | N | pwm频率设置 范围:1Khz ~ 40Mhz 默认:5Khz |
duty | int | N | pwm占空比 范围:0 ~ 1023 默认:512(50%) |
- 返回值:
构建的PWM对象。
freq - 操作PWM的频率
- 函数原型:freq(data)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
data | int | N | 无参数,返回当前PWM频率值 有参,设置当前参数:1Khz ~ 40Mhz |
- 返回值:
无参数,返回当前PWM频率值
duty - 操作PWM的占空比
- 函数原型:duty(data)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
data | int | N | 无参数,返回当前PWM占空值 有参,设置当前参数:0 ~ 1023 |
- 返回值:
无参数,返回当前PWM占空值
duty_u16 - 操作PWM的占空比2
- 函数原型:duty_u16(data)
- 参数说明:
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
data | int | N | 无参数,返回当前PWM占空值 有参,设置当前参数:0 ~ 65535 |
- 返回值:
无参数,返回当前PWM占空值
deinit - 关闭PWM
- 函数原型:deinit()
- 参数说明:
无
- 返回值:
无 - 代码示例
from machine import Pin, PWM
pwm0 = PWM(Pin(0)) # 创建Pin0为PWM对象
freq = pwm0.freq() # 获取pwm频率
pwm0.freq(1000) # 设置PWM频率1Khz
duty = pwm0.duty() # 获取占空比值(0~1023)
pwm0.duty(256) # 设置占空比(25%)
duty_u16 = pwm0.duty_u16() # 获取占空比值(0~65535)
pwm0.duty_u16(2**16*3//4) # 设置占空比(75%)
pwm0.deinit() # 关闭PWM