Բովանդակություն:
- Քայլ 1:
- Քայլ 2: Շղթայի դիագրամ
- Քայլ 3: րագիր
- Քայլ 4: Բացատրեք ծածկագիրը
- Քայլ 5. Կարող եք ներբեռնել ամբողջական նախագիծը
- Քայլ 6: Տեսանյութ
Video: Temերմաստիճանի տվիչ (LM35) Ինտերֆեյս ATmega32- ով և LCD էկրանով - Automatics Fan Control: 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Temերմաստիճանի տվիչ (LM35) Ինտերֆեյս ATmega32 և LCD էկրաններով
Քայլ 1:
Այս նախագծում Դուք կսովորեք, թե ինչպես միացնել ջերմաստիճանի տվիչ (LM35) AVR ATmega32 միկրոկոնտրոլերի և LCD էկրանին:
Նախքան այս նախագիծը ձեզ հարկավոր է Իմացեք հետևյալ հոդվածների մասին
ինչպես ավելացնել LCD գրադարան avr studio- ում | avr միկրոկառավարիչի ձեռնարկ
ADR- ի ներածություն AVR միկրոկառավարիչում | սկսնակների համար
Temերմաստիճանի տվիչը (LM35) հայտնի և ցածր գնով ջերմաստիճանի տվիչ է: Vcc- ը կարող է լինել 4V- ից մինչև 20V, ինչպես նշված է տվյալների թերթում: Սենսորից օգտվելու համար պարզապես միացրեք Vcc- ը 5V- ին, GND- ը `գետնին և ելքը` ADC- ից մեկին (անալոգային թվային փոխարկիչ ալիք):
Արդյունքը կազմում է 10 միլիոն վոլտ մեկ աստիճանի ջերմաստիճանի համար: Այսպիսով, եթե ելքը 310 մՎ է, ապա ջերմաստիճանը 31 աստիճան է: Այս նախագիծը պատրաստելու համար դուք պետք է ծանոթ լինեք AVR- ների ADC- ին և LCD- ին: լարման առումով է
5/1024 = 5.1 մՎ մոտավորապես
Այսպիսով, եթե ADC- ի արդյունքը համապատասխանում է 5.1mV- ին, այսինքն, եթե ADC- ի ընթերցումը հավասար է
10 x 5.1mV = 51mV
Դուք կարող եք կարդալ ցանկացած ADC ալիքի արժեքը ՝ օգտագործելով adc_result գործառույթը (ch);
Որտեղ ch- ն է ալիքի համարը (0-5) ATmega8- ի դեպքում: Եթե LM35- ի վարդակները միացված եք ADC 0 ալիքին, ապա զանգահարեք
adc_result0 = adc_read (0);
սա կպահի ADC- ի ընթացիկ ընթերցումը փոփոխական adc_value- ում: Adc_value- ի տվյալների տեսակը պետք է լինի int, քանի որ ADC արժեքը կարող է տատանվել 0-1023-ի սահմաններում:
Ինչպես տեսանք, ADC- ի արդյունքները 5,1 մՎ գործոնով են, և 1 աստիճանի C- ի համար LM35- ի թողունակությունը 10 մՎ է, ուստի 2 միավոր ADC = 1 աստիճան:
Այսպիսով, ջերմաստիճանը ստանալու համար մենք adc_value- ն բաժանում ենք երկուսի
ջերմաստիճան = adc_result0/2;
Վերջապես միկրոկոնտրոլերը 16X2 ալֆան թվային LCD- ում կցուցադրի ջերմաստիճանը ըստ աստիճանի:
Քայլ 2: Շղթայի դիագրամ
Քայլ 3: րագիր
#ifndef F_CPU
#սահմանի F_CPU 1600000UL
#էնդիֆ
#ներառում
#ներառում
#ներառել «LCD/lcd.h»
առոչինչ adc_init ()
{
// AREF = AVcc
ADMUX = (1 <
// ADC Միացնել և նախալեռնել 128 -ը
ADCSRA = (1 <
}
// կարդալ adc արժեքը
uint16_t adc_read (uint8_t ch)
{
// ընտրեք համապատասխան ալիքը 0 ~ 7
ch & = 0b00000111; // ԵՎ գործողություն 7 -ով
ADMUX = (ADMUX & 0xF8) | հատված;
// սկսել միայնակ փոխարկում
// գրել «1» ADSC- ին
ADCSRA | = (1 <
// սպասեք փոխակերպման ավարտին
// ADSC- ն կրկին դառնում է «0»
իսկ (ADCSRA & (1 <
վերադարձ (ADC);
}
int հիմնական ()
{
DDRB = 0xff;
uint16_t adc_result0;
int ջերմաստիճան;
int հեռու;
char buffer [10];
// նախաստորագրեք adc և lcd
adc_init ();
lcd_init (LCD_DISP_ON_CURSOR); // ԱՇԽԱՏԱԿԱՈ
lcd_clrscr ();
lcd_gotoxy (0, 0);
_ ուշացում (50);
մինչդեռ (1)
{
adc_result0 = adc_read (0); // կարդալ adc արժեքը PA0- ում
temp = adc_result0/2.01; // ջերմաստիճանը գտնելը
// lcd_gotoxy (0, 0);
// lcd_puts ("Adc =");
// itoa (adc_result0, բուֆեր, 10); // ցուցադրել ADC արժեքը
// lcd_puts (բուֆեր);
lcd_gotoxy (0, 0);
itoa (ջերմաստիճան, բուֆեր, 10);
lcd_puts ("Temp ="); // ցուցադրել ջերմաստիճանը
lcd_puts (բուֆեր);
lcd_gotoxy (7, 0);
lcd_puts («C»);
հեռու = (1.8*ջերմաստիճան) +32;
lcd_gotoxy (9, 0);
itoa (հեռու, բուֆեր, 10);
lcd_puts (բուֆեր);
lcd_gotoxy (12, 0);
lcd_puts («F»);
_ ուշացում (1000);
եթե (ջերմաստիճան> = 30)
{lcd_clrscr ();
lcd_home ();
lcd_gotoxy (0, 1);
lcd_puts («FAN ON»);
PORTB = (1 <
}
եթե (ջերմաստիճան <= 30)
{
lcd_clrscr ();
lcd_home ();
lcd_gotoxy (7, 1);
lcd_puts («FAN OFF»);
PORTB = (0 <
}
}
}
Քայլ 4: Բացատրեք ծածկագիրը
Հուսով եմ, որ դուք գիտեք, որ դուք կիմանաք, թե ինչպես միացնել ADC- ն և ինչպես միացնել LCD- ն Avr միկրոկառավարիչի հետ այս կոդի մեջ, երբ ջերմաստիճանը 30 աստիճանից բարձր է, ապա օդափոխիչը միացված է, և դուք կարող եք տեսնել LED Display FAN ON- ով և երբ ջերմաստիճանը 30 -ից պակաս, ապա օդափոխիչ անջատված է, և դուք կարող եք տեսնել FAN OFF
Քայլ 5. Կարող եք ներբեռնել ամբողջական նախագիծը
Սեղմեք այստեղ
Խորհուրդ ենք տալիս:
Ինտերֆեյս LCD էկրանով M4 Ներառում `5 քայլ
Ինտերֆեյս LCD էկրանով M4 Ներառում. Այս ձեռնարկը թույլ կտա մեզ վերահսկել մեր սմարթֆոնից Wi-Fi- ի միջոցով ցուցադրվող LCD էկրանը: Եթե վարորդական կենտրոն չունենք, կարող ենք օգտագործել arduino- ն, բայց Drivemall- ի զարգացման հղումից ներքև: Drivemall- ը գերադասելով դասարանից
Ինտերֆեյս LM35 ջերմաստիճանի տվիչ Arduino- ի հետ. 4 քայլ
Interfacing LM35 ջերմաստիճանի տվիչ Arduino- ի հետ. Rmերմաչափերը օգտակար սարք են, որոնք երկար ժամանակ օգտագործվում են ջերմաստիճանի չափման համար: Այս նախագծում մենք պատրաստել ենք Arduino- ի վրա հիմնված թվային ջերմաչափ, որը ցուցադրում է շրջակա միջավայրի ներկա ջերմաստիճանը և ջերմաստիճանի փոփոխությունները LCD- ով: Այն կարող է խորանալ
Temերմաստիճանի տվիչ (Arduino) ՝ 8 քայլ
Projectերմաստիճանի ցուցիչ (Arduino). Այս նախագիծը կատարյալ է միջանկյալ և սկսնակ հոբբիստների համար: Կարգավորումը շատ պարզ է: Կա LM35 չիպ (լրացուցիչ բացատրության հղում), որը թույլ է տալիս Arduino- ին որոշել շրջակա միջավայրի ջերմաստիճանը
Temերմաստիճանի եւ խոնավության տվիչ `7 քայլ
Temերմաստիճանի եւ խոնավության ցուցիչ. Իմ անունը Թաքեր Չեյզիտ է: Ես չորրորդ կուրսում եմ և ներկայումս էլեկտրատեխնիկայի բակալավրի կոչում եմ ստանում Մասաչուսեթսի Ամհերստ համալսարանում, և ես հաճախակի այցելու եմ ECE Makerspace տարածք, որը հայտնի է նաև որպես M5
LORA Temերմաստիճանի եւ հողի խոնավության տվիչ `6 քայլ
LORA Temերմաստիճանի և հողի խոնավության սենսոր. Իմ սեփական ջերմոցը պատրաստելիս ես պատրաստում եմ որոշ սենսորոդներ `ջերմոցի միջավայրը վերահսկելու համար: Այս սենսորը կարող եք օգտագործել նաև դրսում: Usingերմոցի ներսում կամ դրսից ջերմաստիճանի օգտագործումը հողի ջերմաստիճանի հետ համատեղ