今天正好看到K210的脉冲章节,就顺便拿出步进电机做个小实验,也好巩固一下所学的知识。下面是K210关于脉冲的相关介绍:
构造函数
machine.PWM(tim, freq, duty, pin, enable=True)
PWM 对象在 machine 模块下
【tim】K210 的 PWM 依赖于定时器来产生波形
【freq】PWM 频率
【duty】PWM 占空比
【pin】PWM 输出引脚
【enable】是否在构建对象后立即产生波形,默认 True。
使用方法:
PWM.freq(freq) 设置频率。不传参数返回当前频率值。
PWM.duty(duty) 设置占空比。不传参数返回当前占空比值。[0-100]表示占空比百分比
PWM.enable() 使能 PWM 输出。
PWM.disable() 暂停 PWM 输出。
PWM.deinit() 注销 PWM
下面是步进电机的接线示意图:
然后编写K210的代码如下:
from machine import Timer, PWM # 导入计时器模块,脉冲模块import time # 导入时间模块tim = Timer(Timer.TIMER0, Timer.CHANNEL0, mode=Timer.MODE_PWM) # 创建定时器对象(定时器0,通道0,脉冲模式)
motor = PWM(tim, freq=1, duty=50, pin=10) # 创建电机对象(定时器tim,频率=1,占空比=50%, IO口为外部10口 )# 设置电机对象的函数(传参(频率值))
def s(x):motor.freq(x) # 设置频率s(4000) # 调用函数, 此值越大步进电机的转速越快,此值越小,步进电机的噪音越大,转速越低。
然后通电测试,完美控制。代码可以直接食用。如果对您有那么一点帮助的话,希望把您的小爱心留下!谢谢了!