MicroPython ESP32利用中断控制电机正反转示例
Posted perseverance52
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MicroPython ESP32利用中断控制电机正反转示例相关的知识,希望对你有一定的参考价值。
【MicroPython ESP32】利用中断控制电机正反转示例
- ✨本案例基于
Thonny
平台开发。✨ - 📍相关篇《【MicroPython ESP32】外部中断使用示例》
- 📌开发板采用的
esp32Dev
引脚功能图
📝利用中断控制电机正反转控制示例
import machine
sw1=machine.Pin(15,machine.Pin.IN,machine.Pin.PULL_UP) # 按键1,输入模式,上拉
sw2=machine.Pin(21,machine.Pin.IN,machine.Pin.PULL_UP) #按键2,输入模式,上拉
dr1=machine.Pin(22,machine. Pin.OUT) # 接电机驱动控制引脚
dr2=machine.Pin(23,machine. Pin.OUT) # 接电机驱动控制引脚
press=False
irq_pin=0
def handle_interrupt(pin):# 中断回调函数
global press
press=True
global irq_pin
irq_pin=int(str(pin)[4:-1])# 提取中断引脚号
sw1.irq(trigger=machine.Pin.IRQ_FALLING,handler=handle_interrupt)# 使能中断引脚,下降沿触发
sw2.irq(trigger=machine.Pin.IRQ_FALLING,handler=handle_interrupt)# 使能中断引脚,下降沿触发
while True:
if press:
print(irq_pin)
press = False
# 判断触发中断引脚
if irq_pin==15:
dr1.value(0)
dr2.value(1)
print('forward')
elif irq_pin==21:
dr1.value(1)
dr2.value(0)
print('reverse')
else:
pass
- ⛳Shell调试窗口信息
以上是关于MicroPython ESP32利用中断控制电机正反转示例的主要内容,如果未能解决你的问题,请参考以下文章
MicroPython ESP32/8266定时器中断示例解析