Mundarija:
- 1 -qadam: I2c qanday ishlaydi
- 2 -qadam:
- 3 -qadam: Foydalanish
- 4 -qadam: Qiymatni o'qing
- 5 -qadam: Vale -ni kanaldan o'qing
- 6 -qadam: qiymatni yozing
- 7 -qadam: Qo'shimcha funktsiyalar
- 8 -qadam: Ulanish diagrammasiga misollar
- 9 -qadam: Rahmat
Video: PCF8591 (i2c analog kirish -chiqish kengaytirgichi) Tez oson foydalanish: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
I2c pcf8591 IC ni arduino va esp8266 bilan ishlatish uchun kutubxona.
Bu IC (4gacha) analog kirish va/yoki 1 analog chiqishni o'lchash, termistor qiymatini o'qish yoki svetodiodni o'chirishi mumkin.
Analog qiymatni o'qishi va analog qiymatini faqat 2 ta sim bilan yozishi mumkin (ESP-01 uchun juda mos keladi).
Men minimal operatsion to'plami bilan ushbu ICdan foydalanishni soddalashtirishga harakat qilaman.
Siz yangilangan versiyani mening saytimda topishingiz mumkin
1 -qadam: I2c qanday ishlaydi
I2C ikkita sim bilan ishlaydi: SDA (ma'lumotlar liniyasi) va SCL (soat chizig'i).
Bu ikkala chiziq ham ochiq-oydin, lekin rezistorlar yordamida tortilgan.
Odatda chiziqda bitta xo'jayin va bitta yoki bir nechta qul bo'ladi, garchi bir nechta xo'jayin bo'lishi mumkin, lekin biz bu haqda keyinroq gaplashamiz.
Xo'jayinlar ham, qullar ham ma'lumotlarni uzatishi yoki qabul qilishi mumkin, shuning uchun qurilma ushbu to'rt holatning birida bo'lishi mumkin: asosiy uzatish, master qabul qilish, qul uzatish, qul qabul qilish.
2 -qadam:
Bu erda mening kutubxonamni topishingiz mumkin.
Yuklab olish uchun.
O'ng yuqori burchakdagi YUKLASH tugmasini bosing, siqilmagan papkaning nomini o'zgartiring PCF8591.
PCF8591 papkasida PCF8591.cpp va PCF8591.h borligini tekshiring.
PCF8591 kutubxona papkasini / libraries / papkasini joylashtiring.
Agar siz birinchi kutubxonangiz bo'lsa, kutubxonalar pastki papkasini yaratishingiz kerak bo'lishi mumkin.
IDE -ni qayta ishga tushiring.
3 -qadam: Foydalanish
Konstruktor: i2c manzilini yozish kerak (manzilni tekshirish uchun I2cScanner qo'llanmasidan foydalaning)
PCF8591 (uint8_t manzili);
esp8266 uchun, agar siz SDA e SCL pinini belgilashni xohlasangiz, buni ishlating:
PCF8591 (uint8_t manzili, uint8_t sda, uint8_t scl);
4 -qadam: Qiymatni o'qing
Rasmda ko'rib turganingizdek, IC 4 ta analog kirish va 1 ta analog chiqishga ega.
Shunday qilib, barcha analog kirishni bitta trasmitsiyada o'qish uchun siz (qiymat 0 dan 255 gacha) bajarishingiz mumkin:
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);
Agar siz bitta analog kirish yoki kanalni o'qishni xohlasangiz:
int ana = pcf8591.analogRead (AIN0); // analogni o'qing 0
5 -qadam: Vale -ni kanaldan o'qing
Bu IC bir nechta o'qish turiga ega va siz analogli kirishni yoki analog kanalni ishlatishingiz mumkin (bitta o'qishda analog kirish va kanal rasmda).
Masalan, 0 kanalining qiymatini ikkita differentsial kirishda o'qish uchun quyidagilarni bajarish kerak:
int ana = pcf8591.analogRead (CHANNEL0, TWO_DIFFERENTIAL_INPUT); // analogni o'qing 0
6 -qadam: qiymatni yozing
Agar siz analog qiymatni yozmoqchi bo'lsangiz, buni qilishingiz kerak (qiymat 0 dan 255 gacha):
pcf8591.analogWrite (128);
7 -qadam: Qo'shimcha funktsiyalar
Qo'shimcha xususiyat - yozish kuchlanishini o'qish: Voltajni hisoblash uchun siz ba'zi parametrlardan o'tishingiz kerak:
- microcontrollerReferenceVoltage: mikrokontroller kuchlanishidan kuchlanishni olish (faqat esp 3.26v uchun AVR no esp8266)
- referenceVoltage: if microcontrollerReferenceVoltage false bu qiymatni oladi Buyruq:
bo'sh kuchlanishWrite (float qiymati, bool microcontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
suzuvchi kuchlanishRead (uint8_t analogPin, bool microcontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
Bunga misol:
pcf8591.voltageWrite (2.7); // 2,7 voltsli chiqish
kechikish (3000);
float ana0V = pcf8591.voltageRead (AIN0); // Analog 0 dan kuchlanishni o'qing
Serial.println (ana0V);
8 -qadam: Ulanish diagrammasiga misollar
9 -qadam: Rahmat
i2c loyihalar seriyasi (To'plam):
- Harorat namlik sensori
- Analog kengaytiruvchi
- Raqamli kengaytirgich
- LCD displey
Tavsiya:
50 dollardan past tez almashish! Kazeshifter Arduino sozlanishi tez o'tish: 7 qadam
50 dollardan past tez almashish! Kazeshifter Arduino tez sozlanishi: Salom Superbike yoki mototsiklni yaxshi ko'radiganlar! Men o'z qo'llarim bilan tez almashtirishni baham ko'raman! Bu ko'rsatmalarni o'qishga dangasa odamlar uchun mening videomni ko'ring! Eslatma: Ba'zi velosipedlar uchun. allaqachon yonilg'i quyish tizimidan foydalangan, ba'zida
Tez va oson devorga o'rnatiladigan shaxsiy kompyuterlar: 8 qadam
Tez va oson devorga o'rnatiladigan shaxsiy kompyuterlar: bir tonna joyni tejang, do'stlaringizni hayratda qoldiring! Oddiy kesilgan yog'och bo'laklar va rangli pleksiglasdan foydalanib, siz tezda kompyuteringizni devorga o'rnatishingiz mumkin
Makerspace -ning Robo -yollovchisi - Tez -tez beriladigan savollaringizga javob oling: 4 qadam
Makerspace-ning Robo-yollovchisi-Savol-javoblaringizga javob oling: Men o'tgan yili maktab direktoriga bizda mavjud bo'lgan har bir vosita haqida hamma narsani bilishga qiziqqan o'quvchilar uchun Makerspace darsidan tashqari dars o'tkazish g'oyasini bergan edim. U nihoyat rozi bo'lganida, men talabalarning diqqatini jalb qilishim kerakligini bilardim
Tez, tez, arzon, yaxshi ko'rinadigan LED xonali yorug'lik (hamma uchun): 5 qadam (rasmlar bilan)
Tez, tez, arzon, yaxshi ko'rinadigan LED xonali yorug'lik (hamma uchun): Hammaga xush kelibsiz :-) Bu mening birinchi ko'rsatmam, shuning uchun sharhlar qabul qilinadi :-) Men sizga ko'rsatmoqchi bo'lgan narsam-tez LED yoritgichini qanday qilish kerak. TINY buget. Sizga kerak bo'lgan narsa: CableLEDsRezistorlar (12V uchun 510 Ohm) Stapellar Lehimlash dazmollari Kesgichlar va boshqa tagliklar
Tez va oddiy yumshoq kalitlar (tez prototiplash uchun): 5 qadam
Tez va oddiy yumshoq kalitlar (tez prototiplash uchun): Yumshoq kalitlarni yaratishning turli xil usullari. Bu yo'riqnomada o'tkazgich mato o'rniga alyuminiy lenta va o'tkazgichli ip o'rniga qattiq simlar yordamida yumshoq kalit uchun juda tezkor prototipning boshqa varianti ko'rsatilgan