PC에 연결한 USB 통신 케이블이 포트 몇번인지 확인한다
내 PC - 관리 - 장치관리자 - 포트
내 컴퓨터는 COM3으로 인식하고 있다
import serial
import threading
import time
port = "COM3" #PC에 연결된 포트명
baud = 115200 # 시리얼 보드레이트(통신속도)
ser = serial.Serial(port, baud, timeout=1)
def main():
thread = threading.Thread(target=readthread, args=(ser,)) #시리얼 통신 받는 부분
thread.start()
while True:
data = '보낼데이터(byte형식으로 보내야함 byte,str.encode())'
ser.write(data)
time.sleep(1)
def readthread(ser): #데이터 받는 함수
# 쓰레드 종료될때까지 계속 돌림
while True: #True 조건일대 쓰레드가 실행(원하는 조건문 변환해서 쓰세여)
if ser.readable(): #값이 들어왔는지 확인
res = ser.readline() #값을 줄로 받음(byte형식)
print(res) #byte형식
ser.close()
main() #메인문 실행
이렇게 짜면 데이터를 받을 수 있다
만약 데이터를 받을 센서나 rfid가 없다면 loopback 으로 tx rx 선을 연결하여 보낸 데이터를 받는 데이터로 확인 하는 방법도 있다
반응형
'Python' 카테고리의 다른 글
Python 문자열을 바이트 배열로 변환 (0) | 2021.08.24 |
---|---|
[Python] 2byte 배열을 int정수형으로 변환 (0) | 2021.08.17 |
[Python] int정수형을 2byte 배열로 변환 (0) | 2021.08.02 |
[Python] 문자열 배열에서 특정 문자 찾기(특정 문자 포함 여부 확인) (0) | 2021.07.12 |
PyQt5 창 모니터 정중앙으로 실행하기(center에 정렬) (0) | 2021.06.07 |
댓글