I2C Haberleşmesi Kullanılarak Sıcaklığı Lcd’de Yazdırma

İlk olarak ı2c modülünün ne olduğunu anlatarak başlayalım.
i2c Inter-Integrated Circuit ifadesinin kısaltması olup, iki tel arayüz olarak anılır. i2c protokolü philips firması tarafından bulunmuş olup, düşük hızlı çevre birimlerini birbirine bağlamak için kullanılır.Dijital sistemlerde kablolu seri haberleşme ile ilgili birçok standart vardır. SPI, I2C bunlara örnek olarak verilebilir.I2C protokolünde temel olarak iki hat vardır. Bunlar SCL ve SDA olup, SCL (SerialCLock) veri senkronizasyonu için kullanılan clock darbeleri hattı, SDA (SerialDAta) ise veri hattıdır.

Genel bir bilgi verdikten sonra projemiz de ne yapacağımızdan bahsedelim.Projemizin amacı i2c protokolünü kullanıp TC74 sensörüyle sıcaklığı Lcd ekrana yazdırmak.
Bununiçin ilk olarak aşağıdaki şemayı isisde çizmemiz gerekmektedir.

sicaklik

Kodlarımız da aşağıdaki şekildeki gibi olursa Lcd de Tc74 ile alınan sıcaklık değerini görebiliriz.

Kodlarımız şu şekildedir:

unsigned short temp;

sbit LCD_RS at Rb0_bit;
sbit LCD_EN at Rb1_bit;
sbit LCD_D7 at Rb7_bit;
sbit LCD_D6 at Rb6_bit;
sbit LCD_D5 at Rb5_bit;
sbit LCD_D4 at Rb4_bit;

sbit LCD_RS_Direction at TRISb0_bit;
sbit LCD_EN_Direction at TRISb1_bit;
sbit LCD_D7_Direction at TRISb7_bit;
sbit LCD_D6_Direction at TRISb6_bit;
sbit LCD_D5_Direction at TRISb5_bit;
sbit LCD_D4_Direction at TRISb4_bit;

void main() {
char temperature[6];
Lcd_Init();
Lcd_Cmd(_Lcd_Cursor_Off);

while(1){

I2C1_Init(10000);
I2C1_Start();
I2C1_Wr(0x92);
I2C1_Wr(0x00);
I2C1_Repeated_Start();
I2C1_Wr(0x93);
temp=I2C1_Rd(0);
shorttostr(temp,temperature);
I2C1_Stop();
Lcd_Out(1,2,”sicaklik”);
Lcd_Out(2,2,temperature);

delay_ms(10);
}
}

Reklamlar

3 thoughts on “I2C Haberleşmesi Kullanılarak Sıcaklığı Lcd’de Yazdırma

  1. Merhaba, örnek için teşekkürler. Ben burada birşeyi anlamadım, bu okuma yada yazma yapmak istenen cihazların adreslerini nerden biliyoruz biz? Mesela; I2C1_Wr(0x92), burada 92 hangi cihazın adresi ve nasıl öğreniyoruz bunu yardımcı olabilir misin. Teşekkürler..

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s