msp430-programlama-notlari-uygulamalar-bilgiler - 320Volt
msp430-programlama-notlari-uygulamalar-bilgiler - 320Volt
msp430-programlama-notlari-uygulamalar-bilgiler - 320Volt
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
BÖLÜM 8 – MSP430 I2C MODÜLÜ<br />
I²C (Inter-Integrated Circuit), Philips firması tarafından geliştirilmiş bir sistemdir. Ve bu yapıyı<br />
anakartlarda, gömülü sistemlerde ve cep telefonlarında kullanmıştır. 1990′ların ortasından bu<br />
yana Siemens, NEC, Motorola gibi birçok farklı firma I2C standardı ile tam uyumlu ürünler<br />
piyasaya sürmüşlerdir.<br />
Şekil 69 – Master Ve Slave Cihazlarının I2C Hattına Bağlanması<br />
USI modülünde I2C donanımını çalıştırabilmek için USII2C = 1, USICKPL = 1, ve USICKPH = 0<br />
yapılmalıdır. Bu birim kullanıldığında USI Shift Registeri 8 bit olarak kullanılacağından dolayı<br />
USI16B biti 0 olmalıdır. Bu sebeple Shift Register’a erişim USILSB üzerinden olmaktadır. Data<br />
ve Clock çıkışlarını pinlerden alabilmek için ise USIPE6 (SCL) ve USIPE7(SDA) bitleri set<br />
edilmelidir.<br />
I2C donanımında clock(SCL) sadece Master (Usta) tarafından üretilir ve Slave (Köle) cihazlara<br />
master cihazın ürettiği bu clock hattı paralel olarak bağlanır. Normalde donanım sadece clock<br />
sinyali üretmekte ve kaydırmalı gönderme yapmaktadır. Bir master cihazın birden çok slave<br />
cihazla haberleşmesi ve ACK / NACK durumları için yazılımsal çözümler uygulanmaktadır.<br />
Bazı gelişmiş I2C donanımları bu yazılımsal kısımları kendi donanımı içerisinde barındırarak<br />
daha efektif çalışabilmektedirler. Ayrıca bu şekilde yazılımcı üzerindeki yük de bir nebze<br />
hafiflemektedir. Yazılımsal olarak yapılması gereken en önemli kısım ise: her slave cihaz için bir<br />
adres belirlemek ve veri gönderilmeden önce aynı verir gönderir gibi belirlenen slave<br />
adresi göndermektir. Bu şekilde slave cihazlar hattaki bu veriyi dinleyip, eğer adres olarak<br />
gönderilen bu veri kendi adresleri ile uyuşuyorsa karşı tarafa onay(ACK) biti göndererek<br />
haberleşmenin başlamasını sağlarlar. I2C hattına bağlı olan slave cihazlar için tanımlı olan bu<br />
adres uzunluğu maksimum 7 bittir ve bir hatta aynı anda maksimum 127 cihaz bağlanabilir.<br />
8.1-) I2C Master Modu<br />
I2C birimini Master modunda kullanabilmek için USIMST = 1 yapılmalıdır. USIIFG = 0 olduğu<br />
sürece üretilen clock palsleri SCL pinine aktarılmaktadır. Eğer USIIFG = 1 ise yani kesme<br />
bayrağı temizlenmemişse clock plasleri SCL pinine aktarılamayacağından dolayı haberleşme<br />
başarısız olacaktır.<br />
MSP430 Programlama Sayfa 75