//Ultrasonic sensor pins
#define PIN_TRIG 12
#define PIN_ECHO 11
//Analog Stick pins
const int SW_PIN = 2;
const int X_PIN = A0;
const int Y_PIN = A1;
//led pins
const int led1 = 7;
const int rgbledr = 13;
const int rgbledg = 10;
const int rgbledb = 9;
void setup() {
//Ultrasonic sensor setup
Serial.begin(115200);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
//Analog Stick setup
pinMode(SW_PIN, INPUT);
digitalWrite(SW_PIN, HIGH);
pinMode(X_PIN, INPUT);
pinMode(Y_PIN, INPUT);
Serial.begin(9600);
//Led setup
pinMode(led1, OUTPUT);
pinMode(rgbledr, OUTPUT);
pinMode(rgbledg, OUTPUT);
pinMode(rgbledb, OUTPUT);
}
void loop() {
//Ultrasonic code
//Turns on an led when an object is closer than 100cm to the object
digitalWrite(PIN_TRIG, HIGH);
delay(10);
digitalWrite(PIN_TRIG, LOW);
int distance = pulseIn(PIN_ECHO, HIGH) / 58.4;
if(distance < 100) digitalWrite(led1, HIGH);
else digitalWrite(led1, LOW);
//Analog Stick
if(digitalRead(SW_PIN) == HIGH) digitalWrite(rgbledr, HIGH);
else digitalWrite(rgbledr, LOW);
int x = analogRead(X_PIN) / 4.1;
analogWrite(rgbledg, x);
int y = analogRead(Y_PIN) / 4.1;
analogWrite(rgbledb, y);
Serial.println();
}