diff --git a/gametest_rev2.py b/gametest_rev2.py index 17cd567..710809e 100644 --- a/gametest_rev2.py +++ b/gametest_rev2.py @@ -56,23 +56,23 @@ pin_blue, pin_green, pin_red pin_start - Type: Input, Pull Up + Type: Input, Pull Down Use: Start pin. If this is active, the game starts. pin_stop - Type: Input, Pull Up + Type: Input, Pull Down Use: Stop pin. If this is active, the game ends pin_error - Type: Input, Pull Up + Type: Input, Pull Down Use: This is to be attached to the game wire. If the wire is touched, the pin is pulled up and an error is registered. pin_shutdown - Type: Input, Pull Up + Type: Input, Pull Down Use: Triggering this input causes a system shutdown. GPIO Pinout for assembly: @@ -117,20 +117,18 @@ Circuit diagrams for the contact and button electronics: All buttons are close-contact. -+3.3V DC ---+-----------+-----------+-----------+--------> ++3.3V DC ---+-----------+--------------------------------> | | | | - | | | | - start \ stop \ shutdown \ error \ - contact \ contact \ button \ contact \ + R2 R4 R4 R4 + | | | | + +----+ +----+ +----+ +----+ + | | | | | | | | + | P_32 | P_37 | P_32 | P_32 + \ \ \ \ + \ \ \ \ \ \ \ \ * * * * | | | | - R1 R3 R5 R7 - | | | | - +-----+ +-----+ +-----+ +-----+ - | | | | | | | | - R2 P_32 R4 P_37 R6 P_36 R8 P_33 - | | | | GND --------+-----------+-----------+-----------+--------> LED Strip controller and driver: @@ -190,13 +188,9 @@ and the other 3 the ground connections for the corresponding LED colour. Part list: Resistors: -R1............1,800 Ohm R2...........10,000 Ohm -R3............1,800 Ohm R4...........10,000 Ohm -R5............1,800 Ohm R6...........10,000 Ohm -R7............1,800 Ohm R8...........10,000 Ohm R9............1,000 Ohm R10..........10,000 Ohm @@ -454,7 +448,7 @@ def handle_events(): exit_application() # shutdown raspberry if shutdown pin is detected - if GPIO.input(pin_shutdown): + if not GPIO.input(pin_shutdown): shutdown_raspberry() def exit_application(): @@ -715,7 +709,7 @@ while True: # event handling for if the start button is pushed #wait for the user to press start button - if GPIO.input(pin_start) and not pin_start_inhibit: + if not GPIO.input(pin_start) and not pin_start_inhibit: # change game state to running and not ending game_running = True game_ending = False @@ -753,7 +747,7 @@ while True: pin_start_inhibit = False # add errors if error pin is detected, only once per 500 ms - if GPIO.input(pin_error): + if not GPIO.input(pin_error): if not error_added: errors += 1 error_added = True @@ -791,7 +785,7 @@ while True: #pygame.display.flip() # if another push of start is detected (i.e. the game is ending!) - if GPIO.input(pin_stop): + if not GPIO.input(pin_stop): # change led colour to red change_led_colour(200, 0, 200) diff --git a/pud_test.py b/pud_test.py new file mode 100644 index 0000000..9e5e6ab --- /dev/null +++ b/pud_test.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python +#coding=utf-8 + +import signal +import sys +import os +import time +import RPi.GPIO as GPIO + +############################################ +############## END OF IMPORTS ############## + +# GPIO for Buttons +pin_start = 36 + + +# initialise gpio +GPIO.setmode(GPIO.BOARD) +GPIO.setup(pin_start, GPIO.IN) + +while True: + print(GPIO.input(pin_start)) + time.sleep(1) +