def btn_pressure(): pressure = [] while True: sleep(0.1) if btn_pressed(btn2) is True: with lock: for i in range(10): pressure.append(ozzmaker.get_data(False)) sleep(0.05) print(stat.median(pressure), 'hPa') pressure = [] else: continue
def check_temp(): temperature = [] counter = 0 write = threading.Thread(target=write_log, args=(temperature, 1)) while True: with lock: temperature.append(ozzmaker.get_data(True)) counter += 1 sleep(60) enqueue(temperature[-1]) if counter == 1439: #after an entire day counter = 0 write.start() temperature = [] continue
def loop(): sleep(1) off(red) counter = 0 while True: sleep(0.01) if btn_pressed(btn) is True: on(red) sleep(3) off(red) for i in range(3): on(yellow) sleep(0.5) off(yellow) sleep(0.5) on(green) sleep(1) with lock: temporary = [ozzmaker.get_data(True), ozzmaker.get_data(False)] with lock: if not queue.empty(): print('last read temp: ' + str(queue.get()) + 'C') else: print('not enough data avaiable, retry in 1 min') print("pressure: " + str(temporary[1])+ 'hPa') # on(beep) sleep(1) counter +=1 write_log(temporary, 2) print("temperature and pressure readings required " + str(counter)+" times") # off(beep) off(green) continue else: sleep(0.01) continue