Сообщения

Сообщения за февраля 7, 2025

Реверсивный счетчик

import RPi.GPIO as GPIO import time # Настройки INCREASE_PIN = 17 # Пин для увеличения счетчика DECREASE_PIN = 27 # Пин для уменьшения счетчика START_COUNT = 0 # Начальное значение счетчика DELAY_MS = 10 # Интервал записи в миллисекундах PAUSE_THRESHOLD_MS = 100 # Порог паузы в миллисекундах OUTPUT_FILE = "counter_log.txt" # Файл для записи показаний DEBOUNCE_TIME_MS = 50 # Обработка дребезга GPIO.setmode(GPIO.BCM) GPIO.setup(INCREASE_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP) GPIO.setup(DECREASE_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP) def write_counter_value(count):     with open(OUTPUT_FILE, "a") as f:         f.write(f"{count}\n") def main():     count = START_COUNT     last_change_time = 0 # Для отслеживания времени последнего изменения     last_write_time = time.time()     write_counter_value(count)     increase_debounce = 0     decrease_debounce = 0     while True:  ...