From e3af1a7f50585a04ddd20a41f29b0266bb06f0de Mon Sep 17 00:00:00 2001 From: Patrick Tschuchnig Date: Wed, 11 Sep 2019 16:34:32 +0200 Subject: [PATCH] progress on the LED blinking handler --- gametest_rev1.py | 69 ++++++++++++++++++++++-------------------------- 1 file changed, 32 insertions(+), 37 deletions(-) diff --git a/gametest_rev1.py b/gametest_rev1.py index 3ca3e10..8e4bf8f 100644 --- a/gametest_rev1.py +++ b/gametest_rev1.py @@ -9,7 +9,7 @@ # Pinout for assembly: # # 3V3 (1) (2) 5V -# pin_shutdown (3) (4) 5V +# - (3) (4) 5V # - (5) (6) GND # - (7) (8) - # GND (9) (10) - @@ -25,7 +25,7 @@ # - (29) (30) GND # - (31) (32) pin_start # pin_error (33) (34) GND -# - (35) (36) - +# - (35) (36) pin_shutdown # - (37) (38) - # GND (39) (40) - @@ -33,7 +33,7 @@ # # 32: pull up # 33: pull up -# 3: pull down +# 36: pull up # # make sure leds are on pull-up default pins # so when their state is undefined, the led @@ -141,9 +141,6 @@ led_red_brightness = 0 led_green_brightness = 0 led_blue_brightness = 0 -# predefine led blink timer to 0 -timer_led_blink = 0 - ############################################ ######## END OF PRE-INITIALISATION ######### ############################################ @@ -198,7 +195,7 @@ def change_red(amount): global led_red, led_red_brightness led_red_brightness = amount factor = 100/255 - led_red.ChangeDutyCycle(amount*factor) + led_red.ChangeDutyCycle(led_red_brightness*factor) def change_green(amount): # takes an input from 0 to 255 and converts it to Duty Cycle @@ -206,7 +203,7 @@ def change_green(amount): global led_green, led_green_brightness led_green_brightness = amount factor = 100/255 - led_green.ChangeDutyCycle(amount*factor) + led_green.ChangeDutyCycle(led_green_brightness*factor) def change_blue(amount): # takes an input from 0 to 255 and converts it to Duty Cycle @@ -214,20 +211,8 @@ def change_blue(amount): global led_blue, led_blue_brightness led_blue_brightness = amount factor = 100/255 - led_blue.ChangeDutyCycle(amount*factor) + led_blue.ChangeDutyCycle(led_blue_brightness_temp*factor) -def get_red(): - global led_red_brightness - return led_red_brightness - -def get_green(): - global led_green_brightness - return led_green_brightness - -def get_blue(): - global led_blue_brightness - return led_blue_brightness - def change_led_colour(red_amount,green_amount,blue_amount): # sets an RGB value for the led strip. if red_amount < 0 or red_amount > 255 or green_amount < 0 or green_amount > 255 or blue_amount < 0 or blue_amount > 255: @@ -250,22 +235,25 @@ def change_led_speed(colour, speed): else: return false -def led_handler(): - if led_blink == True: - if timer_led_blink == 0: - timer_led_blink_starttime = pygame.time.get_ticks() - timer_led_blink = (timer_led_blink_starttime-pygame.time.get_ticks()) - if (timer_led_blink/1000)%2 = 0: - if timer_led_blink_toggle == 1: - led_red_brightness_temp = get_red() - led_green_brightness_temp = get_green() - led_blue_brightness_temp = get_blue() +def led_handler(): + # global timer_led_blink_toggle, timer_led_one_shot + # if led_blink == True: + # if int((pygame.time.get_ticks()/1000))%2 == 0: + # if timer_led_one_shot == 0: + # timer_led_one_shot = 1 + # if timer_led_blink_toggle == 1: + # print('BLINK: switching leds off') + # print('red br.:' + str(led_red_brightness)) - change_led_colour(0,0,0) - timer_led_blink_toggle = 0 - else: - change_led_colour(led_red_brightness_temp,led_green_brightness_temp,led_blue_brightness_temp) - timer_led_blink_toggle = 1 + # change_led_colour(0,0,0) + # timer_led_blink_toggle = 0 + # else: + # print('BLINK: reverting colours') + # change_led_colour(led_red_brightness,led_green_brightness,led_blue_brightness) + # timer_led_blink_toggle = 1 + # else: + # timer_led_one_shot = 0 + pass def led_alert(): # stops the running program for 10 seconds @@ -354,7 +342,7 @@ def enter_name(): textbox_surface = pygame_font_2.render(str(name), True, pygame_font_main_color) textbox_rectangle = textbox_surface.get_rect() - textbox_rectangle.topleft = (700, 370) + textbox_rectangle.topleft = (930, 400) screen.blit(textbox_text_surface, textbox_text_rectangle) screen.blit(textbox_surface, textbox_rectangle) @@ -487,7 +475,13 @@ highscore_checked = False pin_start_inhibit = False timer_game_ending_started = False +# test: enable led blinking permanently led_blink = True +timer_led_blink_toggle = 1 +led_red_brightness_temp = 0 +led_green_brightness_temp = 0 +led_blue_brightness_temp = 0 +timer_led_one_shot = 0 ############################################ ########## END OF INITIALISATION ########### @@ -504,6 +498,7 @@ while True: show_debug() led_handler() + print(int((pygame.time.get_ticks()/1000))%2) if game_running == False and game_ending == False: # one shot for changing the led colour if game_just_started == True: