2017-10-11 1 views
0

의 한 부분에 대한 내 rassbery 파이에 3 LCD 디스플레이를위한 sript 및 시간 수면 기능에 문제가있다. 나는 (10S는 서로 다른 데이터를 표시 한 후) 화면 만 3 일시 중지를하고 싶은, 다른 LCD는 시간 잠을하지 않고, normaly 실행해야합니다 -파이썬 time.sleep에만 스크립트

예를 일시 정지 :이 예에서

# LCD1 
mylcd1.lcd_display_string("TEMP1:",1,0) 
mylcd1.lcd_display_string(str(temp1),1,5) 
mylcd1.lcd_display_string ("%s" %time.strftime("%H:%M:%S"),3, 0) 

# LCD2 
mylcd2.lcd_display_string("TEMP2:",1,0) 
mylcd2.lcd_display_string(str(temp2),1,5) 

# LCD3 
mylcd3.lcd_clear() 
mylcd3.lcd_display_string("TEMP3:",1,0) 
mylcd3.lcd_display_string(str(temp3),1,5) 

time.sleep(10) 
mylcd3.lcd_clear() 
mylcd3.lcd_display_string("DIM:",1,0) 
mylcd3.lcd_display_string(str(dp1),1,4) 

입니다 LCD1의 문제 시간, 원활하게 작동하지 않으며, 10 초를 기다려야하며, LCD 1 및 LCD 2의 온도 데이터는 지연없이 실시간으로 재생되어야합니다 ....

도움을 주셔서 감사합니다!

답변

0

나는 이것에 대해 갈 수있는 가장 쉬운 방법은 당신의 LCD 루프에서 실행 업데이트 할 것을 요구의이 말하는, 시간을 추적하는 변수가있다.

는 그런 다음 루프 내 시간을 10 % 초 == 0 다음의 지연 시간을 필요로하는 화면의 새로 고침을 실행하면 확인 if 문이있다.

0

작성하는 것을 잊어 버렸습니다. 경쟁 코드가 이미 루프에 있습니다 ... LCD3 용 부품에 대해서만 time.sleep을 추가하고 싶습니다 ... LCD3 데이터를 10 초마다 변경하십시오.