[研習] 0725台南二中 Arduino車研習

照片因為我都在上課,可以的話再麻煩老師們將相片寄給我:henrychao521@gmail.com或是FB上tag我囉 🙂 大感激

今天在台南二中進行Arduino車研習,很厲害的大家今天都有做完。

本日PPT:

 

手機上簡單的操作app:

https://play.google.com/store/apps/details?id=braulio.calle.bluetoothRCcontroller

 

本日程式碼:

#include <SoftwareSerial.h>
char BTcmd;
SoftwareSerial BT(7,8); // RX, TX

int MotorRight1=6;
int MotorRight2=5;
int MotorLeft1=3;
int MotorLeft2=4;

void setup()
{
Serial.begin(9600);
BT.begin(9600);
pinMode(MotorRight1, OUTPUT);
pinMode(MotorRight2, OUTPUT);
pinMode(MotorLeft1, OUTPUT);
pinMode(MotorLeft2, OUTPUT);

}

void go()// 前進
{
digitalWrite(MotorRight1,HIGH);
digitalWrite(MotorRight2,LOW);
digitalWrite(MotorLeft1,HIGH);
digitalWrite(MotorLeft2,LOW);

}

void left() //右轉
{
digitalWrite(MotorRight1,HIGH);
digitalWrite(MotorRight2,LOW);
digitalWrite(MotorLeft1,LOW);
digitalWrite(MotorLeft2,LOW);
}
void right() //左轉
{
digitalWrite(MotorRight1,LOW);
digitalWrite(MotorRight2,LOW);
digitalWrite(MotorLeft1,HIGH);
digitalWrite(MotorLeft2,LOW);

}

void back()//
{
digitalWrite(MotorRight1,LOW);
digitalWrite(MotorRight2,HIGH);
digitalWrite(MotorLeft1,LOW);
digitalWrite(MotorLeft2,HIGH);

}
void stop() //停止
{
digitalWrite(MotorRight1,LOW);
digitalWrite(MotorRight2,LOW);
digitalWrite(MotorLeft1,LOW);
digitalWrite(MotorLeft2,LOW);

}

void loop()
{
if (BT.available())
{
BTcmd= BT.read();
if (‘F’ == BTcmd) go();
else if (‘L’ ==BTcmd) left();
else if (‘B’ ==BTcmd) back();
else if (‘R’ == BTcmd) right();
else stop(); //else stop()
}
else{

delay(200);
}
Serial.flush();
}

3 comments

發表留言