Professional Documents
Culture Documents
Lap Trinh Tay Dieu Khien
Lap Trinh Tay Dieu Khien
Lap Trinh Tay Dieu Khien
h>
#include <Adafruit_PWMServoDriver.h>
void setup()
{
Serial.begin(9600);
Serial.println("16 channel Servo test!");
pwm.begin();
pwm.setPWMFreq(FREQUENCY);
pinMode(2, INPUT_PULLUP); // set chan vao
pinMode(3, INPUT_PULLUP); // set chan vao
}
void loop()
{
pwm.setPWM(1, 0, pulseWidth(110));
pwm.setPWM(2, 0, pulseWidth(150));
delay(500);
pwm.setPWM(3, 0, pulseWidth(80));
pwm.setPWM(4, 0, pulseWidth(81));
delay(400);
pwm.setPWM(5, 0, pulseWidth(105));
delay(3000);
// set1
pwm.setPWM(0, 0, pulseWidth(142));
delay(700); // s1 quay
pwm.setPWM(1, 0, pulseWidth(75));
pwm.setPWM(2, 0, pulseWidth(130));
delay(1500);
pwm.setPWM(5, 0, pulseWidth(50));
delay(500);
pwm.setPWM(3, 0, pulseWidth(40));
delay(600);
pwm.setPWM(5, 0, pulseWidth(105));
delay(1500);
int ctht2 = digitalRead(2);
Serial.println(ctht2);
int ctht3 = digitalRead(3);
Serial.println(ctht3);
if (ctht2 == LOW && ctht3 == LOW)
{
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(4, 0, pulseWidth(30));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(900);
pwm.setPWM(0, 0, pulseWidth(78));
delay(1000);
pwm.setPWM(1, 0, pulseWidth(75));
pwm.setPWM(2, 0, pulseWidth(130));
delay(1500);
pwm.setPWM(4, 0, pulseWidth(81));
delay(1500);
pwm.setPWM(3, 0, pulseWidth(40));
delay(900);
pwm.setPWM(5, 0, pulseWidth(50));
delay(600);
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(5, 0, pulseWidth(105));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(2000);
}
else
{
int ctht2 = digitalRead(2);
Serial.println(ctht2);
int ctht3 = digitalRead(3);
Serial.println(ctht3);
if (ctht3 == HIGH && ctht2 == HIGH)
{
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(4, 0, pulseWidth(30));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(900);
pwm.setPWM(0, 0, pulseWidth(58));
delay(1000);
pwm.setPWM(1, 0, pulseWidth(75));
pwm.setPWM(2, 0, pulseWidth(130));
delay(1500);
pwm.setPWM(4, 0, pulseWidth(81));
delay(1500);
pwm.setPWM(3, 0, pulseWidth(40));
delay(900);
pwm.setPWM(5, 0, pulseWidth(50));
delay(600);
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(5, 0, pulseWidth(105));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(2000);
}
else
{
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(4, 0, pulseWidth(30));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(900);
pwm.setPWM(0, 0, pulseWidth(38));
delay(1000);
pwm.setPWM(1, 0, pulseWidth(75));
pwm.setPWM(2, 0, pulseWidth(130));
delay(1500);
pwm.setPWM(4, 0, pulseWidth(81));
delay(1500);
pwm.setPWM(3, 0, pulseWidth(40));
delay(900);
pwm.setPWM(5, 0, pulseWidth(50));
delay(600);
pwm.setPWM(3, 0, pulseWidth(80));
delay(500);
pwm.setPWM(5, 0, pulseWidth(105));
delay(500);
pwm.setPWM(2, 0, pulseWidth(150));
pwm.setPWM(1, 0, pulseWidth(110));
delay(2000);
}
}
}