You are on page 1of 5

CODING 1 void setup( )

#include <Servo.h> {

#include <Psx.h> Serial.begin(9600);


// Includes the Psx Library
pinMode(E1, OUTPUT);
// Any pins can be used since it is done
in software pinMode(I1, OUTPUT);

Psx ps2; pinMode(I2, OUTPUT);

Servo s1; pinMode(E2, OUTPUT);

Servo s2; pinMode(I3, OUTPUT);

pinMode(I4, OUTPUT);

int angle1 = 40;

int angle2 = 80; ps2.setupPins(dataPin, cmndPin, attPin,


clockPin, 10);

//(DataPin,Cmnd Pin, AttPin, ClkPin,


int dataPin = 9; Delay);

int cmndPin = 10; Serial.begin(9600);

int attPin = 11; pinMode(led1, OUTPUT);

int clockPin = 12; s1.attach(14);

s2.attach(15);

unsigned int button = 0; s1.write(70);

// int - -32768 to 32767 unsigned int s2.write(90);


0 to 65535
}
// jika guna int...button L2 tidak
berfungsi kerana nilainya 32768

int led1 = 13; void loop()

int E1 = 6; // Enable Pin for motor 1 {

int I1 = 7; // Control pin 1 for motor 1 button = ps2.read();

int I2 = 8; // Control pin 2 for motor 1 Serial.println(button);

int E2 = 5; // Enable Pin for motor 1 if (button == L1) {

int I3 = 4; // Control pin 1 for motor 1 angle1 = 90;

int I4 = 3; // Control pin 2 for motor 1 }


if (button == UP) { delay(20); // mesti ada jika tidak
receiver tidak berfungsi
angle1 = 70;
stop_motor();
}
s1.write(angle1);
if (button == DOWN) {
s2.write(angle2);
angle1 = 30;
}
}

if (button == CIRCLE) {
void move_forward() {
angle2 = 0;
analogWrite(E1, 200);
}
digitalWrite(I1, LOW);
if (button == SQUARE) {
digitalWrite(I2, HIGH);
angle2 = 87;

}
analogWrite(E2, 200);
if (button == TRIANGLE) {
digitalWrite(I3, HIGH);
move_forward();
digitalWrite(I4, LOW);
delay(50);
}
}

if (button == CROSS) {
void move_backward() {
move_backward();
analogWrite(E1, 200);
delay(50);
digitalWrite(I1, HIGH);
}
digitalWrite(I2, LOW);
if (button == LEFT) {

turn_right();
analogWrite(E2, 200);
delay(50);
digitalWrite(I3, LOW);
}
digitalWrite(I4, HIGH);
if (button == RIGHT) {
}
turn_left();

delay(50);
void turn_right() {
}
analogWrite(E1, 130);
digitalWrite(I1, LOW); int angle1 = 40;

digitalWrite(I2, HIGH); int angle2 = 80;

analogWrite(E2, 0); int dataPin = 9;

} int cmndPin = 10;

int attPin = 11;

void turn_left() { int clockPin = 12;

analogWrite(E1, 0);

unsigned int button = 0; // int - -


32768 to 32767 unsigned int 0 to
analogWrite(E2,130); 65535
digitalWrite(I3, HIGH); // jika guna int...button
digitalWrite(I4, LOW); L2 tidak berfungsi kerana nilainya
32768
}
int led1 = 13;

void stop_motor() {
int E1 = 6; // Enable Pin for motor 1
analogWrite(E1, 0);
int I1 = 7; // Control pin 1 for motor 1
analogWrite(E2, 0);
int I2 = 8; // Control pin 2 for motor 1
}
int E2 = 5; // Enable Pin for motor 1

int I3 = 4; // Control pin 1 for motor 1


CODING 2
int I4 = 3; // Control pin 2 for motor 1
#include <Servo.h>

#include <Psx.h>
// Includes the Psx Library void setup()

{
// Any
pins can be used since it is done in
software
Serial.begin(9600);
Psx ps2;

Servo s1;
pinMode(E1, OUTPUT);
Servo s2;
pinMode(I1, OUTPUT);

pinMode(I2, OUTPUT);
pinMode(E2, OUTPUT); if (button == DOWN) {

pinMode(I3, OUTPUT); angle1 = 30;

pinMode(I4, OUTPUT); }

ps2.setupPins(dataPin, cmndPin, if (button == CIRCLE) {


attPin, clockPin, 10);
angle2 = 0;
//(DataPin,Cmnd Pin, AttPin,
ClkPin, Delay); }

Serial.begin(9600); if (button == SQUARE) {

pinMode(led1, OUTPUT); angle2 = 87;

s1.attach(14); }

s2.attach(15);

s1.write(70);

s2.write(90); if (button == TRIANGLE) {

move_forward();

} delay(50);

void loop() if (button == CROSS) {

{ move_backward();

button = ps2.read(); delay(50);

Serial.println(button); }

if (button == L1) { if (button == LEFT) {

angle1 = 90; turn_right();

} delay(50);

if (button == UP) { if (button == RIGHT) {

angle1 = 70; turn_left();

} delay(50);

}
void turn_right() {

delay(20); // mesti ada jika tidak analogWrite(E1, 130);


receiver tidak berfungsi
digitalWrite(I1, LOW);

digitalWrite(I2, HIGH);
stop_motor();

s1.write(angle1);
analogWrite(E2, 0);
s2.write(angle2);
}
}

void turn_left() {
void move_forward() {
analogWrite(E1, 0);
analogWrite(E1, 200);

digitalWrite(I1, LOW);
analogWrite(E2,130);
digitalWrite(I2, HIGH);
digitalWrite(I3, HIGH);

digitalWrite(I4, LOW);
analogWrite(E2, 200);
}
digitalWrite(I3, HIGH);

digitalWrite(I4, LOW);
void stop_motor() {
}
analogWrite(E1, 0);

analogWrite(E2, 0);
void move_backward() {
}
analogWrite(E1, 200);

digitalWrite(I1, HIGH);
digitalWrite(I2, LOW);

analogWrite(E2, 200);

digitalWrite(I3, LOW);

digitalWrite(I4, HIGH);

You might also like