Stap 4: Arduino broncode voor gebaar gebaseerde robot auto
#define BAUDRATE 9600
Const int MotR_A = 3; DC Motor1 Pole_A
Const int MotR_B = 5; DC Motor1 Pole_B
Const int MotL_A = 6; DC Motor2 Pole_A
Const int MotL_B = 9; DC Motor2 Pole_B
byte GetValue;
VOID Setup
{
Serial.begin(BAUDRATE);
pinMode (MotR_A, uitvoer);
pinMode (MotR_B, uitvoer);
pinMode (MotL_A, uitvoer);
pinMode (MotL_B, uitvoer);
}
byte ReadOneByte() / / één Byte lezen-functie
{
int ByteRead;
terwijl (!. Serial.available());
ByteRead = Serial.read();
Return ByteRead;
}
void loop
{
GetValue = ReadOneByte();
switch(GetValue)
{
Case "C":
Robot_Left();
breken;
Case "A":
Robot_Right();
breken;
geval 'N':
Robot_Forword();
breken;
geval van ':
Robot_Reverse();
breken;
Case "E":
Robot_Left();
delay(1000);
Robot_Forword();
breken;
Case 'W':
Robot_Right();
delay(1000);
Robot_Forword();
breken;
}
}
VOID Robot_Reverse()
{
digitalWrite (MotR_B, hoge);
digitalWrite (MotR_A, laag);
digitalWrite (MotL_A, hoge);
digitalWrite (MotL_B, laag);
}
VOID Robot_Forword()
{
digitalWrite (MotR_A, hoge);
digitalWrite (MotR_B, laag);
digitalWrite (MotL_B, hoge);
digitalWrite (MotL_A, laag);
}
VOID Robot_Left()
{
digitalWrite (MotR_B, hoge);
digitalWrite (MotR_A, laag);
digitalWrite (MotL_A, laag);
digitalWrite (MotL_B, hoge);
}
VOID Robot_Right()
{
digitalWrite (MotR_B, laag);
digitalWrite (MotR_A, hoge);
digitalWrite (MotL_A, hoge);
digitalWrite (MotL_B, laag);
}
VOID Robot_Stop()
{
digitalWrite (MotR_B, laag);
digitalWrite (MotR_A, laag);
digitalWrite (MotL_A, laag);
digitalWrite (MotL_B, laag);
}