uv-belichter-software/input_tests.py

32 lines
1.5 KiB
Python

"""
uv-belichter-software - A simple program that prints out the current sate of the three input devices present on my "UV-Belichter"
Copyright (C) 2024 Benjamin Burkhardt
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
"""
import config as cfg
from time import sleep
def run(endless_loop: bool = True, serial_output: bool = True):
while endless_loop:
if cfg.BTN_1.value() and cfg.BTN_2.value() and cfg.SWITCH.value():
cfg.LCD.move_to(0,0)
cfg.LCD.putstr("In: Y1 | G1 | S1 Exiting! ")
if serial_output:
print("All configured inputs pressed! Exiting...")
sleep(0.2)
break
cfg.LCD.move_to(0,0)
cfg.LCD.putstr(f"In: Y{cfg.BTN_1.value()} | G{cfg.BTN_2.value()} | S{cfg.SWITCH.value()}Push all to exit")
if serial_output:
print(f"Y_BTN: {cfg.BTN_1.value()}; G_BTN: {cfg.BTN_2.value()}; Lever: {cfg.SWITCH.value()}")
sleep(0.05)
if __name__ == "__main__":
run() # run the program