Bu dersimizde projelerimizde sıkça kullandığımız SPI haberleşme protokolünü işleyeceğiz. SPI, Motorola firması tarafından geliştirilmiş bir senkron seri haberleşme protokolüdür. SPI (Serial Peripheral Interface), Arduino'nun desteklediği senkron seri haberleşme türlerinden biridir. Özellik ve kullanım olarak I2C'ye benzer. Bir Arduino'nun diğer Arduino veya sensörlerle kısa mesafede haberleşmesini sağlar. SPI protokolünde de I2C'de olduğu gibi bir adet Master cihaz bulunur. Bu cihaz hatta bağlı çevresel cihazları kontrol eder.

 

Veri iletimi çift yönlü olarak sağlanmaktadır. Veriler byte’lar halinde gönderilir / alınır. Verilerin gönderilmesi ve alınması clock sinyali ile senkronize bir şekilde gerçekleşir.

SPI haberleşmede aygıtlar birbirleriyle master – slave ilişkisi içerisinde haberleşirler. Haberleşme master’ın kontrolünde gerçekleşir. Master aygıt haberleşme yapacağı aygıtı seçer ve ikisi arasındaki haberleşmeyi başlatır.

SPI, 4 sinyal hattından oluşur. Bunlar:

    MISO / SDO – Master Input Slave Output / Serial Data Out
    MOSI / SDI – Master Output Slave Input / Serial Data In
    SCK (SCLK) – Serial Clock
    SS / CS – Slave Select Pin / Chip Select



Bağlantı şekli aşağıdaki gibidir.


MISO ve MOSI hatlarından da anlaşıldığı gibi SPI protokolünde I2C'den farklı olarak veri hatları tek yönlüdür. Ayrıca çevresel cihazların (slave) adreslerinin olmasına gerek yoktur. Her çevresel cihazın seçim ayağı bulunur. Bu ayağa, SS (Slave Select) denir. Bu hattın sayısı kullanılan çevresel cihazların sayısı kadardır. Her cihaz için master cihazından ayrı SS hattı çıkar. SS hattı LOW (0 volt) düzeyinde olan çevresel cihaz, master cihaz ile iletişime başlar.

Resimde de görüleceği üzere, Master cihazdan çevresel cihaz sayısı kadar SS çıkışı bulunur. Master cihaz iletişime geçmek istediği çevresel cihazın SS pinini LOW (0 Volt) düzeyine çeker.

SPI, I2C gibi iletişim tekniklerine göre daha hızlıdır. 2 den fazla cihaz için bile olsa adresleme gibi işlemler gerektirmez (I2C’ den ayıran özellik).

Aynı kablo üzerinden farklı cihazlara farklı verileri aktarabilir (RS-232 den ayıran özellik).

SPI pinleri Arduino türüne göre değişiklik gösterir. En çok kullanılan kartlar UNO ve MEGA olduğu için bağlantı pinlerini aşağıda paylaşıyorum.




Ayrıca arduino ide ile gelen SPI kütüphanesine de göz atmak gerekir. Bu konuyu da bir sonraki derste işleyeceğiz. Görüşmek üzere..





Yorum ekle


Güvenlik kodu
Yenile

SON YORUMLANANLAR

GELEN GİDEN SAYISI

411536
Bugün
Dün
Bu hafta
Geçen hafta
Bu Ay
Geçen Ay
Tümü
238
1236
7971
391235
24334
33733
411536

Your IP: 93.89.232.254
2017-12-15 10:19