Innholdsfortegnelse:
Video: Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
PCA9536 er en 8-pinners CMOS-enhet som gir 4 bits parallell inngang/utgang (GPIO) generell bruk for I2C-buss/SMBus-applikasjoner. Den består av et 4-bits konfigurasjonsregister for å tjene formålet med input eller output-valg, 4-bit Input Port-register, 4-bit Output Port-register og et 4-bits Polarity Inversion-register aktivt HIGH eller aktiv LOW-operasjon. Her er demonstrasjonen med bringebær pi ved hjelp av python -kode.
Trinn 1: Hva du trenger..
1. Bringebær Pi
2. PCA9536
3. I²C -kabel
4. I²C Shield for Raspberry Pi
5. Ethernet -kabel
Trinn 2: Tilkoblinger:
Ta et I2C -skjold for bringebærpi og skyv det forsiktig over gpio -pinnene til bringebærpi.
Koble deretter den ene enden av I2C -kabelen til PCA9536 -sensoren og den andre enden til I2C -skjoldet.
Koble også Ethernet -kabelen til pi eller du kan bruke en WiFi -modul.
Tilkoblinger er vist på bildet ovenfor.
Trinn 3: Kode:
Python-koden for PCA9536 kan lastes ned fra vårt github-depot- DCUBE Store.
Her er lenken
Vi har brukt SMBus bibliotek for python -kode, trinnene for å installere SMBus på bringebær pi er beskrevet her:
pypi.python.org/pypi/smbus-cffi/0.5.1
Du kan også kopiere koden herfra, den er gitt som følger:
# Distribuert med en fri viljelisens.
# Bruk den slik du vil, profitt eller gratis, forutsatt at den passer inn i lisensene til de tilhørende verkene.
# PCA9536
# Denne koden er designet for å fungere med PCA9536_I2CIO I2C Mini Module #
importer smbus
importtid
# Få I2C -buss
buss = smbus. SMBus (1)
# PCA9536 adresse, 0x41 (65)
# Velg konfigurasjonsregister, 0x03 (03)
# 0xFF (255) Alle pinner konfigurert som innganger
bus.write_byte_data (0x41, 0x03, 0xFF)
# Utgang til skjermen
print "All Pins State is HIGH"
time.sleep (0,5)
# PCA9536 adresse, 0x41 (65)
# Les data tilbake fra 0x00 (00), 1 byte
data = bus.read_byte_data (0x41, 0x00)
# Konverter dataene til 4-bits
data = (data & 0x0F)
for i i området (0, 4):
hvis (data & (2 ** i)) == 0:
print "I/O Pin %d State is LOW" %i
annet:
print "I/O Pin %d State is HIGH" %i
time.sleep (0,5)
Trinn 4: Søknader:
PCA9536 kan brukes som en I/O -ekspander. Det gir en enkel løsning når det er nødvendig med ytterligere input/output. Vanligvis brukes den i systemer som krever utvidelse for ACPI -strømbrytere, sensorer, trykknapper, lysdioder, vifter, etc.
Anbefalt:
PCF8591 (i2c Analog I/O Expander) Rask enkel bruk: 9 trinn
PCF8591 (i2c Analog I/O Expander) Rask enkel bruk: Bibliotek for bruk av i2c pcf8591 IC med arduino og esp8266. Denne IC kan kontrollere (inntil 4) analog inngang og/eller 1 analog utgang som målespenning, lese termistorverdi eller fade en lysdiode. Kan lese analog verdi og skrive analog verdi med bare 2 ledninger (perfekt
IO Expander for ESP32, ESP8266 og Arduino: 24 trinn
IO Expander for ESP32, ESP8266 og Arduino: Vil du utvide IO -ene til ESP32, ESP8266 eller Arduino? Og har du tenkt på muligheten for 16 nye GPIO -er som kan kontrolleres ved hjelp av I2C -bussen? Vel, i dag skal jeg introdusere deg for GPIO -ekspandereren MCP23016. Også jeg og r
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: 6 trinn
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: MCP23008 er en 8-bits I/O Expander med serielt grensesnitt og fungerer mellom 1,8 og 5,5 volt, så den er ideell for ESP8266, Arduino, Raspberry Pi, PIC Chips og mer. Hvis du har sett min andre Instructable på MCP23017, lurer du kanskje på
NODEMCU LUA ESP8266 Med MCP23017 16 Bit Port Expander IC: 6 trinn (med bilder)
NODEMCU LUA ESP8266 Med MCP23017 16 Bit Port Expander IC: MCP23017 er en relativt enkel IC å lage et kort for siden den har Port A og B på hver side av brikken og pinnene er i rekkefølge. På samme måte er I2C adressebussen alle sammen også. Det er 2 pinner på denne IC som ikke er brukt som den
WiFi Range Expander på Wireless Repeater Linksys WRE54G: 6 trinn
WiFi Range Expander på Wireless Repeater Linksys WRE54G: Problemdefinisjon Noen ganger er det eksisterende driftsområdet ikke nok, eller hvis det er hindringer på ruten mellom enheten og ruteren, kan operasjonsavstanden reduseres dramatisk. I dette tilfellet må du øke følsomheten