Assignment 1
Write a program using Arduino to control LED (One or more ON/OFF).
int led1 = 2;
int led2 = 3;
void setup() {
pinMode(led1, OUTPUT;
pinMode(led2, OUTPUT);
}
void loop() {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
delay(2000);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(2000);
}
Assignment 2
Create a program that illuminates the green LED if the counter is less than 100, illuminates the
yellow LED if the counter is between 101 and 200 and illuminates the red LED if the counter is
greater than 200
Note: Print the counter value on the serial monitor.
int red = 2;
int green = 3;
int blue = 4;
int counter = 0;
void setup() {
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
Serial.begin(9600);
}
void loop() {
counter++;
Serial.println(counter);
if(counter < 100 && counter >= 0){
digitalWrite(red, HIGH);
digitalWrite(green, LOW);
digitalWrite(blue, LOW);
}
else if(counter>100 && counter <= 200){
digitalWrite(red, LOW);
digitalWrite(green, HIGH);
digitalWrite(blue, LOW);
}
else if(counter > 200 && counter <= 300){
digitalWrite(red, LOW);
digitalWrite(green, LOW);
digitalWrite(blue, HIGH);
}
else{
counter = 0;
}
delay(20);
}
Assignment 3
Create a program that illuminates the green light of the “RGB LED” if the counter is less than
100, illuminates the blue light if the counter is between 101 and 200 and illuminates the red light
if the counter is greater than 200
Note: Print the counter value on the serial monitor.
int red = 2;
int green = 3;
int blue = 4;
int counter = 0;
void setup() {
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
Serial.begin(9600);
}
void loop() {
counter++;
Serial.println(counter);
if (counter < 100) {
digitalWrite(green, HIGH);
digitalWrite(blue, LOW);
digitalWrite(red, LOW);
}
else if (counter >= 101 && counter <= 200) {
digitalWrite(green, LOW);
digitalWrite(blue, HIGH);
digitalWrite(red, LOW);
}
else if (counter > 200 && counter <= 300) {
digitalWrite(green, LOW);
digitalWrite(blue, LOW);
digitalWrite(red, HIGH);
}
else{
counter = 0;
}
delay(20);
}
Assignment 4
Create a program so that when the user enters ‘b’ the green LED blinks, ‘g’ the green LED is
illuminated, ‘y’ the yellow LED is illuminated and ‘r’ the red LED is illuminated
int green = 3;
int yellow = 4;
int red = 5;
char input;
void setup() {
pinMode(green, OUTPUT);
pinMode(yellow, OUTPUT);
pinMode(red, OUTPUT);
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
input = Serial.read();
if (input == 'b') {
for (int i = 0; i < 3; i++) {
digitalWrite(green, HIGH);
delay(300);
digitalWrite(green, LOW);
delay(300);
}
}
else if (input == 'g') {
digitalWrite(green, HIGH);
delay(5000);
digitalWrite(green, LOW);
}
else if (input == 'y') {
digitalWrite(yellow, HIGH);
delay(5000);
digitalWrite(yellow, LOW);
}
else if (input == 'r') {
digitalWrite(red, HIGH);
delay(5000);
digitalWrite(red, LOW);
}
else {
Serial.println("Invalid input. Use: b, g, y, or r.");
}
}
}
Assignment 5
Create a program so that when the user enters ‘b’ the blue light of the “RGB LED” is
illuminated, ‘g’ the green light is illuminated, ‘r’ the red light is illuminated.
int red = 2;
int green = 3;
int blue = 4;
char input;
void setup() {
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
input = Serial.read();
if (input == 'r') {
digitalWrite(red, HIGH);
delay(2000);
digitalWrite(red, LOW);
}
else if (input == 'g') {
digitalWrite(green, HIGH);
delay(2000);
digitalWrite(green, LOW);
}
else if (input == 'b') {
digitalWrite(blue, HIGH);
delay(2000);
digitalWrite(blue, LOW);
}
else {
Serial.println("Invalid input. Use: r, g, or b.");
}
}
}
Assignment 6
Write a program to control the color of the “RGB LED” by turning 3 different potentiometers.
One will be read for the value of Red, one for the value of Green, and one for the value of Blue
int red = 9;
int green = 10;
int blue = 11;
int redPot = A0;
int greenPot = A1;
int bluePot = A2;
void setup() {
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
}
void loop() {
int redVal = analogRead(redPot);
int greenVal = analogRead(greenPot);
int blueVal = analogRead(bluePot);
redVal = map(redVal, 0, 1023, 0, 255);
greenVal = map(greenVal, 0, 1023, 0, 255);
blueVal = map(blueVal, 0, 1023, 0, 255);
analogWrite(red, redVal);
analogWrite(green, greenVal);
analogWrite(blue, blueVal);
delay(20);
}
Assignment 7
Write a program, read the temperature sensor and send the values to the serial monitor on the
computer.
Note: Print the temperature in Celsius and humidity on the serial monitor.
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup(){
Serial.begin(9600);
dht.begin();
}
void loop(){
float temp = dht.readTemperature();
float humidity = dht.readHumidity();
if(isnan(temp) || isnan(humidity)){
Serial.println("Error");
return;
}
Serial.println("Temperature is: ");
Serial.print(temp);
Serial.println("Humidity is: ");
Serial.print(humidity);
delay(1000);
}
Assignment 8
Write a program so it displays the temperature in Fahrenheit as well as the maximum and
minimum temperatures it has seen.
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
float maxi = -1000;
float mini = 1000;
void setup(){
Serial.begin(9600);
dht.begin();
}
void loop(){
float temp = dht.readTemperature(true);
float humidity = dht.readHumidity();
if(isnan(temp) || isnan(humidity)){
Serial.println("Error");
return;
}
if(temp > maxi)
maxi = temp;
if(temp < mini)
mini = temp;
Serial.println("Temperature is: ");
Serial.print(temp);
Serial.println("Maximum: ");
Serial.print(maxi);
Serial.println("Minimum: ");
Serial.print(mini);
delay(1000);
}
Assignment 9
Write a program so it displays the temperature in Celsius as well as the maximum and minimum
temperatures it has seen.
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
float maxi = -1000;
float mini = 1000;
void setup(){
Serial.begin(9600);
dht.begin();
}
void loop(){
float temp = dht.readTemperature(true);
float humidity = dht.readHumidity();
if(isnan(temp) || isnan(humidity)){
Serial.println("Error");
return;
}
if(temp > maxi)
maxi = temp;
if(temp < mini)
mini = temp;
Serial.println("Temperature is: ");
Serial.print(temp);
Serial.println("Maximum: ");
Serial.print(maxi);
Serial.println("Minimum: ");
Serial.print(mini);
delay(1000);
}
Assignment 10
Write a program to show the temperature and show a graph of the recent measurements.
Note: Print the temperature in Celsius on the serial monitor.
#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin();
}
void loop() {
float tempC = dht.readTemperature();
if (isnan(tempC)) {
Serial.println("Error!");
}
Serial.println(tempC);
delay(1000);
}
Assignment 11
Write an application to detect obstacle using IR sensor and notify user using a single LED.
Note: The LED should be ON only if the obstacle is detected.
int led = 9;
int ir = 2;
void setup() {
pinMode(led, OUTPUT);
pinMode(ir, INPUT);
}
void loop() {
int irVal = digitalRead(ir);
if (irVal == LOW) {
digitalWrite(led, HIGH);
}
else {
digitalWrite(led, LOW);
}
delay(200);
}
Assignment 12
Write an application to detect obstacle using IR sensor and notify user using one RGB LED.
Note: The Red light of RGB LED should be illuminated if the obstacle is detected otherwise
the green light should be illuminated continuously.
int redPin = 9;
int greenPin = 10;
int irPin = 2;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(irPin, INPUT);
}
void loop() {
int irVal = digitalRead(irPin);
if (irVal == LOW) {
digitalWrite(redPin, HIGH);
digitalWrite(greenPin, LOW);
} else {
digitalWrite(redPin, LOW);
digitalWrite(greenPin, HIGH);
}
delay(200);
}