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


     作者: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)
     
     
     
     
       下面是测试视频
     
     
     

     
     
     

     

  • 相关阅读:
    SQL注入(手工篇)
    sed命令
    交互输入与for语句
    编程原理
    grep与正则表达式
    重定向和管道符
    shell_oneday_历史命令相关
    python_01_初识python
    C# 上传文件
    C# in 参数化处理 (记)
  • 原文地址:https://www.cnblogs.com/zhaocundang/p/4820640.html
Copyright © 2020-2023  润新知