2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
PCA9536-bu 8-pinli CMOS qurilmasi bo'lib, u I2C-bus/SMBus ilovalari uchun umumiy maqsadli parallel kirish/chiqish (GPIO) ning 4 bitini ta'minlaydi. U 4-bitli Konfiguratsiya registri, kirish yoki chiqishni tanlash maqsadiga xizmat qiladi, 4-bitli kirish porti registri, 4-bitli chiqish portining registri va 4-bitli qutbli teskari registrni faol HIGH yoki faol LOW operatsiyasidan iborat. Python kodi yordamida malina pi bilan uning namoyishi.
1 -qadam: Sizga nima kerak.. !
1. Raspberry Pi
2. PCA9536
3. I²C kabeli
4. Raspberry Pi uchun I²C qalqoni
5. Ethernet kabeli
2 -qadam: Ulanishlar:
Malinali pi uchun I2C qalqonini oling va uni malina pi gpio pimlariga sekin suring.
Keyin I2C kabelining bir uchini PCA9536 sensoriga, ikkinchi uchini esa I2C ekraniga ulang.
Ethernet kabelini pi -ga ulang yoki WiFi modulidan foydalanishingiz mumkin.
Ulanishlar yuqoridagi rasmda ko'rsatilgan.
3 -qadam: Kod:
PCA9536 uchun python kodini bizning github omboridan- DCUBE do'konidan yuklab olish mumkin.
Mana havola
Biz python kodi uchun SMBus kutubxonasidan foydalandik, malina pi ga SMBus o'rnatish bosqichlari bu erda tasvirlangan:
pypi.python.org/pypi/smbus-cffi/0.5.1
Siz bu erdan kodni nusxalashingiz mumkin, u quyidagicha berilgan:
# Ixtiyoriy litsenziya bilan tarqatilgan.
# Agar xohlasang, foyda yoki tekin, agar u tegishli ish litsenziyalariga mos keladigan bo'lsa, ishlat.
# PCA9536
# Bu kod PCA9536_I2CIO I2C Mini moduli bilan ishlash uchun mo'ljallangan #
smbus import qilish
import vaqti
# I2C avtobusini oling
avtobus = smbus. SMBus (1)
# PCA9536 manzili, 0x41 (65)
# Konfiguratsiya registrini tanlang, 0x03 (03)
# 0xFF (255) Barcha pinlar kirish sifatida sozlangan
bus.write_byte_data (0x41, 0x03, 0xFF)
# Ekranga chiqish
chop etish "Barcha pinlar holati yuqori"
vaqt uyqu (0,5)
# PCA9536 manzili, 0x41 (65)
# Ma'lumotni 0x00 (00), 1 baytdan qaytarib o'qing
ma'lumotlar = bus.read_byte_data (0x41, 0x00)
# Ma'lumotni 4 bitga aylantiring
ma'lumotlar = (ma'lumotlar va 0x0F)
i uchun (0, 4):
agar (ma'lumotlar va (2 ** i)) == 0:
chop etish "I/U pin %d holati past" %i
boshqa:
chop etish "I/U pin %d holati yuqori" %i
vaqt uyqu (0,5)
4 -qadam: Ilovalar:
PCA9536 kirish -chiqish kengaytiruvchisi sifatida ishlatilishi mumkin. Qo'shimcha kirish/chiqish zarur bo'lganda, u oddiy echimni beradi. Odatda u ACPI quvvat kalitlari, sensorlar, tugmalar, LEDlar, fanatlar va boshqalarni kengaytirishni talab qiladigan tizimlarda qo'llaniladi.