unsigned long startTime = 0; // Boshlanish vaqtini saqlash uchun o'zgaruvchi
unsigned long elapsedTime = 0; // O'tgan vaqtni saqlash uchun o'zgaruvchi
boolean isRunning = false; // Sekundomer ishlash holatini saqlash uchun o'zgaruvchi
// Knopka pin raqamlari
const int button1Pin = 2; // Birinchi knopkani kiritish uchun pin raqami
const int button2Pin = 3; // Ikkinchi knopkani kiritish uchun pin raqami
void setup() {
pinMode(button1Pin, INPUT); // Birinchi knopkani kiritish uchun pin raqamini kirish sifatida sozlash
pinMode(button2Pin, INPUT); // Ikkinchi knopkani kiritish uchun pin raqamini kirish sifatida sozlash
Serial.begin(9600); // Serial monitor orqali ma'lumotlarni ko'rish uchun boshlash
}
void loop() {
// Birinchi knopkani tekshirish
if (digitalRead(button1Pin) == HIGH) {
if (isRunning) {
stopTimer(); // Agar sekundomer ishga tushgan bo'lsa, uni to'xtatish
}
}
// Ikkinchi knopkani tekshirish
if (digitalRead(button2Pin) == HIGH) {
if (!isRunning) {
startTimer(); // Agar sekundomer to'xtagan bo'lsa, uni ishga tushurish
}
}
// Sekundomer ishlashini boshqarish
if (isRunning) {
updateTimer(); // Agar sekundomer ishga tushgan bo'lsa, uni yangilash
}
}
// Sekundomer ishga tushishi
void startTimer() {
startTime = millis(); // Ish boshlanish vaqti
isRunning = true; // Sekundomer ishga tushgan
Serial.println("Sekundomer ishga tushdi.");
}
// Sekundomer to'xtatishi
void stopTimer() {
elapsedTime = 0; // O'tgan vaqtni nolga qaytarish
isRunning = false; // Sekundomer to'xtagan
Serial.println("Sekundomer to'xtadi.");
}
// Sekundomeri yangilash
void updateTimer() {
elapsedTime = millis() - startTime; // O'tgan vaqtni hisoblash
Serial.print("O'tgan vaqt: ");
Serial.print(elapsedTime / 1000); // Sekundlarda hisoblash
Serial.println(" s");
}