#define POT_PIN A0 // Potensiometr pini
#define RELAY_PIN 2 // Rele boshqaruv pini
#define BUZZER_PIN 3 // Buzzer boshqaruv pini
#define LED_PIN 4 // LED boshqaruv pini
#define UPPER_THRESHOLD 700 // Buzzerni faollashtirish uchun yuqori cheklovi
#define LOWER_THRESHOLD 300 // LED yoqilish uchun past cheklovi
void setup() {
pinMode(POT_PIN, INPUT); // Potensiometr pinini kiritish sifatida sozlash
pinMode(RELAY_PIN, OUTPUT); // Rele boshqaruv pinini chiqish sifatida sozlash
pinMode(BUZZER_PIN, OUTPUT);// Buzzer boshqaruv pinini chiqish sifatida sozlash
pinMode(LED_PIN, OUTPUT); // LED boshqaruv pinini chiqish sifatida sozlash
}
void loop() {
// Potensiometr qiymatini o'qish
int potValue = analogRead(POT_PIN);
// Potensiometr qiymati yuqori cheklovdan baland bo'lsa
if (potValue > UPPER_THRESHOLD) {
activateBuzzer();
} else {
// Potensiometr qiymati yuqori cheklovdan past bo'lsa, buzzer ni o'chirish
digitalWrite(BUZZER_PIN, LOW);
}
// Potensiometr qiymati quyi cheklovdan past bo'lsa
if (potValue < LOWER_THRESHOLD) {
// potensiometr qiymati quyi cheklovdan past bo'lsa, LED ni yoqish
digitalWrite(LED_PIN, HIGH);
} else {
// potensiometr qiymati quyi cheklovdan o'tsa, LED ni o'chirish
digitalWrite(LED_PIN, LOW);
}
// Rele ni potensiometr qiymati asosida boshqarish
if (potValue > 512) {
// potensiometr qiymati o'rta nuqtasidan yuqori bo'lsa, rele ni faollashtirish
digitalWrite(RELAY_PIN, HIGH);
} else {
// potensiometr qiymati o'rta nuqtasidan past bo'lsa, rele ni o'chirish
digitalWrite(RELAY_PIN, LOW);
}
delay(100); // kechiktirish
}
// Buzzerni faollashtirish
void activateBuzzer() {
tone(BUZZER_PIN, 1000); // Buzzer ni 1000Hz chastotasi bilan faollashtirish
}