Բովանդակություն:
- Քայլ 1: Ինչպես է աշխատում I2c- ը
- Քայլ 2:
- Քայլ 3: Օգտագործում
- Քայլ 4: Կարդացեք արժեքը
- Քայլ 5: Կարդացեք Vale ալիքից
- Քայլ 6: Գրեք արժեք
- Քայլ 7: Լրացուցիչ հնարավորություններ
- Քայլ 8. Միացման դիագրամի օրինակներ
- Քայլ 9: Շնորհակալություն
Video: PCF8591 (i2c անալոգային մուտքի/ելքի ընդլայնիչ) Արագ օգտագործման հեշտություն ՝ 9 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Գրադարանը i2c pcf8591 IC- ն օգտագործելու համար arduino- ով և esp8266- ով:
Այս IC- ն կարող է վերահսկել (մինչև 4) անալոգային մուտքը և/կամ 1 անալոգային ելքը, ինչպես օրինակ չափել լարումը, կարդալ թերմիստորի արժեքը կամ մարել led- ը:
Կարող է կարդալ անալոգային արժեքը և գրել անալոգային արժեքը միայն 2 լարով (կատարյալ ESP-01- ի համար):
Ես փորձում եմ պարզեցնել այս IC- ի օգտագործումը ՝ գործողության նվազագույն փաթեթով:
Իմ կայքում կարող եք գտնել թարմացված տարբերակ ՝
Քայլ 1: Ինչպես է աշխատում I2c- ը
I2C- ն աշխատում է իր երկու լարերով ՝ SDA (տվյալների գիծ) և SCL (ժամացույցի գիծ):
Այս երկու տողերն էլ բաց արտահոսքի են, բայց ձգված են ռեզիստորներով:
Սովորաբար գծի վրա կա մեկ վարպետ և մեկ կամ մի քանի ստրուկներ, չնայած կարող են լինել բազմաթիվ վարպետներ, բայց մենք այդ մասին կխոսենք ավելի ուշ:
Ե՛վ տերը, և՛ ստրուկները կարող են փոխանցել կամ ստանալ տվյալներ, հետևաբար, սարքը կարող է լինել այս չորս վիճակներից մեկում ՝ վարպետ փոխանցել, վարպետ ստանալ, ստրուկ փոխանցել, ստրուկ ստանալ:
Քայլ 2:
Իմ գրադարանը կարող եք գտնել այստեղ:
Բեռնելու.
Սեղմեք DOWNLOADS կոճակը վերին աջ անկյունում, անվանափոխեք չսեղմված թղթապանակը PCF8591:
Ստուգեք, որ PCF8591 թղթապանակը պարունակում է PCF8591.cpp և PCF8591.h:
Տեղադրեք PCF8591 գրադարանի թղթապանակը ձեր / գրադարաններ / թղթապանակում:
Հնարավոր է, որ անհրաժեշտ լինի ստեղծել գրադարանների ենթապարկը, եթե դա ձեր առաջին գրադարանն է:
Վերագործարկեք IDE- ն:
Քայլ 3: Օգտագործում
Կառուցող. Դուք պետք է նշեք i2c- ի հասցեն (հասցեն ստուգելու համար օգտագործեք այս ուղեցույցը I2cScanner)
PCF8591 (uint8_t հասցե);
esp8266- ի համար, եթե ցանկանում եք նշել SDA և SCL քորոց, օգտագործեք սա.
PCF8591 (uint8_t հասցե, uint8_t sda, uint8_t scl);
Քայլ 4: Կարդացեք արժեքը
IC- ն, ինչպես տեսնում եք նկարում, ունի 4 անալոգային մուտք և 1 անալոգային ելք:
Այսպիսով, մեկ փոխանցման մեջ անալոգային բոլոր մուտքերը կարդալու համար կարող եք անել (արժեքը 0 -ից 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);
եթե ցանկանում եք կարդալ մեկ անալոգային մուտք կամ ալիք.
int ana = pcf8591.analogRead (AIN0); // կարդալ անալոգային 0
Քայլ 5: Կարդացեք Vale ալիքից
Այս IC- ն ունի ընթերցման բազմաթիվ տեսակներ, և դուք կարող եք օգտագործել անալոգային մուտքագրում կամ անալոգային ալիք (երբ օգտագործում եք մեկ ընթերցված անալոգային մուտք և ալիքը պատկերված է նկարներում):
Օրինակ, երկու դիֆերենցիալ մուտքագրման մեջ 0 ալիքի արժեքը կարդալու համար պետք է անեք.
int ana = pcf8591.analogRead (CHANNEL0, TWO_DIFFERENTIAL_INPUT); // կարդալ անալոգային 0
Քայլ 6: Գրեք արժեք
Եթե ցանկանում եք գրել անալոգային արժեք, ապա պետք է անեք (արժեքը 0 -ից 255 -ն է).
pcf8591.analogWrite (128);
Քայլ 7: Լրացուցիչ հնարավորություններ
Լրացուցիչ գործառույթը գրելու լարումը կարդալն է. Լարման հաշվարկման համար պետք է անցնել որոշ պարամետր.
- միկրոկոնտրոլերեր
- referenceVoltage: if microcontrollerReferenceVoltage false վերցրեք այս արժեքըՀրամանը հետևյալն է.
void voltageWrite (float value, bool microcontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
float voltageRead (uint8_t analogPin, bool microcontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
Օրինակներ են.
pcf8591.voltageWrite (2.7); // 2.7 Վոլտ ելք
ուշացում (3000);
float ana0V = pcf8591.voltageRead (AIN0); // Կարդացեք լարումը անալոգից 0
Serial.println (ana0V);
Քայլ 8. Միացման դիագրամի օրինակներ
Քայլ 9: Շնորհակալություն
i2c նախագծի շարք (Հավաքածու).
- Humidityերմաստիճանի խոնավության ցուցիչ
- Անալոգային ընդլայնիչ
- Թվային ընդլայնիչ
- LCD էկրան
Խորհուրդ ենք տալիս:
DHT12 (i2c էժան խոնավության և ջերմաստիճանի ցուցիչ), արագ օգտագործման հեշտություն. 14 քայլ
DHT12 (i2c էժան խոնավության և ջերմաստիճանի տվիչ), արագ օգտագործման հեշտություն. Իմ կայքում կարող եք գտնել թարմացումներ և այլն: https://www.mischianti.org/2019/01/01/dht12-library-en/: Ինձ դուր է գալիս սենսորը կարող է օգտագործվել 2 լարով (i2c արձանագրություն), բայց ես սիրում եմ էժանը: Սա Arduino և esp8266 գրադարան է DHT12 շարքի համար
Անլար տան երթուղիչ `անալոգային օգտագործման հաշվիչով. 5 քայլ (նկարներով)
Անլար տան երթուղիչ ՝ անալոգային օգտագործման հաշվիչով. հավաքիչներ, որոնք սովորաբար կգտնվեին կապված փոքր ծովային դիզելային շարժիչների հետ: Այսօր ես աշխատում եմ որպես դիզայներական կառույց, որը կառուցում է ցանցերի ինտերֆեյսեր
Ինչպես միացնել սեղմման կոճակը ձայնային մուտքի և ելքի միջոցով. 13 քայլ
Ինչպես միացնել սեղմման կոճակը ձայնային մուտքի և ելքի միջոցով. Հրել կոճակը ձեր գործողությունը գրավելու հիմնական բաղադրիչներից մեկն է: Ինչ -որ բան անելու համար կարող եք դինամիկ կերպով սեղմել կոճակը: Ձեր նախագծերում արդեն կան կոճակներ օգտագործելու մի քանի եղանակներ (օրինակ ՝ մկնիկի և ստեղնաշարի կոտրում, կամ Arduino, gainer, MCK): Այս
Ինչպես միացնել Fader- ը աուդիո մուտքի և ելքի հետ. 14 քայլ
Ինչպես միացնել Fader- ը աուդիո մուտքի և ելքի հետ. Fader- ը մխիթարիչը խառնելու հիմնական բաղադրիչներից մեկն է: Դուք կարող եք դինամիկ կերպով վերահսկել ձեր աղբյուրը ֆեդերայի շարժումով: Ձեր նախագծերում արդեն կան կոճակներ օգտագործելու մի քանի եղանակներ (օրինակ ՝ մկնիկի և ստեղնաշարի կոտրում, կամ Arduino, gainer, MC
Ինչպես միացնել սենսորը աուդիո մուտքի և ելքի միջոցով. 15 քայլ
Ինչպես միացնել սենսորը աուդիո մուտքի և ելքի հետ. Սենսորը ֆիզիկական միջավայրը գրավելու հիմնական բաղադրիչներից մեկն է: Դուք կարող եք ստանալ լույսի փոփոխություն CDS ֆոտոխցիկով, կարող եք տարածությունը չափել հեռավորության սենսորով, և կարող եք ֆիքսել ձեր շարժումը արագացուցիչով: Կան ալրեա