From 63670c35757e6c758897b7e329aefd3dd17e6491 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 11 Feb 2018 16:05:22 +0100 Subject: [PATCH] =?UTF-8?q?Schalte=20Spots=20nur=20w=C3=A4hrend=20des=20Sh?= =?UTF-8?q?ootings=20ein?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- photobox.py | 81 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 52 insertions(+), 29 deletions(-) diff --git a/photobox.py b/photobox.py index f0585b8..6c5b55b 100755 --- a/photobox.py +++ b/photobox.py @@ -61,6 +61,10 @@ COUNTDOWN = 3 SHOT_COUNT = 3 BORDER = 10 +GPIO_LED_BORDER = 7 +GPIO_RIGHT_SPOT = 35 +GPIO_LEFT_SPOT = 37 + THUMB_WIDTH = int((800 - BORDER) / SHOT_COUNT - BORDER) THUMB_HEIGHT = int(THUMB_WIDTH / 1.333) @@ -77,20 +81,27 @@ session_start = monotonic_time() # INIT GPIO GPIO.setmode(GPIO.BOARD) GPIO.setwarnings(False) -GPIO.setup(7, GPIO.OUT) -GPIO.output(7, GPIO.LOW) + +GPIO.setup(GPIO_RIGHT_SPOT, GPIO.OUT) +GPIO.setup(GPIO_LEFT_SPOT, GPIO.OUT) +GPIO.setup(GPIO_LED_BORDER, GPIO.OUT) + +GPIO.output(GPIO_RIGHT_SPOT, GPIO.HIGH) +GPIO.output(GPIO_LEFT_SPOT, GPIO.HIGH) + +GPIO.output(GPIO_LED_BORDER, GPIO.LOW) sleep(0.02) -GPIO.output(7, GPIO.HIGH) +GPIO.output(GPIO_LED_BORDER, GPIO.HIGH) sleep(0.02) -GPIO.output(7, GPIO.LOW) +GPIO.output(GPIO_LED_BORDER, GPIO.LOW) sleep(0.02) -GPIO.output(7, GPIO.HIGH) +GPIO.output(GPIO_LED_BORDER, GPIO.HIGH) sleep(0.02) -GPIO.output(7, GPIO.LOW) +GPIO.output(GPIO_LED_BORDER, GPIO.LOW) sleep(0.02) -GPIO.output(7, GPIO.HIGH) +GPIO.output(GPIO_LED_BORDER, GPIO.HIGH) sleep(0.02) -GPIO.output(7, GPIO.LOW) +GPIO.output(GPIO_LED_BORDER, GPIO.LOW) @@ -215,18 +226,20 @@ def makePhotos(): camera.start_preview() # COUNTDOWN - GPIO.output(7, GPIO.HIGH) + GPIO.output(GPIO_RIGHT_SPOT, GPIO.LOW) + GPIO.output(GPIO_LEFT_SPOT, GPIO.LOW) + GPIO.output(GPIO_LED_BORDER, GPIO.HIGH) for i in range(0, COUNTDOWN): countdown(camera, pad_cdn[i], img_cdn[i]) - GPIO.output(7, GPIO.LOW) + GPIO.output(GPIO_LED_BORDER, GPIO.LOW) # SHOTS for i in range(0, SHOT_COUNT): # SHOT! sleep(PIC_INTERVAL) - GPIO.output(7, GPIO.HIGH) + GPIO.output(GPIO_LED_BORDER, GPIO.HIGH) camera.capture("./tmp%s.jpg" % i, format='jpeg', quality=100, thumbnail=None) - GPIO.output(7, GPIO.LOW) + GPIO.output(GPIO_LED_BORDER, GPIO.LOW) # PAUSE if i < SHOT_COUNT - 1: @@ -238,6 +251,9 @@ def makePhotos(): # CLOSE CAMERA camera.close() + GPIO.output(GPIO_RIGHT_SPOT, GPIO.HIGH) + GPIO.output(GPIO_LEFT_SPOT, GPIO.HIGH) + def chooseImages(): @@ -355,22 +371,29 @@ def saveImages(choices): -while 1: - waitForBegin() +try: + while 1: + waitForBegin() + + makePhotos() + (choices, save) = chooseImages() + if save: + saveImages(choices); + screen.fill(COLOR_BACK) + screen.blit(*gfx["saved"]) + pygame.display.flip() + else: + screen.fill(COLOR_BACK) + screen.blit(*gfx["canceled"]) + pygame.display.flip() + + sleep(2) - makePhotos() - (choices, save) = chooseImages() - if save: - saveImages(choices); - screen.fill(COLOR_BACK) - screen.blit(*gfx["saved"]) - pygame.display.flip() - else: - screen.fill(COLOR_BACK) - screen.blit(*gfx["canceled"]) - pygame.display.flip() +except KeyboardInterrupt: + print("") - sleep(2) - - -pygame.quit() +finally: + GPIO.output(GPIO_RIGHT_SPOT, GPIO.HIGH) + GPIO.output(GPIO_LEFT_SPOT, GPIO.HIGH) + GPIO.output(GPIO_LED_BORDER, GPIO.LOW) + pygame.quit()