树莓派Raspberry Pi 有40 pin GPIO 资源,不好好利用实在可惜,所以周边的扩充板也应运而生。本课程中使用 Adafruit 所出品的 Pi Plate 做一台双马达遥控车
Adafruit 所出的 Pi Plate 可以直接迭在Raspberry Pi 的 GPIO 脚位上,并有小型工作区可以制作简单的电路。不想焊接也可以迭加面包板。
以下是本台机器人的范例程序代码,使用 Python 编写。定义了三个动作:直走、左转与右转。
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.setup(18, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)
GPIO.setup(23, GPIO.OUT)
GPIO.setup(24, GPIO.OUT)
GPIO.setup(25, GPIO.OUT)
def straight():
GPIO.output(17,GPIO.HIGH)
GPIO.output(18,GPIO.HIGH)
GPIO.output(22,GPIO.HIGH)
GPIO.output(23,GPIO.HIGH)
GPIO.output(24,GPIO.HIGH)
GPIO.output(25,GPIO.HIGH)
time.sleep(1)
GPIO.output(17,GPIO.LOW)
GPIO.output(18,GPIO.LOW)
GPIO.output(22,GPIO.LOW)
GPIO.output(23,GPIO.LOW)
GPIO.output(24,GPIO.LOW)
GPIO.output(25,GPIO.LOW)
time.sleep(1)
return
def right():
GPIO.output(17,GPIO.HIGH)
GPIO.output(18,GPIO.HIGH)
GPIO.output(22,GPIO.HIGH)
time.sleep(0.5)
straight()
def left():
GPIO.output(23,GPIO.HIGH)
GPIO.output(24,GPIO.HIGH)
GPIO.output(25,GPIO.HIGH)
time.sleep(0.5)
straight()
while 1:
straight()
time.sleep(5)
right()
time.sleep(5)
left()
time.sleep(5)
GPIO.cleanup()
完成后展示
作者:阿吉老师
更多精彩文章请关注微信公众号?易心Microbit编程