![PCF8591 (i2c analoog -I/O Expander) Kiire lihtne kasutamine: 9 sammu PCF8591 (i2c analoog -I/O Expander) Kiire lihtne kasutamine: 9 sammu](https://i.howwhatproduce.com/images/006/image-15622-3-j.webp)
Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-23 14:40
![PCF8591 (i2c analoog -I/O Expander) Kiire lihtne kasutamine PCF8591 (i2c analoog -I/O Expander) Kiire lihtne kasutamine](https://i.howwhatproduce.com/images/006/image-15622-4-j.webp)
Raamatukogu i2c pcf8591 IC kasutamiseks koos arduino ja esp8266 -ga.
See IC võib juhtida (kuni 4) analoogsisendit ja/või 1 analoogväljundit, näiteks mõõta pinget, lugeda termistori väärtust või tuhmuda.
Oskab lugeda analoogväärtust ja kirjutada analoogväärtust ainult 2 juhtmega (ideaalne ESP-01 jaoks).
Püüan lihtsustada selle IC kasutamist minimaalse toimingute komplektiga.
Värskendatud versiooni leiate minu saidilt
Samm: kuidas I2c töötab
![Kuidas I2c töötab Kuidas I2c töötab](https://i.howwhatproduce.com/images/006/image-15622-5-j.webp)
I2C töötab kahe juhtmega, SDA (andmeside) ja SCL (kellajoon).
Mõlemad liinid on avatud äravooluga, kuid takistitega üles tõmmatud.
Tavaliselt on liinil üks peremees ja üks või mitu orja, kuigi neid võib olla mitu, kuid sellest räägime hiljem.
Nii meistrid kui ka orjad saavad andmeid edastada või vastu võtta, seetõttu võib seade olla ühes neljast olekust: põhisaatmine, ülemvastuvõtmine, alamsaade, alamvastuvõtt.
2. samm:
Minu raamatukogu leiate siit.
Alla laadida.
Klõpsake paremas ülanurgas nuppu DOWNLOADS (Laadi alla), nimetage tihendamata kaust ümber PCF8591.
Kontrollige, kas kaust PCF8591 sisaldab PCF8591.cpp ja PCF8591.h.
Asetage raamatukogu kaust PCF8591 oma / libraries / kausta.
Teil võib tekkida vajadus luua raamatukogude alamkaust, kui see on teie esimene kogu.
Taaskäivitage IDE.
3. samm: kasutamine
Konstruktor: peate sisestama i2c aadressi (aadressi kontrollimiseks kasutage seda juhendit I2cScanner)
PCF8591 (aadress uint8_t);
esp8266 jaoks, kui soovite määrata SDA ja SCL -pin, kasutage seda:
PCF8591 (aadress uint8_t, uint8_t sda, uint8_t scl);
Samm: lugege väärtust
![Lugege väärtust Lugege väärtust](https://i.howwhatproduce.com/images/006/image-15622-6-j.webp)
IC -l, nagu pildil näha, on 4 analoogsisendit ja 1 analoogväljund.
Nii et saate lugeda kõiki analoogsisendeid ühes edastuses (väärtus on 0 kuni 255):
PCF8591:: AnalogInput ai = pcf8591.analogReadAll ();
Jadajälg (ai.ain0); Serial.print (" -"); Seeriaprint (ai.ain1); Serial.print (" -"); Seeriatrükk (ai.ain2); Serial.print (" -"); Serial.println (ai.ain3);
kui soovite lugeda ühte analoogsisendit või kanalit:
int ana = pcf8591.analogRead (AIN0); // loe analoogi 0
Samm: lugege kanalit Vale
![Lugege Vale kanalilt Lugege Vale kanalilt](https://i.howwhatproduce.com/images/006/image-15622-7-j.webp)
Sellel IC -l on mitut tüüpi lugemine ja saate kasutada analoogsisendit või analoogkanalit (kui kasutate ühe lugemisega analoogsisendit ja kanal on piltidel).
Näiteks kanali 0 väärtuse lugemiseks kahes diferentsiaalsisendis peate tegema järgmist.
int ana = pcf8591.analogRead (CHANNEL0, TWO_DIFFERENTIAL_INPUT); // loe analoogi 0
Samm: kirjutage väärtus
Kui soovite kirjutada analoogväärtuse, peate seda tegema (väärtus on 0 kuni 255):
pcf8591.analogWrite (128);
Samm: lisafunktsioonid
Lisavõimalus on kirjutamispinge lugemine: Pinge arvutamiseks peate edastama mõne parameetri:
- mikrokontrollerReferenceVoltage: saada pinge mikrokontrolleri pingest (ainult AVR nr esp8266 esp 3.3v jaoks fikseeritud)
- referenceVoltage: kui mikrokontrollerReferenceVoltage false võtab selle väärtuse Käsk on:
tühine pingeWrite (ujuki väärtus, bool mikrokontrollerReferenceVoltage = true, float referenceVoltage = 5,0);
ujukpingeRead (uint8_t analoogPin, bool mikrokontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
Näide on järgmine:
pcf8591.voltageWrite (2.7); // 2.7 volti väljund
viivitus (3000);
float ana0V = pcf8591.voltageRead (AIN0); // Loe pinget analoogist 0
Serial.println (ana0V);
Samm 8: Ühendusskeemi näited
![Ühendusskeemi näited Ühendusskeemi näited](https://i.howwhatproduce.com/images/006/image-15622-8-j.webp)
9. samm: aitäh
i2c projektisari (kollektsioon):
- Temperatuuri niiskuse andur
- Analooglaiendaja
- Digitaalne laiendaja
- LCD ekraan
Soovitan:
DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: 14 sammu
![DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: 14 sammu DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: 14 sammu](https://i.howwhatproduce.com/images/001/image-1509-29-j.webp)
DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: värskendusi ja muud leiate minu saidilt https://www.mischianti.org/2019/01/01/dht12-library-en/. Mulle meeldib see andur saab kasutada kahe juhtmega (i2c protokoll), kuid mulle meeldib odav. See on Arduino ja esp8266 raamatukogu DHT12 seeria jaoks
Raspberry Pi GPIO vooluringid: LDR -i analooganduri kasutamine ilma ADC -ta (analoog -digitaalmuundur): 4 sammu
![Raspberry Pi GPIO vooluringid: LDR -i analooganduri kasutamine ilma ADC -ta (analoog -digitaalmuundur): 4 sammu Raspberry Pi GPIO vooluringid: LDR -i analooganduri kasutamine ilma ADC -ta (analoog -digitaalmuundur): 4 sammu](https://i.howwhatproduce.com/images/002/image-5254-45-j.webp)
Raspberry Pi GPIO vooluringid: LDR -analooganduri kasutamine ilma ADC -ta (analoog -digitaalne muundur) või Madal. Aga mis siis, kui soovite oma Raspberry Pi kasutada analooganduriga? Kui tahame kasutada
(Lihtne) lihtne viis analoog-/pwm -heli hankimiseks Raspberry PI Zero -st ja ka Crt -teleriga ühendamiseks: 4 sammu
![(Lihtne) lihtne viis analoog-/pwm -heli hankimiseks Raspberry PI Zero -st ja ka Crt -teleriga ühendamiseks: 4 sammu (Lihtne) lihtne viis analoog-/pwm -heli hankimiseks Raspberry PI Zero -st ja ka Crt -teleriga ühendamiseks: 4 sammu](https://i.howwhatproduce.com/images/002/image-3483-66-j.webp)
(Lihtne) lihtne viis analoog-/pwm -heli hankimiseks Raspberry PI Zero -st ja ka Crt -teleriga ühendamiseks: siin olen kasutanud lihtsamat meetodit heli edastamiseks televiisorisse koos kompilsiivvideoga
DIY MusiLED, muusika sünkroonitud LED-id ühe klõpsuga Windowsi ja Linuxi rakendusega (32-bitine ja 64-bitine). Lihtne taastada, lihtne kasutada, lihtne teisaldada: 3 sammu
![DIY MusiLED, muusika sünkroonitud LED-id ühe klõpsuga Windowsi ja Linuxi rakendusega (32-bitine ja 64-bitine). Lihtne taastada, lihtne kasutada, lihtne teisaldada: 3 sammu DIY MusiLED, muusika sünkroonitud LED-id ühe klõpsuga Windowsi ja Linuxi rakendusega (32-bitine ja 64-bitine). Lihtne taastada, lihtne kasutada, lihtne teisaldada: 3 sammu](https://i.howwhatproduce.com/images/002/image-5944-30-j.webp)
DIY MusiLED, muusika sünkroonitud LED-id ühe klõpsuga Windowsi ja Linuxi rakendusega (32-bitine ja 64-bitine). Lihtne taastada, lihtne kasutada, lihtne teisaldada .: See projekt aitab teil ühendada 18 LED-i (6 punast + 6 sinist + 6 kollast) oma Arduino plaadiga ja analüüsida arvuti helikaardi reaalajasignaale ning edastada need valgusdioodid, mis neid löögiefektide järgi süttivad (Snare, High Hat, Kick)
Kiire, kiire, odav, hea väljanägemisega LED -ruumi valgustus (kõigile): 5 sammu (piltidega)
![Kiire, kiire, odav, hea väljanägemisega LED -ruumi valgustus (kõigile): 5 sammu (piltidega) Kiire, kiire, odav, hea väljanägemisega LED -ruumi valgustus (kõigile): 5 sammu (piltidega)](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10968772-fast-quick-cheap-good-looking-led-room-lighting-for-anyone-5-steps-with-pictures-j.webp)
Kiire, kiire, odav, hea väljanägemisega LED-ruumi valgustus (kõigile): Tere tulemast kõigile :-) See on minu esimene juhendatav, nii et kommentaarid on teretulnud :-) Loodan teile näidata, kuidas teha kiire LED-valgustus PISIKE kott. Mida vajate: kaabelLED -id Takistid (510Ohm 12V jaoks) StapelsLotis