Sadržaj:
- Korak 1: Kako I2c radi
- Korak 2:
- Korak 3: Upotreba
- Korak 4: Pročitajte vrijednost
- Korak 5: Pročitajte Vale s kanala
- Korak 6: Zapišite vrijednost
- Korak 7: Dodatne funkcije
- Korak 8: Primjeri dijagrama povezivanja
- Korak 9: Hvala
Video: PCF8591 (i2c Analog I/O Expander) Brzo i jednostavno korištenje: 9 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Biblioteka će koristiti i2c pcf8591 IC sa arduinom i esp8266.
Ovaj IC može upravljati (do 4) analognim ulazom i/ili 1 analognim izlazom, poput mjernog napona, očitavati vrijednost termistora ili gasiti LED diodu.
Može čitati analogne vrijednosti i pisati analogne vrijednosti sa samo 2 žice (savršeno za ESP-01).
Pokušavam pojednostaviti upotrebu ovog IC -a, uz minimalan skup operacija.
Ažuriranu verziju možete pronaći na mojoj web stranici
Korak 1: Kako I2c radi
I2C radi sa svoje dvije žice, SDA (podatkovna linija) i SCL (linija sata).
Obje ove linije su otvorene, ali su povučene otpornicima.
Obično je na liniji jedan master i jedan ili više slave -ova, iako može postojati i više master -a, ali o tome ćemo kasnije.
I nadređeni i podređeni mogu prenositi ili primati podatke, stoga uređaj može biti u jednom od ova četiri stanja: glavni prijenos, glavni prijem, slave prijenos, slave prijem.
Korak 2:
Moju biblioteku možete pronaći ovdje.
Preuzimanje.
Pritisnite dugme DOWNLOADS u gornjem desnom kutu, preimenujte nekomprimiranu mapu PCF8591.
Proverite da li fascikla PCF8591 sadrži PCF8591.cpp i PCF8591.h.
Postavite fasciklu biblioteke PCF8591 u vašu / biblioteku / fasciklu.
Možda ćete morati stvoriti podmapu biblioteka ako je to vaša prva biblioteka.
Ponovo pokrenite IDE.
Korak 3: Upotreba
Konstruktor: morate unijeti adresu i2c (za provjeru adrese koristite ovaj vodič I2cScanner)
PCF8591 (uint8_t adresa);
za esp8266 ako želite navesti SDA e SCL pin koristite ovo:
PCF8591 (uint8_t adresa, uint8_t sda, uint8_t scl);
Korak 4: Pročitajte vrijednost
IC kao što vidite na slici ima 4 analogna ulaza i 1 analogni izlaz.
Dakle, za čitanje svih analognih ulaza u jednom prijenosu možete učiniti (vrijednost je od 0 do 255):
PCF8591:: AnalogInput ai = pcf8591.analogReadAll ();
Serial.print (ai.ain0); Serial.print (" -"); Serial.print (ai.ain1); Serial.print (" -"); Serial.print (ai.ain2); Serial.print (" -"); Serial.println (ai.ain3);
ako želite pročitati jedan analogni ulaz ili kanal:
int ana = pcf8591.analogRead (AIN0); // čita analogno 0
Korak 5: Pročitajte Vale s kanala
Ovaj IC ima više vrsta čitanja i možete koristiti analogni ulaz ili analogni kanal (kada koristite jedno čitanje, analogni ulaz i kanal su na slikama).
Na primjer, da biste pročitali vrijednost kanala 0 u dva diferencijalna ulaza morate učiniti:
int ana = pcf8591.analogRead (CHANNEL0, TWO_DIFFERENTIAL_INPUT); // čita analogno 0
Korak 6: Zapišite vrijednost
Ako želite napisati analognu vrijednost, morate učiniti (vrijednost je od 0 do 255):
pcf8591.analogWrite (128);
Korak 7: Dodatne funkcije
Dodatna mogućnost je čitanje napona za upis: Za izračun napona morate proći neki parametar:
- mikrokontrolerReferenceVoltage: dobijte napon iz napona mikrokontrolera (samo AVR bez esp8266 za esp 3.3v fiksno)
- referenceVoltage: if microcontrollerReferenceVoltage false uzeti ovu vrijednost Naredba je:
void voltageWrite (float vrijednost, bool mikrokontrolerReferenceVoltage = true, float referenceVoltage = 5.0);
float voltageRead (uint8_t analogPin, bool mikrokontrolerReferenceVoltage = true, float referenceVoltage = 5.0);
Primjeri su:
pcf8591.voltageWrite (2.7); // 2.7V Volti izlaz
kašnjenje (3000);
plovak ana0V = pcf8591.voltageRead (AIN0); // Očitavanje napona sa analognog 0
Serial.println (ana0V);
Korak 8: Primjeri dijagrama povezivanja
Korak 9: Hvala
serija projekata i2c (zbirka):
- Senzor temperature vlage
- Analogni ekspander
- Digitalni ekspander
- LCD displej
Preporučuje se:
Otto DIY Robot Walking - Brzo i jednostavno uputstvo: 7 koraka
Otto DIY Robot Walking - Brzo i jednostavno za napraviti Uputstvo: U ovom vodiču ćemo naučiti kako jednostavno programirati Otto DIY robota za hodanje. Pogledajte demonstracijski video
DHT12 (senzor jeftine vlažnosti i temperature i2c), brzo i jednostavno korištenje: 14 koraka
DHT12 (i2c jeftin senzor vlažnosti i temperature), brzo i jednostavno korištenje: ažuriranje i ostalo možete pronaći na mojoj web stranici https://www.mischianti.org/2019/01/01/dht12-library-en/.Volim senzor koji može se koristiti s 2 žice (i2c protokol), ali volim jeftinu. Ovo je Arduino i esp8266 biblioteka za DHT12 seriju o
Neobična prilagođena kutija/kućište (brzo, jednostavno, modularno, jeftino): 7 koraka
Neobična prilagođena kutija/kućište (brzo, jednostavno, modularno, jeftino): Svrha ovog uputstva je da vam pokaže kako napraviti jeftinu, prilagođenu, modularnu kutiju/kućište. Pokazat ću vam kako to učiniti s ograničenim alati i budžet. Ovo su moje prve instrukcije (takođe engleski nije moj prvi jezik), pa vas molim
Echo Dot vješalica, jednostavno, brzo i jeftino!: 7 koraka
Vješalica za odjeknute tačke, jednostavno, brzo i jeftino !: Autor mrcisaleaffanObjavljeno 26. jula 2018.Ako vam se sviđa ovaj Instructable, glasajte za njega u " Kreativna zloupotreba " Uvod: Echo Dot Hanger, jednostavno, brzo i jeftinoOvog prošlog Božića dobio sam Alexa Echo pametni zvučnik. Sinc
Brzo, brzo, jeftino, lijepo izgleda LED osvjetljenje sobe (za svakoga): 5 koraka (sa slikama)
Brzo, brzo, jeftino, lijepo izgledajući LED osvjetljenje sobe (za svakoga): Dobro došli svima :-) Ovo je moje prvo uputstvo pa su komentari dobrodošli :-) Ono što se nadam da ću vam pokazati je kako napraviti brzo LED osvjetljenje koje je uključeno TINY buget.Šta vam je potrebno: KabloviLED -oviOtpornici (510Ohms za 12V) SpajaliceLeglanjeLiječi i drugi osnovni