您的位置:首页 > 编程语言 > ASP

raspberry pi2 智能小车源码及测试视频

2015-09-18 23:15 633 查看
作者:XIAOBO QQ:463431476

转载请注明作者


Python 源代码

import RPi.GPIO as GPIO
#human-computer-interaction
import curses

import time

from curses import wrapper

GPIO.setmode(GPIO.BCM)

#left_moto_go
GPIO.setup(27, GPIO.OUT) #IN1

GPIO.setup(18, GPIO.OUT) #IN3
#left_moto_back
GPIO.setup(12,GPIO.OUT)#IN2

GPIO.setup(25,GPIO.OUT)#IN4

#right_moto_go
GPIO.setup(22, GPIO.OUT) #IN5

GPIO.setup(23, GPIO.OUT) #IN7
#right_moto_back
GPIO.setup(17,GPIO.OUT)#IN6

GPIO.setup(8,GPIO.OUT)#IN8

stdscr = curses.initscr()

stdscr.clear()

while True:

ch = stdscr.getkey()

#EXIT

if ch == 'e':
curses.endwin()

break

# Forward

if ch == 'w':

GPIO.output(27,GPIO.HIGH)

GPIO.output(18,GPIO.HIGH)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(22,GPIO.HIGH)

GPIO.output(23,GPIO.HIGH)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

time.sleep(0.3)

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

# Backward

if ch == 's':

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(12,GPIO.HIGH)

GPIO.output(25,GPIO.HIGH)

GPIO.output(17,GPIO.HIGH)

GPIO.output(8,GPIO.HIGH)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

time.sleep(0.3)

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

# Turn Right

if ch == 'd':

GPIO.output(27,GPIO.HIGH)

GPIO.output(18,GPIO.HIGH)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(17,GPIO.HIGH)

GPIO.output(8,GPIO.HIGH)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

time.sleep(0.3)

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

# Turn Left

if ch == 'a':

GPIO.output(22,GPIO.HIGH)

GPIO.output(23,GPIO.HIGH)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

GPIO.output(12,GPIO.HIGH)

GPIO.output(25,GPIO.HIGH)

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

time.sleep(0.3)

GPIO.output(27,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

GPIO.output(12,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

GPIO.output(17,GPIO.LOW)

GPIO.output(8,GPIO.LOW)

下面是测试视频

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: