2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
PCA9536 on 8-kontaktiline CMOS-seade, mis pakub 4 bitti üldotstarbelist paralleelsisendit/-väljundit (GPIO) I2C-bussi/SMBusi rakenduste jaoks. See koosneb 4-bitisest konfiguratsiooniregistrist, mis teenib sisendi või väljundi valimist, 4-bitisest sisendporti registrist, 4-bitisest väljundpordi registrist ja 4-bitisest polaarsuse pöördregistrist, mis on aktiivne HIGH või aktiivne LOW. Siin on selle demonstratsioon vaarika pi abil, kasutades pythoni koodi.
Samm: mida vajate..
1. Vaarika Pi
2. PCA9536
3. I²C kaabel
4. I²C kilp Raspberry Pi jaoks
5. Etherneti kaabel
Samm: ühendused:
Võtke vaarika pi jaoks I2C -kilp ja lükake see õrnalt üle vaarika pi gpio -tihvtide.
Seejärel ühendage I2C kaabli üks ots PCA9536 anduriga ja teine ots I2C kilbiga.
Ühendage ka Etherneti kaabel pi -ga või võite kasutada WiFi -moodulit.
Ühendused on näidatud ülaltoodud pildil.
3. samm: kood:
PCA9536 püütoni koodi saab alla laadida meie githubi hoidlast DCUBE Store.
Siin on link
Oleme python -koodi jaoks kasutanud SMBusi teeki, SMBus -i vaarika pi -le installimise samme kirjeldatakse siin:
pypi.python.org/pypi/smbus-cffi/0.5.1
Siit saate koodi ka kopeerida, see on järgmine:
# Levitatud vabatahtliku litsentsiga.
# Kasutage seda mis tahes viisil, kasumit teenides või tasuta, tingimusel et see sobib sellega seotud teoste litsentsidega.
# PCA9536
# See kood on loodud töötama PCA9536_I2CIO I2C minimooduliga #
import smbus
impordi aeg
# Hankige I2C buss
buss = smbus. SMBus (1)
# PCA9536 aadress, 0x41 (65)
# Valige konfiguratsiooniregister, 0x03 (03)
# 0xFF (255) Kõik tihvtid on konfigureeritud sisenditena
bus.write_byte_data (0x41, 0x03, 0xFF)
# Väljund ekraanile
print "Kõik tihvtide olekud on HIGH"
aeg. uni (0,5)
# PCA9536 aadress, 0x41 (65)
# Lugege andmeid tagasi alates 0x00 (00), 1 bait
andmed = bus.read_byte_data (0x41, 0x00)
# Teisendage andmed 4-bitisteks
andmed = (andmed & 0x0F)
i jaoks vahemikus (0, 4):
kui (andmed & (2 ** i)) == 0:
print "I/O Pin %d olek on LOW" %i
muidu:
print "I/O Pin %d olek on HIGH" %i
aeg. uni (0,5)
4. samm: rakendused:
PCA9536 saab kasutada I/O laiendajana. See pakub lihtsat lahendust, kui on vaja täiendavat sisendit/väljundit. Tavaliselt kasutatakse seda süsteemides, mis vajavad laiendamist ACPI toitelülititele, anduritele, nuppudele, LED -idele, ventilaatoritele jne.