Mar 10

YAZAR:MURAT OFLEZER

İ2c Çipinin Kodu PCF8574T Olanlar İçin; LiquidCrystal_I2C lcd(0×27, 16, 2);
İ2c Çipinin Kodu PCF8574AT Olanlar İçin; LiquidCrystal_I2C lcd(0x3F, 16, 2);

8)İ2c Kullanarak Lcd’ye Yazı Yazma
İ2c genel olarak bir haberleşme protokolüdür. Biz i2c kullanmazsak yaklaşık olarak 16 pini arduino’ya bağlamak zorunda kalacağız ancak i2c sayesinde sadece 4 pinle bunu hallediyoruz.
İ2c pinleri ——- Arduino pinleri
VCC                           5 VOLT
GND                          GND
SCL                            SCL
SDA                           SDA

İlk olarak vazgeçilmez bir klasik olan “Hello World” diyelim.

Arduino Kodları;

 
#include <LiquidCrystal_I2C.h>
// lcd nin haberleşme adresini ve lcd ekranın 16 sütün ve 2 satır olduğunu ayarlıyoruz
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
// lcdyi başlatıyoruz
lcd.begin();

// arkaplan ışığını ayarlıyoruz
lcd.backlight();
lcd.print("Hello, world!");
}

void loop()
{
// şimdilik bir şey yazmayacağız
}

Fritzing Çizimi;

İ2C

 

9) İ2c Ve Ultrasonic Sensör İle Park Sensörü Yapmak
Şimdi de bu zamana kadar ki tüm projelerimiz birleştirelim ve park sensörümüzü yapalım.

Arduino Kodları;

 
#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

//gerekli lcd ayarlamarımızı yaptık.

const int trigger_pin=13; //sensorumuzun trigger pinini tanıttık

const int echo_pin=12;//sensorumuzun echo pinini tanıttık

const int buzzer=2;

const int mled=3;

const int yled=4;

const int sled=5;

const int kled=6;

int sure;

int mesafe;

void setup()

{

pinMode(kled,OUTPUT);

pinMode(sled,OUTPUT);

pinMode(yled,OUTPUT);

pinMode(mled,OUTPUT);

pinMode(buzzer,OUTPUT);

pinMode(trigger_pin,OUTPUT);

pinMode(echo_pin,INPUT);

Serial.begin(9600);

}

void loop()

{

digitalWrite(trigger_pin,LOW);

delayMicroseconds(2);

digitalWrite(trigger_pin,HIGH);

delayMicroseconds(10);

digitalWrite(trigger_pin, LOW);

sure=pulseIn(echo_pin,HIGH);

mesafe=(sure/2)/29.1;

lcd.begin();

lcd.backlight();

lcd.print("mesafe:");

lcd.print(mesafe);

Serial.println(mesafe);

if(mesafe<=10){

digitalWrite(kled,HIGH);

digitalWrite(buzzer,HIGH);

delay(20);

digitalWrite(kled,LOW);

digitalWrite(buzzer,LOW);

}

else if(mesafe<=25){

digitalWrite(sled,HIGH);

digitalWrite(buzzer,HIGH);

delay(50);

digitalWrite(sled,LOW);

digitalWrite(buzzer,LOW);

}

else if(mesafe<=50){

digitalWrite(yled,HIGH);

digitalWrite(buzzer,HIGH);

delay(100);

digitalWrite(yled,LOW);

digitalWrite(buzzer,LOW);

}

else

{

digitalWrite(mled,HIGH);

delay(1000);

digitalWrite(mled,LOW);

}

}

Fritzing Çizimi;

PARK SENSORU

 

10) Lm35 İle Termometre Yapımı

Lm35 ile sıcaklığı ölçüp bunu Lcd’ye aktaralım.

Arduino kodları;

 
#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);

int sicaklik=0;

void setup() {

Serial.begin(9600);

pinMode(A0,INPUT); // lm35 i a0 pinine bağlıyoruz

pinMode(10,OUTPUT); //ledimizi bağlıyoruz

}

void loop() {

Serial.print(sicaklik);

Serial.print("\n");

lcd.begin();

lcd.backlight();

sicaklik=analogRead(A0);

sicaklik=sicaklik*0.48828125;

lcd.print("sicaklik:");

lcd.print(sicaklik);

lcd.print("c");

delay(20);

if(sicaklik>=25){

digitalWrite(10,HIGH);

}

else{

digitalWrite(10,LOW);

}

}

Fritzing Çizimi;

TERMOMETRE

Yorum Yaz