Агуулгын хүснэгт:
- Алхам 1: I2c хэрхэн ажилладаг
- Алхам 2:
- Алхам 3: Хэрэглээ
- Алхам 4: Үнэ цэнийг уншина уу
- Алхам 5: Vale сувгаас уншина уу
- Алхам 6: Утга бичих
- Алхам 7: Нэмэлт боломжууд
- Алхам 8: Холболтын диаграмын жишээ
- Алхам 9: Баярлалаа
Видео: PCF8591 (i2c аналог I/O Expander) Хурдан хялбар хэрэглээ: 9 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
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 номын сангийн хавтсыг өөрийн / libraries / хавтсыг байрлуул.
Хэрэв таны анхны номын сан бол танд номын сангийн дэд хавтас үүсгэх шаардлагатай болж магадгүй юм.
IDE -г дахин эхлүүлнэ үү.
Алхам 3: Хэрэглээ
Барилгачин: та i2c хаягийг оруулах ёстой (хаягийг шалгахын тулд I2cScanner гарын авлагыг ашиглана уу)
PCF8591 (uint8_t хаяг);
esp8266 -ийн хувьд хэрэв та SDA e SCL зүү зааж өгөхийг хүсвэл үүнийг ашиглана уу.
PCF8591 (uint8_t хаяг, uint8_t sda, uint8_t scl);
Алхам 4: Үнэ цэнийг уншина уу
Зураг дээр харж байгаа шиг IC нь 4 аналог оролт, 1 аналог гаралттай байна.
Бүх аналог оролтыг нэг трассмиссия дотор уншихын тулд та хийж болно (утга нь 0 -ээс 255 хүртэл байна):
PCF8591:: AnalogInput ai = pcf8591.analogReadAll ();
Цуваа.хэвлэх (ai.ain0); Serial.print (" -"); Цуваа.хэвлэх (ai.ain1); 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: Нэмэлт боломжууд
Нэмэлт боломж бол бичих хүчдэлийг унших явдал юм: Хүчдэлийг тооцоолохын тулд та зарим параметрийг дамжуулах ёстой.
- microcontrollerReferenceVoltage: микроконтроллерийн хүчдэлээс хүчдэл авах (зөвхөн AVR байхгүй esp8266 esp 3.3v тогтмол)
- referenceVoltage: if microcontrollerReferenceVoltage false энэ утгыг авна Дараах тушаалууд байна:
хоосон хүчдэл Бичих (хөвөх утга, bool микроконтроллер
хөвөх хүчдэлRead (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 төслийн цуврал (Цуглуулга):
- Температурын чийгшил мэдрэгч
- Аналог өргөтгөгч
- Дижитал өргөтгөгч
- LCD дэлгэц
Зөвлөмж болгож буй:
50 доллараас доош хурдан шилжүүлэх! Kazeshifter Arduino тохируулж болох хурдан шилжүүлэгч: 7 алхам
50 доллараас доош хурдан шилжүүлэх! Kazeshifter Arduino тохируулж болох хурдан шилжүүлэгч: Сайн байна уу, супербикэл эсвэл мотоцикл сонирхогчид! Энэ заавар дээр би өөрийн гараар хурдан шилжүүлэгчийг хэрхэн хямд үнээр хийх талаар хуваалцах болно. Энэхүү зааварчилгааг уншихаас залхуу хүмүүс миний видеог үзээрэй. Жич: Зарим дугуйнд зориулагдсан. аль хэдийн түлш шахах системийг ашиглаж байсан, зарим үед
Нэг аналог зүү ашиглан олон аналог утгыг хэрхэн унших вэ: 6 алхам (зурагтай)
Нэг аналог зүү ашиглан олон тооны аналог утгыг хэрхэн унших вэ: Энэхүү гарын авлагад би зөвхөн нэг аналог оролтын зүү ашиглан олон аналог утгыг хэрхэн уншихыг танд үзүүлэх болно
Arduino -аас супер хурдан аналог хүчдэл: 10 алхам (зурагтай)
Arduino -ийн супер хурдан аналог хүчдэл: Энэхүү заавар нь Arduino болон энгийн резистор ба конденсаторын хосоос хэрхэн хурдан аналог хүчдэлийн өөрчлөлтийг бий болгохыг харуулсан болно. Ашигтай нэг програм бол осциллограф дээр график үүсгэх явдал юм. Өөр хэд хэдэн төсөл байгаа
Raspberry Pi GPIO хэлхээ: ADC -гүй LDR аналог мэдрэгчийг ашиглах (дижитал хөрвүүлэгчийн аналог): 4 алхам
Raspberry Pi GPIO хэлхээ: ADC -гүй LDR аналог мэдрэгчийг ашиглах (Дижитал хөрвүүлэгчийн аналог): Бидний өмнөх зааварчилгаанд бид Raspberry Pi -ийн GPIO тээглүүрийг LED, унтраалга руу хэрхэн холбох, GPIO зүү хэрхэн өндөр болохыг харуулж байна. эсвэл Бага. Гэхдээ хэрэв та Raspberry Pi -г аналог мэдрэгчтэй ашиглахыг хүсвэл яах вэ? Хэрэв бид
DIY MusiLED, Windows & Linux програмыг нэг товшилтоор (32 бит ба 64 бит) хөгжмийн синхрончлогдсон LED. Дахин бүтээхэд хялбар, ашиглахад хялбар, порт хийхэд хялбар: 3 алхам
DIY MusiLED, Windows болон Linux програмыг нэг товшилтоор (32 бит ба 64 бит) хөгжмийн синхрончлогдсон LED. Дахин бүтээхэд хялбар, ашиглахад хялбар, порт хийхэд хялбар: Энэхүү төсөл нь 18 LED (6 Улаан + 6 Цэнхэр + 6 Шар) Arduino самбартаа холбож, компьютерийн Дууны картын бодит цагийн дохиог шинжлэх, дамжуулахад туслах болно. LED -ууд нь цохилтын эффектийн дагуу тэднийг гэрэлтүүлдэг (урхи, өндөр малгай, өшиглөлт)