智能小车前进后退左转右转python代码
时间: 2023-11-09 22:02:13 浏览: 254
以下是一个简单的智能小车前进后退左转右转的Python代码:
```python
import RPi.GPIO as GPIO
import time
# 设置GPIO口为BCM编码方式
GPIO.setmode(GPIO.BCM)
# 定义引脚
IN1 = 26
IN2 = 19
IN3 = 13
IN4 = 6
# 设置引脚为输出状态
GPIO.setup(IN1, GPIO.OUT, initial=GPIO.LOW)
GPIO.setup(IN2, GPIO.OUT, initial=GPIO.LOW)
GPIO.setup(IN3, GPIO.OUT, initial=GPIO.LOW)
GPIO.setup(IN4, GPIO.OUT, initial=GPIO.LOW)
# 前进
def forward():
GPIO.output(IN1, GPIO.HIGH)
GPIO.output(IN2, GPIO.LOW)
GPIO.output(IN3, GPIO.HIGH)
GPIO.output(IN4, GPIO.LOW)
# 后退
def backward():
GPIO.output(IN1, GPIO.LOW)
GPIO.output(IN2, GPIO.HIGH)
GPIO.output(IN3, GPIO.LOW)
GPIO.output(IN4, GPIO.HIGH)
# 左转
def turn_left():
GPIO.output(IN1, GPIO.LOW)
GPIO.output(IN2, GPIO.HIGH)
GPIO.output(IN3, GPIO.HIGH)
GPIO.output(IN4, GPIO.LOW)
# 右转
def turn_right():
GPIO.output(IN1, GPIO.HIGH)
GPIO.output(IN2, GPIO.LOW)
GPIO.output(IN3, GPIO.LOW)
GPIO.output(IN4, GPIO.HIGH)
# 停止
def stop():
GPIO.output(IN1, GPIO.LOW)
GPIO.output(IN2, GPIO.LOW)
GPIO.output(IN3, GPIO.LOW)
GPIO.output(IN4, GPIO.LOW)
# 测试代码
if __name__ == '__main__':
try:
forward()
time.sleep(2)
backward()
time.sleep(2)
turn_left()
time.sleep(2)
turn_right()
time.sleep(2)
stop()
except KeyboardInterrupt:
GPIO.cleanup()
```
阅读全文