저는 파이썬을 처음 접했고 약간 까다 롭습니다. 그래서 본질적으로 데이터를 빛으로 보내려고합니다. 단지 적은 양의 텍스트. 그래서 바이너리에 ASCII 인코딩하는 코드의 라인을 가지고, 그것은 잘 작동 등데이터 전송 및 수신 코드 사이의 타이밍 문제
n=['0','b','1','0','1']
와 같은 문자열로 바이너리와 목록이 저를 떠난다. 나는 하나의 라스베리 pi
을 아래 코드와 함께 보내도록 설정하고, 하나는 코드를 더 내려 받아 수신하도록 설정했습니다. 모두 작동하는 것처럼 보입니다.하지만 두 타이밍 사이에 타이밍이 틀렸다고 생각합니다. 수신 된 목록의 목록이 이동하고 때로는 임의적 인 0이있을 수 있습니다. (나는 그것이 보내는 것보다 빨리 읽고 있다고 생각한다). 이 문제를 쉽게 해결할 수있는 방법이 있습니까? for 루프는 푸시 버튼을 통해 동시에 시작됩니다.
송신 :
For x in range(2,130):
If myList[x] != '1':
Led.off()
Sleep(.5)
Led.off()
Elif myList == '1':
Led.on()
Sleep(.5)
Led.off()
수신 :
For x in range(2,130):
If gpio.input(14) == True:
myList[x] = '1'
Sleep(.5)
Elif gpio.input(14) ==False:
myList[x] = '0'
Sleep(.5)
gpio.input(14)
는 LED로부터의 신호를 수신하는 photodiode
에 접속된다. 수신 코드가 전송 코드보다 빠르게 실행되고 왜 타이밍이 느려지는지 추측하지만이를 수정하는 방법을 모르겠습니다.