7 Segment display
int disp_pin[7];
void define_segment_pins(int a, int b, int c, int d, int e, int f, int g)
{
disp_pin[0] = a;
disp_pin[1] = b;
disp_pin[2] = c;
disp_pin[3] = d;
disp_pin[4] = e;
disp_pin[5] = f;
disp_pin[6] = g;
}
void display_number(int num)
{
switch(num)
{
case 0:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 1:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 2:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], LOW);
break;
case 3:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 4:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 5:
digitalWrite(disp_pin[0], LOW);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 6:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], HIGH);
break;
case 7:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], HIGH);
break;
case 8:
digitalWrite(disp_pin[0], LOW);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], LOW);
break;
case 9:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], LOW);
break;
default:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], LOW);
break;
}
}
void setup() {
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
define_segment_pins(13,12,11,10,9,8,7); /* a-g segment pins to Arduino */
}
void loop() {
int i;
for(i = 9; i>=0; i--)
{
display_number(i);
delay(1000);
}
for(i = 0; i<=9; i++)
{
display_number(i);
delay(1000);
}
}
Buzzer(melody)
//#include "pitches.h";
#define NOTE_B0 31
#define NOTE_C1 33
#define NOTE_CS1 35
#define NOTE_D1 37
#define NOTE_DS1 39
#define NOTE_E1 41
#define NOTE_F1 44
#define NOTE_FS1 46
#define NOTE_G1 49
#define NOTE_GS1 52
#define NOTE_A1 55
#define NOTE_AS1 58
#define NOTE_B1 62
#define NOTE_C2 65
#define NOTE_CS2 69
#define NOTE_D2 73
#define NOTE_DS2 78
#define NOTE_E2 82
#define NOTE_F2 87
#define NOTE_FS2 93
#define NOTE_G2 98
#define NOTE_GS2 104
#define NOTE_A2 110
#define NOTE_AS2 117
#define NOTE_B2 123
#define NOTE_C3 131
#define NOTE_CS3 139
#define NOTE_D3 147
#define NOTE_DS3 156
#define NOTE_E3 165
#define NOTE_F3 175
#define NOTE_FS3 185
#define NOTE_G3 196
#define NOTE_GS3 208
#define NOTE_A3 220
#define NOTE_AS3 233
#define NOTE_B3 247
#define NOTE_C4 262
#define NOTE_CS4 277
#define NOTE_D4 294
#define NOTE_DS4 311
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_FS4 370
#define NOTE_G4 392
#define NOTE_GS4 415
#define NOTE_A4 440
#define NOTE_AS4 466
#define NOTE_B4 494
#define NOTE_C5 523
#define NOTE_CS5 554
#define NOTE_D5 587
#define NOTE_DS5 622
#define NOTE_E5 659
#define NOTE_F5 698
#define NOTE_FS5 740
#define NOTE_G5 784
#define NOTE_GS5 831
#define NOTE_A5 880
#define NOTE_AS5 932
#define NOTE_B5 988
#define NOTE_C6 1047
#define NOTE_CS6 1109
#define NOTE_D6 1175
#define NOTE_DS6 1245
#define NOTE_E6 1319
#define NOTE_F6 1397
#define NOTE_FS6 1480
#define NOTE_G6 1568
#define NOTE_GS6 1661
#define NOTE_A6 1760
#define NOTE_AS6 1865
#define NOTE_B6 1976
#define NOTE_C7 2093
#define NOTE_CS7 2217
#define NOTE_D7 2349
#define NOTE_DS7 2489
#define NOTE_E7 2637
#define NOTE_F7 2794
#define NOTE_FS7 2960
#define NOTE_G7 3136
#define NOTE_GS7 3322
#define NOTE_A7 3520
#define NOTE_AS7 3729
#define NOTE_B7 3951
#define NOTE_C8 4186
#define NOTE_CS8 4435
#define NOTE_D8 4699
#define NOTE_DS8 4978
int melody[] = {
NOTE_G5, NOTE_G5, NOTE_G5, NOTE_D5,
NOTE_E5, NOTE_E5, NOTE_D5,
NOTE_B5, NOTE_B5, NOTE_A5, NOTE_A5,
NOTE_G5, NOTE_D5,
NOTE_G5, NOTE_G5, NOTE_G5, NOTE_D5,
NOTE_E5, NOTE_E5, NOTE_D5,
NOTE_B5, NOTE_B5, NOTE_A5, NOTE_A5,
NOTE_G5
};
int noteDurations[] = {
4,4,4,4,
4,4,2,
4,4,4,4,
2,4,4,
4,4,4,4,
4,4,2,
4,4,4,4,
2};
void setup(){
for (int thisNote = 0; thisNote < 26; thisNote++) {
int noteDuration = 1000/noteDurations[thisNote];
tone(8, melody[thisNote],noteDuration);
int pauseBetweenNotes = noteDuration * 1.30;
delay(pauseBetweenNotes);
noTone(8);
}
void loop(){
}
DHT11
/*
This code records the temperature through testing the mV put out by the sensor.
It records in both Celcius and Fahrenheit.
It can only detect from -40 degrees C to 125 degrees C or -40 degrees F
to 257 degrees F
The Humidity is simulated by a potentiometer by being mapped into percentages
*/
#include<LiquidCrystal.h>
LiquidCrystal lcd(2,3,4,5,6,7);
const int analogIn = A0;
int humiditysensorOutput = 0;
// Defining Variables
int RawValue= 0;
double Voltage = 0;
double tempC = 0;
double tempF = 0;
void setup(){
//Serial.begin(9600);
lcd.begin(16, 2) ;
pinMode(A1, INPUT);
}
void loop(){
RawValue = analogRead(analogIn);
Voltage = (RawValue / 1023.0) * 5000; // 5000 to get millivots.
tempC = (Voltage-500) * 0.1; // 500 is the offset
tempF = (tempC * 1.8) + 32; // convert to F
//Serial.print("Raw Value = " );
//Serial.print(RawValue);
//Serial.print("\t milli volts = ");
//Serial.print(Voltage,0); //
lcd.setCursor(0,0);
lcd.print("Temp:");
lcd.print(tempC,1);
//Serial.print("\t Temperature in F = ");
//Serial.println(tempF,1);
humiditysensorOutput = analogRead(A1);
lcd.setCursor(0,1);
lcd.print("Humidity:"); // Printing out Humidity Percentage
lcd.print(map(humiditysensorOutput, 0, 1023, 10, 70));
lcd.println("%");
delay(5000); //iterate every 5 seconds
}
RGb LED
#include<LiquidCrystal.h>
LiquidCrystal lcd(2,3,4,5,6,7);
const int buttonPin = 12;
const int redPin = 11;
const int greenPin = 9;
const int bluePin = 10;
int counter = 0;
void setup() {
lcd.begin(16, 2) ;
pinMode(buttonPin, INPUT);
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop() {
int buttonState;
buttonState = digitalRead(buttonPin);
if (buttonState == LOW) {
counter++;
delay(150);
else if (counter == 0) {
digitalWrite(redPin, LOW);
digitalWrite(greenPin, LOW);
digitalWrite(bluePin, LOW);
lcd.setCursor(0,0);
lcd.print("RGB COLOR");
}
else if (counter == 1) {
digitalWrite(redPin, HIGH);
digitalWrite(greenPin, LOW);
digitalWrite(bluePin, LOW);
lcd.setCursor(0,0);
lcd.print("Color: RED");
}
else if (counter == 2) {
digitalWrite(redPin, LOW);
digitalWrite(greenPin, HIGH);
digitalWrite(bluePin, LOW);
lcd.setCursor(0,0);
lcd.print("Color:GREEN");
else if (counter == 3) {
digitalWrite(redPin, LOW);
digitalWrite(greenPin, LOW);
digitalWrite(bluePin, HIGH);
lcd.setCursor(0,0);
lcd.print("Color: BLUE");
else {
counter = 0;
lcd.clear();
}
}
LDR
int value=0;
void setup()
{
Serial.begin(9600);
pinMode(11, OUTPUT);
pinMode(A0, INPUT);
}
void loop()
value= analogRead(A0);
if(value<10)
{
digitalWrite(11, HIGH);
Serial.println("Light ON");
Serial.println(value);
}
else
{
digitalWrite(11, LOW);
Serial.println("Light OFF");
Serial.println(value);
}
}
#include <Keypad.h>
#include <LiquidCrystal.h>
#include <Servo.h>
#define Password_Length 5
Servo myservo;
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
int pos = 0;
char Data[Password_Length];
char Master[Password_Length] = "1234";
byte data_count = 0, master_count = 0;
bool Pass_is_good;
bool door = false;
char customKey;
int attempt = 0;
/*---preparing keypad---*/
const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {0, 1, 2, 3};
byte colPins[COLS] = {4, 5, 6, 7};
Keypad customKeypad( makeKeymap(keys),
rowPins, colPins, ROWS, COLS);
/*--- Main Action ---*/
void setup(){
myservo.attach(9, 2000, 2400);
ServoClose();
lcd.begin(16, 2);
}
void loop(){
if (door == true){
customKey = customKeypad.getKey();
if (customKey == '#') {
lcd.clear();
ServoClose();
door = false;
}
}
else
Open();
}
void clearData(){
while (data_count != 0){
Data[data_count--] = 0;
}
return;
}
void ServoClose(){
for (pos = 90; pos >= 0; pos -= 10) {
myservo.write(pos);
}
}
void ServoOpen(){
for (pos = 0; pos <= 90; pos += 10) {
myservo.write(pos);
}
}
void Open(){
lcd.setCursor(0, 0);
lcd.print("Enter Password");
customKey = customKeypad.getKey();
if (customKey){
Data[data_count] = customKey;
lcd.setCursor(data_count, 1);
lcd.print(Data[data_count]);
data_count++;
}
if (data_count == Password_Length - 1){
if (!strcmp(Data, Master)){
lcd.clear();
ServoOpen();
lcd.print("Unlock Sucessful");
door = true;
delay(5000);
ServoClose();
door = false;
}
else
{
lcd.clear();
lcd.print(" Wrong Password ");
door = false;
attempt+=1;
}
delay(1000);
lcd.clear();
clearData();
}
if(attempt == 3){
lcd.clear();
door = true;
lcd.print(" 3 attempts done ");
}
}
#define LED 9
#define pot A0
int potReading = 0;
void setup(){
Serial.begin(9600);
pinMode(LED, OUTPUT);
pinMode(pot, INPUT);
}
void loop(){
potReading = analogRead(pot);
potReading = map(potReading, 0,1023,0,255);
Serial.println(potReading);
analogWrite(LED, potReading);
#include <Servo.h>
Servo myServo;
int pos = 0;
void setup()
{
myServo.attach(9);
}
void loop()
{
for(pos = 1; pos<=179; pos+=1){
myServo.write(pos);
delay(15);
for(pos = 179; pos>1; pos-=1){
myServo.write(pos);
delay(15);