手势控制arduino-wifi小车(含代码)

手势控制器



小车完成图

贴代码!!!!!

手势控制器代码:

#include<SoftwareSerial.h>

 #include<JY901.h>

 SoftwareSerial WIFISerial(10,11); // RX,TX    //模拟一个软串口

float b[3];

void setup() {

 // put your setup code here, to run once:

   Serial.begin(9600);

    pinMode(11, OUTPUT);

    int i=0;

    WIFISerial.begin(9600);

//  WIFISerial.println("AT");   

//    delay(100);

//     WIFISerial.println("AT+RST");   

//    delay(100);

//    WIFISerial.println("AT+CWJAP=\"kxk\",\"296097205\"");   

//    delay(1000);

//  WIFISerial.println("AT+CWMODE=1");   

//    delay(100);

//      WIFISerial.println("AT+CIPMUX=0");   

//    delay(100);

//         WIFISerial.println("AT+CIPMODE=1");   

//    delay(100);

//WIFISerial.println("AT+CIPSTART=\"TCP\",\"192.168.43.56\",8080");   

// delay(1000);

//WIFISerial.println("AT+CIPSEND=0,14");

   

     

}

void loop()

{

 int i = 0;

 b[0]=(float)JY901.stcAngle.Angle[0]/32768*180;b[1]=(float)JY901.stcAngle.Angle[1]/32768*180;b[2]=(float)JY901.stcAngle.Angle[2]/32768*180;

 WIFISerial.print(b[0]);WIFISerial.print("");WIFISerial.print(b[1]);WIFISerial.print("");WIFISerial.println(b[2]);

 WIFISerial.println(" ");

 delay(500);

 if (WIFISerial.available())

 {

     Serial.write(Serial.read());

 }

     while (Serial.available())

 {

    JY901.CopeSerialData(Serial.read()); //CallJY901 data cope function

 }

}

void serialEvent() {

while (Serial.available()) {

char inChar =(char)Serial.read();WIFISerial.print(inChar); //Output Original Data, use thiscode

}

}

小车代码:

#include"JY901.h"
#include <Wire.h>
#include <math.h>
#include <SoftwareSerial.h>  
SoftwareSerial WIFISerial(10,11); 
#define IN1 6 
#define IN2 7 
#define IN3 4 
#define IN4 5 
String comdata="";
String numdata="";
float b[3];
void setup() 
{
  Serial.begin(9600);
  while (!Serial)
  {  
    ;   
  }  
    WIFISerial.begin(9600);
}


void initCar(){
  digitalWrite(IN1,LOW);      
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);   
  digitalWrite(IN4,LOW);
}
 
void turnLeft(){
  digitalWrite(IN1,HIGH);      
  digitalWrite(IN2,LOW);       
  digitalWrite(IN3,LOW);      
  digitalWrite(IN4,LOW);       
}
 
void turnRight(){
  digitalWrite(IN1,LOW);      
  digitalWrite(IN2,LOW);        
  digitalWrite(IN3,HIGH);      
  digitalWrite(IN4,LOW);      
}
 
void go(){
  digitalWrite(IN1,HIGH);      
  digitalWrite(IN2,LOW);         
  digitalWrite(IN3,HIGH);      
  digitalWrite(IN4,LOW);      
}

void back(){
  digitalWrite(IN1,LOW);      
  digitalWrite(IN2,HIGH);       
  digitalWrite(IN3,LOW);      
  digitalWrite(IN4,HIGH);        
}

void stopCar(){
  initCar();
}


void loop(){
int i=0,j=0,t=0,n=0,k=0;
float num;
char str;
while(WIFISerial.available()!=0)
    {
      comdata+=char(WIFISerial.read());
      delay(2);
    }            

    Serial.println(comdata); 
for(i=12;i<comdata.length();i++)
    {
     if(comdata[i]>='0'&&comdata[i]<='9'||comdata[i]=='-')
       {
        while(comdata[i]!=' ') 
           {
             numdata+=comdata[i++];
           }
        for(j=0;j<numdata.length();j++)
           {
            t=n=numdata.length();
            if(numdata[j]=='-')
              {
                j++;
              }
            if(numdata[j]=='.')
             {
               t=j;
               j++;
             }
            if(numdata[j]==' ')     break;
            num+=numdata[j]-'0';
            num=num*10;
          }
       num=num/pow(10,n-t+3);
       if(numdata[0]=='-')
           {
            num=0-num;
           }
       b[k]=num;
       k++;
       num=0;
     }
   numdata="";  
}
comdata="";
if(abs(b[1])>=25)
{
  if(b[1]>=25)
    { 
      if(b[1]>=70){initCar();}
      else if(abs(b[0])<=25){initCar();}
      else if(b[0]>25) {turnRight();}
      else {turnRight();}
    }
  else 
    { 
    if(b[1]<=-70) {initCar();}
    else if(abs(b[0])<=25) {initCar();}
    else if(b[0]>25) {turnLeft();}
    else {turnLeft();}
    }
}
else if(abs(b[0])>=25)
if(b[0]>=25) {go();}
else{back();}
else {initCar();}

}


校赛告一段落 ,之后就要找工作啦  ,可能省赛 不会太上心,不过一定会认真做的!!!!

哈哈哈感谢一起学习的学弟,你们都是最可爱的朋友。



猜你喜欢

转载自blog.csdn.net/qq_33414553/article/details/80656916