2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
PCA9536 je 8kolíkové zařízení CMOS, které poskytuje 4 bity rozšíření paralelního vstupu/výstupu (GPIO) pro obecné účely pro aplikace I2C-bus/SMBus. Skládá se ze 4bitového konfiguračního registru, který slouží k výběru vstupu nebo výstupu, ze 4bitového registru vstupních portů, ze 4bitového registru výstupních portů a ze 4bitového registru inverze polarity s aktivním VYSOKÝM nebo aktivním NÍZKÝM provozem. Zde je jeho ukázka s Raspberry Pi pomocí kódu Pythonu.
Krok 1: Co potřebujete..
1. Raspberry Pi
2. PCA9536
3. I²C kabel
4. I²C štít pro Raspberry Pi
5. Ethernetový kabel
Krok 2: Připojení:
Vezměte I2C štít pro malinový pi a jemně jej zatlačte přes gpio piny malinového pi.
Poté připojte jeden konec kabelu I2C k senzoru PCA9536 a druhý konec ke stínění I2C.
Připojte také ethernetový kabel k pí nebo můžete použít modul WiFi.
Připojení jsou znázorněna na obrázku výše.
Krok 3: Kód:
Pythonový kód pro PCA9536 lze stáhnout z našeho úložiště github- DCUBE Store.
Tady je odkaz
Pro kód pythonu jsme použili knihovnu SMBus, kroky k instalaci SMBus na Raspberry Pi jsou popsány zde:
pypi.python.org/pypi/smbus-cffi/0.5.1
Odtud můžete také zkopírovat kód, který je uveden následovně:
# Distribuováno s licencí svobodné vůle.
# Použijte jej jakýmkoli způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl.
# PCA9536
# Tento kód je navržen pro práci s mini modulem PCA9536_I2CIO I2C #
importovat smbus
čas importu
# Získejte autobus I2C
bus = smbus. SMBus (1)
# Adresa PCA9536, 0x41 (65)
# Vyberte konfigurační registr, 0x03 (03)
# 0xFF (255) Všechny piny konfigurovány jako vstupy
bus.write_byte_data (0x41, 0x03, 0xFF)
# Výstup na obrazovku
tisk "Všechny stavy pinů jsou VYSOKÉ"
time.sleep (0,5)
# Adresa PCA9536, 0x41 (65)
# Přečtěte data zpět z 0x00 (00), 1 byte
data = bus.read_byte_data (0x41, 0x00)
# Převeďte data na 4bitové
data = (data & 0x0F)
pro i v rozsahu (0, 4):
if (data & (2 ** i)) == 0:
tisk "I/O Pin %d State is LOW" %i
jinak:
tisk "I/O Pin %d Stav je VYSOKÝ" %i
time.sleep (0,5)
Krok 4: Aplikace:
PCA9536 lze použít jako expandér I/O. Poskytuje jednoduché řešení, když je vyžadován další vstup/výstup. Obvykle se používá v systémech, které vyžadují rozšíření napájecích spínačů ACPI, senzorů, tlačítek, LED, ventilátorů atd.