Мазмұны:
- 1 -қадам: I2c қалай жұмыс істейді
- 2 -қадам:
- 3 -қадам: Қолдану
- 4 -қадам: Мәнді оқу
- 5 -қадам: Vale арнасынан оқыңыз
- 6 -қадам: Мәнді жазу
- 7 -қадам: қосымша мүмкіндіктер
- 8 -қадам: Қосылу диаграммасының мысалдары
- 9 -қадам: Рахмет
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
I2c pcf8591 IC пайдалану үшін кітапхана arduino және esp8266 көмегімен.
Бұл IC (4 дейін) аналогты кірісті және/немесе кернеуді өлшеу сияқты 1 аналогты шығуды басқара алады, термистордың мәнін оқи алады немесе светодиодты өшіреді.
Аналогты мәнді оқи алады және тек 2 сыммен аналогтық мәнді жаза алады (ESP-01 үшін өте қолайлы).
Мен минималды операциялар жиынтығымен осы IC -ді пайдалануды жеңілдетуге тырысамын.
Сіз менің сайтымнан жаңартылған нұсқаны таба аласыз
1 -қадам: I2c қалай жұмыс істейді
I2C екі сыммен жұмыс істейді, SDA (деректер желісі) және SCL (сағаттық желі).
Бұл екі желі де ашық, бірақ резисторлармен тартылған.
Әдетте желіде бір шебер мен бір немесе бірнеше құл бар, бірақ бірнеше шеберлер болуы мүмкін, бірақ біз бұл туралы кейінірек айтатын боламыз.
Мастерлер де, құлдар да деректерді жібере немесе ала алады, сондықтан құрылғы осы төрт күйдің бірінде болуы мүмкін: басты жіберу, басты қабылдау, құлдық жіберу, құлдық қабылдау.
2 -қадам:
Сіз менің кітапханамды осы жерден таба аласыз.
Жүктеу үшін.
Жоғарғы оң жақ бұрыштағы ЖҮКТЕУ түймесін басыңыз, қысылмаған 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 ();
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: кернеуді микроконтроллерден алу
- referenceVoltage: if microcontrollerReferenceVoltage false бұл мәнді алады Пәрмен:
void kuchlanishWrite (өзгермелі мән, bool microcontrollerReferenceVoltage = true, float referenceVoltage = 5.0);
өзгермелі кернеу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 жобалар сериясы (Топтама):
- Температура ылғалдылығы сенсоры
- Аналогты кеңейтуші
- Сандық кеңейткіш
- СКД дисплей
Ұсынылған:
50 доллардан төмен жылдам ауысу! Kazeshifter Arduino реттелетін жылдам ауысу: 7 қадам
50 доллардан төмен жылдам ауысу! Kazeshifter Arduino реттелетін жылдам ауысуы: Сәлем Superbike немесе мотоцикл әуесқойлары! Мен бұл нұсқаулықта өз қолыңмен Quick Shifter қалай арзанға жасауға болатынын айтамын! Бұл нұсқаулықты оқуға ерінетіндер үшін менің бейнені қараңыз! Ескертпе: Кейбір велосипедтер үшін қазірдің өзінде жанармай құю жүйесін қолданады, біршама
DHT12 (i2c арзан ылғалдылық пен температура сенсоры), жылдам қарапайым қолдану: 14 қадам
DHT12, 2 сыммен (i2c протоколы) қолдануға болады, бірақ мен арзанды жақсы көремін, бұл DHT12 сериясына арналған Arduino және esp8266 кітапханасы
Құлыптау экранын 6 қарапайым қадаммен өзгертудің жылдам және қарапайым әдісі (Windows 8-10): 7 қадам
Құлыптау экранын 6 қарапайым қадаммен өзгертудің жылдам және қарапайым әдісі (Windows 8-10): Ноутбукте немесе компьютерде жағдайды өзгерткіңіз келе ме? Сіздің атмосфераңыздың өзгеруін қалайсыз ба? Компьютердің құлыптау экранын сәтті жекелендіру үшін мына жылдам және қарапайым қадамдарды орындаңыз
Жылдам, жылдам, арзан, жақсы көрінетін жарықдиодты жарықтандыру (кез келген адамға арналған): 5 қадам (суреттермен)
Жылдам, жылдам, арзан, жақсы көрінетін жарықдиодты жарықтандыру (барлығына арналған): Барлығына қош келдіңіз :-) Бұл менің бірінші нұсқаулығым, сондықтан түсініктемелер қабылданады :-) Мен сізге көрсетуге үміттенетінім-жылдам жарықдиодты жарықдиодты қалай жасау керек. Сізге қажет: CableLEDsRezistors (12V үшін 510Ohms) Степлер Пісіру темірі
Жылдам және қарапайым жұмсақ қосқыштар (жылдам прототиптеу үшін): 5 қадам
Жылдам және қарапайым жұмсақ қосқыштар (жылдам прототиптеу үшін): жұмсақ қосқыштарды жасаудың әр түрлі әдістері. Бұл нұсқаулықта өткізгіш матаның орнына алюминий таспаны және өткізгіш жіптің орнына берік сымдарды қолданатын жұмсақ қосқыштың өте жылдам прототипінің басқа нұсқасы көрсетілген