From 4bf12876caede567affeeeb410a778a1963acef9 Mon Sep 17 00:00:00 2001 From: vlapa Date: Sat, 13 Jun 2026 17:42:57 +0300 Subject: First --- src/main.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main.cpp (limited to 'src') diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..0772645 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,40 @@ +#include +#include + +#define F_CPU 9600000UL +#define PIN_OUTPUT PB0 +#define TIME_WORK 15 // минут +#define TIME_PAUSE 25 // минут + +// Макрос для задержки на указанное количество минут +#define DELAY_MINUTES(min) \ + do \ + { \ + for (uint16_t m = 0; m < (min); m++) \ + { \ + for (uint16_t s = 0; s < 60; s++) \ + { \ + _delay_ms(1000); /* 1 секунда */ \ + } \ + } \ + } while (0) + +int main(void) +{ + // Отключаем АЦП и компаратор + ADCSRA &= ~(1 << ADEN); + ACSR |= (1 << ACD); + + // Настройка пинов + DDRB |= (1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB3) | (1 << PB4); + PORTB &= ~((1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB3) | (1 << PB4)); + + while (1) + { + PORTB |= (1 << PIN_OUTPUT); // LED ON + DELAY_MINUTES(TIME_WORK); // 15 минут + + PORTB &= ~(1 << PIN_OUTPUT); // LED OFF + DELAY_MINUTES(TIME_PAUSE); // 25 минут + } +} \ No newline at end of file -- cgit v1.2.3