#include <Servo.h>
/*Nakul Verma, Student # 12345
First code to try and validate all the individual components connected to this
Arduino Uno. Component list is as follows:
Pushbutton circuits that generate a logic high are connected to digital pins:
2 - Button A (Red)
12 - Button B (Blue)
8 - Button C (Yellow)
7 - Button D (Green)
LEDS cicuits are on the following digital pins:
5 - Orange LED
6 - Blue LED
10 - Green LED
9 - Red LED
Servo control line is on digital pin 11
*/
Servo wiggly;
int var = 2;
int n = 1;
void NVdelay(unsigned long pause)
{
unsigned long temp = millis();
while (millis() - temp <= pause)
{
}
}
void isr() {
wiggly.write(5);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
}
void setup() {
// put your setup code here, to run once:
//designate the LED pins as OUTPUTS
pinMode(5,OUTPUT); //Orange LED
pinMode(6,OUTPUT); //Blue LED
pinMode(9, OUTPUT); //Red LED
pinMode(10, OUTPUT); //Green LED
//designate pushbutton pins as INPUTS
pinMode(2, INPUT); //Button A (Red Button)
pinMode(7, INPUT); //Button D (Yellow Button)
pinMode(8, INPUT); //Button C (Blue Button)
pinMode(12, INPUT); //Button B (Green Button)
//designate pin 11 as the servo PWM pin
wiggly.attach(11);
attachInterrupt(digitalPinToInterrupt(2),isr, RISING);
}
void loop() {
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
while(digitalRead(7) == HIGH)
{
n = random(1, 5);
if (n == 1)
{
digitalWrite(5,LOW);
NVdelay(1000);
digitalWrite(5,HIGH);
NVdelay(1000);
digitalWrite(5,LOW);
NVdelay(1000);
digitalWrite(5,HIGH);
}
if (n == 2)
{
digitalWrite(6,LOW);
NVdelay(1000);
digitalWrite(6,HIGH);
NVdelay(1000);
digitalWrite(6,LOW);
NVdelay(1000);
digitalWrite(6,HIGH);
}
if (n == 3)
{
digitalWrite(9,LOW);
NVdelay(1000);
digitalWrite(9,HIGH);
NVdelay(1000);
digitalWrite(9,LOW);
NVdelay(1000);
digitalWrite(9,HIGH);
}
if (n == 4)
{
digitalWrite(10,LOW);
NVdelay(1000);
digitalWrite(10,HIGH);
NVdelay(1000);
digitalWrite(10,LOW);
NVdelay(1000);
digitalWrite(10,HIGH);
}
}
// digitalWrite(5,HIGH);
// NVdelay(1000);
// digitalWrite(5,LOW);
// NVdelay(500);
// put your main code here, to run repeatedly:
//simple test 1: blink the orange LED
//start by turning off all the LEDs.
// digitalWrite(5,HIGH);
// digitalWrite(6,HIGH);
// digitalWrite(9,HIGH);
// digitalWrite(10,HIGH);
//test my orange/amber LED
/*digitalWrite(10,LOW);
delay(150);
digitalWrite(10,HIGH);
delay(200);*/
// wiggly.write(30);
// delay(200);
// wiggly.write(120);
// delay(300);
}