Мазмұны:

Arduino және DS18B20 бар сандық термометр: 7 қадам
Arduino және DS18B20 бар сандық термометр: 7 қадам

Бейне: Arduino және DS18B20 бар сандық термометр: 7 қадам

Бейне: Arduino және DS18B20 бар сандық термометр: 7 қадам
Бейне: FLProg10: DS18B20 температура сенсоры | ESP32 NodeMCU | Arduino визуалды енгізілген бағдарламалау 2024, Қараша
Anonim
Arduino және DS18B20 бар сандық термометр
Arduino және DS18B20 бар сандық термометр
Arduino және DS18B20 бар сандық термометр
Arduino және DS18B20 бар сандық термометр

Сандық термометрді жасаңыз, ол СКД экранында бөлме температурасын білуге мүмкіндік береді. Бұл жаңадан бастаушыларға арналған жоба. Сізге қажет қондырғы: 1. Arduino UNO R3 2. DS18B20 температура сенсоры. 3. 16X2 СКД дисплейі. 4. Сымдарды қосу. 5. Жоба тақтасы. Енді цифрлық термометр жасайық ….. Бұл arduino үшін Atmega168 түйреуіштері. Егер сіз бұл термометрді arduino көмегімен жасағыңыз келсе, оны өткізіп жіберіңіз.

1 -қадам: Breadboard -де Arduino жасаңыз

Breadboard -де Arduino жасаңыз
Breadboard -де Arduino жасаңыз

Ардуиноны бренд тақтасында жасау өте оңай. Енді сымдарды қосудың біртіндеп процедурасы төменде келтірілген: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> 22pF конденсатор -> GND 4. Pin10-> Crystal -> 22pF конденсатор -> GND. 5. түйреуіш 22 -> GND 6. Pin21 және Pin20 -> +5V 7. Pin1-> 10K регисторы GND +батырмасын +5В дейін басыңыз Енді сіз дайынсыз ……………..

2 -қадам: СКД қосу

СКД қосу
СКД қосу

3 -қадам: DS18B20 температура сенсорын қосу

DS18B20 температура сенсорын қосу
DS18B20 температура сенсорын қосу

4 -қадам: схеманы дайындау

Циклды дайындау
Циклды дайындау

Arduino IDE -дегі әдепкі СКД мысалына сәйкес СКД -ны атмега немесе ардуино арқылы қосыңыз. Енді DS1307 DATA шинасын DIGITAL PIN 7 -ге қосыңыз (Atmega pin 13)

5 -қадам: Arduino КОДЫ

#қосу #қосу #қосу #DS18S20_Pin = 7; // DS18S20 цифрлық 7 сигнал штыры rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Температура чипі i/o OneWire ds (DS18S20_Pin); // цифрлық түйреуіш 7 бойынша rahulmitra арқылы void setup (void) {Serial.begin (9600); lcd.begin (16, 2); // СКД -ге хабарды басып шығарыңыз. lcd.print («Rahul Mitra»); } void loop (void) {өзгермелі температура = getTemp (); Serial.println (температура); lcd.setCursor (0, 1); lcd.print («Temp:»); lcd.print (температура); lcd.print (« *C»); кешіктіру (100); // шығуды бәсеңдету үшін дәл осында} float getTemp () {// температураны бір DS18S20 DEG Celsius байт деректерінде қайтарады [12]; байт адресі [8]; if (! ds.search (addr)) {// тізбекте датчиктер жоқ, ds.reset_search () іздеуді қалпына келтіріңіз; қайтару -1000; } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println («CRC жарамсыз!»); қайтару -1000; } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print («Құрылғы танылмаған»); қайтару -1000; } ds.reset (); ds.select (адрес); ds.write (0x44, 1); // конверсияны бастау, паразиттік қуат қосылған кезде байт present = ds.reset (); ds.select (адрес); ds.write (0xBE); // Scratchpad -ты оқу (int i = 0; i <9; i ++) {// бізге 9 байтты деректер қажет = ds.read (); } ds.reset_search (); байт MSB = деректер [1]; байт LSB = деректер [0]; float tempRead = ((MSB << 8) | LSB); // екі комплимент қалқымалы температурасын пайдалану TemperatureSum = tempRead /16; қайтару температурасы қосындысы; }

6 -қадам: Соңында сіз жасадыңыз

Соңында сіз жасадыңыз
Соңында сіз жасадыңыз
Соңында сіз жасадыңыз
Соңында сіз жасадыңыз

7 -қадам: Тікелей эфирді қараңыз

www.youtube.com/watch?v=7718FODdtio&list=UUY916I6z4Y3QQhzjHsIhR8w

Ұсынылған: