more bug fixing.

This commit is contained in:
CiscoTheWolf 2023-05-29 20:23:33 +02:00
parent 39022dc18c
commit 810e6f71d2
2 changed files with 29 additions and 24 deletions

View file

@ -1,5 +1,3 @@
import time
import random
from PIL import Image from PIL import Image
class ProotState: class ProotState:
@ -82,7 +80,7 @@ class ProotState:
matrix.SwapOnVSync(self.frame_canvas_prootScreen_3) matrix.SwapOnVSync(self.frame_canvas_prootScreen_3)
def update_screen(blinkFrameCanvases, matrix): def update_screen(blinkFrameCanvases, matrix):
proot_state = ProotState() proot_state = ProotState()
@ -92,18 +90,3 @@ def update_screen(blinkFrameCanvases, matrix):
else: else:
proot_state.set_ProotScreen(matrix) proot_state.set_ProotScreen(matrix)
def interrupt_timer(blinkFrameCanvases, matrix):
while True:
update_screen(blinkFrameCanvases, matrix)
time.sleep(0.01)
def random_blinks():
while True:
time.sleep(random.randint(3, 5))
proot_state = ProotState()
if proot_state.get_blinks_frames_ready():
proot_state.blink()

View file

@ -2,6 +2,8 @@ from rgbmatrix import RGBMatrix, RGBMatrixOptions
import Point2D import Point2D
import ProotState import ProotState
import time
import random
from PIL import Image from PIL import Image
import paho.mqtt.client as mqtt import paho.mqtt.client as mqtt
import time import time
@ -28,8 +30,27 @@ print("configuring matrix took: " + str(endT - startT) + " ms")
blinkFrameCanvases = [] blinkFrameCanvases = []
def interrupt_timer():
global blinkFrameCanvases, matrix
proot_state = ProotState()
while True:
proot_state.update_screen(blinkFrameCanvases, matrix)
time.sleep(0.01)
def random_blinks():
while True:
time.sleep(random.randint(3, 5))
proot_state = ProotState()
if proot_state.get_blinks_frames_ready():
proot_state.blink()
# Create and start screen update interrupts # Create and start screen update interrupts
screen_update_thread = threading.Thread(target=ProotState.interrupt_timer(blinkFrameCanvases, matrix)) screen_update_thread = threading.Thread(target=ProotState.interrupt_timer)
screen_update_thread.start() screen_update_thread.start()
# Create and start random blinks interrupts # Create and start random blinks interrupts
@ -100,6 +121,7 @@ endT = curr_time = round(time.time()*1000)
print("populating matrices for each blink frame took: " + str(endT - startT) + " ms") print("populating matrices for each blink frame took: " + str(endT - startT) + " ms")
proot_state = ProotState.ProotState() proot_state = ProotState.ProotState()
proot_state.set_matrix(matrix)
proot_state.set_blinks_frames_ready(True) proot_state.set_blinks_frames_ready(True)
proot_state.blink() proot_state.blink()