İçindekiler:

Raspberry Pi - PCA9536 Giriş/Çıkış Genişletici Python Eğitimi: 4 Adım
Raspberry Pi - PCA9536 Giriş/Çıkış Genişletici Python Eğitimi: 4 Adım

Video: Raspberry Pi - PCA9536 Giriş/Çıkış Genişletici Python Eğitimi: 4 Adım

Video: Raspberry Pi - PCA9536 Giriş/Çıkış Genişletici Python Eğitimi: 4 Adım
Video: Raspberry Pi PCA9536 Temperature Sensor Java Tutorial 2024, Temmuz
Anonim
Image
Image

PCA9536, I2C-bus/SMBus uygulamaları için 4 bit Genel Amaçlı paralel Giriş/Çıkış (GPIO) genişletmesi sağlayan 8 pinli bir CMOS cihazıdır. Giriş veya çıkış seçimi amacına hizmet etmek için 4 bitlik bir Yapılandırma kaydından, 4 bitlik Giriş Bağlantı Noktası kaydından, 4 bitlik Çıkış Bağlantı Noktası kaydından ve 4 bitlik Polarite Ters Çevirme kaydından aktif YÜKSEK veya aktif DÜŞÜK işlemden oluşur. İşte python kodunu kullanarak ahududu pi ile gösterimi.

Adım 1: İhtiyacınız Olan Şey..!

Neye ihtiyacın var..!!
Neye ihtiyacın var..!!

1. Ahududu Pi

2. PCA9536

3. I²C Kablosu

4. Raspberry Pi için I²C Kalkanı

5. Ethernet Kablosu

Adım 2: Bağlantılar:

Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar

Ahududu pi için bir I2C kalkanı alın ve ahududu pi'nin gpio pimlerinin üzerine hafifçe itin.

Ardından I2C kablosunun bir ucunu PCA9536 sensörüne ve diğer ucunu I2C blendajına bağlayın.

Ayrıca Ethernet kablosunu pi'ye bağlayın veya bir WiFi modülü kullanabilirsiniz.

Bağlantılar yukarıdaki resimde gösterilmiştir.

Adım 3: Kod:

Kod
Kod

PCA9536 için python kodu, github depomuz olan DCUBE Store'dan indirilebilir.

Bağlantı burada

Python kodu için SMBus kütüphanesini kullandık, raspberry pi'ye SMBus kurma adımları burada açıklanmıştır:

pypi.python.org/pypi/smbus-cffi/0.5.1

Kodu buradan da kopyalayabilirsiniz, aşağıdaki şekilde verilmiştir:

# Özgür irade lisansıyla dağıtılır.

# İlgili eserlerinin lisanslarına uyması koşuluyla, istediğiniz şekilde, kârlı veya ücretsiz olarak kullanın.

# PCA9536

# Bu kod PCA9536_I2CIO I2C Mini Modülü ile çalışmak üzere tasarlanmıştır #

smbus'u içe aktar

ithalat zamanı

# I2C veri yolunu alın

veri yolu = smbus. SMBus(1)

# PCA9536 adresi, 0x41(65)

# Yapılandırma kaydını seçin, 0x03(03)

# 0xFF(255) Tüm pinler giriş olarak konfigüre edildi

bus.write_byte_data(0x41, 0x03, 0xFF)

# Ekrana çıktı

print "Tüm Pinlerin Durumu YÜKSEK"

zaman.uyku(0.5)

# PCA9536 adresi, 0x41(65)

# 0x00(00), 1 bayttan veriyi geri oku

veri = bus.read_byte_data(0x41, 0x00)

# Veriyi 4 bit'e dönüştürün

veri = (veri ve 0x0F)

(0, 4) aralığında i için:

if (veri & (2 ** i)) == 0:

print "G/Ç Pin %d Durum DÜŞÜK" %i

Başka:

print "G/Ç Pin %d Durum YÜKSEK" %i

zaman.uyku(0.5)

Adım 4: Uygulamalar:

PCA9536, bir G/Ç genişletici olarak kullanılabilir. Ek giriş/çıkış gerektiğinde basit bir çözüm sağlar. Genellikle ACPI güç anahtarları, sensörler, basmalı düğmeler, LED'ler, fanlar vb. için genişletme gerektiren sistemlerde kullanılır.

Önerilen: