본문 바로가기
개발

파이썬 가상 컴포트 열기 시리얼통신

by 화악 2022. 1. 27.
반응형

파이썬은 여러가지 기능을 지원합니다. 이중에 당연 시리얼 통신도 됩니다. 오늘은 아주 간단한 예제로 들고왔습니다. 시리얼 통신의 기초입니다. 먼저 해줄게 있습니다. 바로 가상컴포트를 여는 것 입니다.

 


1.VSPE로 가상컴포트 열기

http://www.eterlogic.com/Products.VSPE.html

해당 링크에서 쉽게 설치 할 수 있습니다. 다운로드칸에서 자신의 컴퓨터 설정에 맞게 설치 해 주시면 됩니다.

vspe화면

설치 후 실행하면 해당 화면이 보이는데 이 화면에서 빨간색 네모칸을 누르시면 어떤 형식의 컴포트를 열지에 대한 창이 뜹니다.

 

두번째창

저희는 이번에 간단히 가상컴포트를 여는 과정이므로 기본설정인 Connector상태로 다음을 누른 뒤 완료 해줍니다.

완성 COM2

이런식으로 타이틀에 컴포트가 설정이 되고 Status가 Ready상태면 완성입니다. 여러분들은 벌써 가상 컴포트를 여는데 성공하셨습니다! 코드에 들어가기 앞서 데이터가 실제로 주고 받아지는지 확인을 위해 comanalyzer를 설치해 주셔야합니다. comanalyzer는 구글링으로 간단하게 찾으실 수 있습니다.

 


2. COMANALYZER 설정

 

컴아날라이저 화면

comanalyzer를 실행하시면 다음과 같은 화면이 보이는데 여기서 빨간 네모박스 통신 설정을 눌러 본인이 만든 가상 컴포트에 맞춰줍니다. 저같은 경우에는 COM2로 해당 컴포트에 맞췄습니다. 통신속도는 기본설정인 9600입니다. 지금은 가상으로 기본으로 맞췄기때문에 통신속도가 크게 상관이없지만 실제 시리얼 통신을 할때는 굉장히 중요합니다. 통신속도나 패리티비트 등이 맞지않으면 쓰레기값이 들어 오게 됩니다.

 


3. 코드

 

import serial

serialTest=serial.Serial(port='COM2',baudrate=9600)

serialTest.write(bytes('hi',encoding='ascii')

굉장히 간단한 코드입니다. python의 라이브러리로 serial을 pip로 설치하시면 import 할 수 있습니다. 개체생성시 인자값은 컴포트 번호 그리고 통신속도입니다. write의 경우에는 여러가지 형식으로 데이터를 보낼 수 있습니다. 이 예제에서는 아스키 값으로 통신을 하였습니다. 보통 바이너리값으로 통신을 주고 받긴합니다. 하지만 처음 접하시는 분들을 위해 제작한 포스팅이기 때문에 이해가 쉽게 아스키 값으로 보내보겠습니다.

 

통신성공!

해당 코드를 실행한 뒤 결과 값입니다. 아스키값 hi를 잘 통신해 받았습니다. 이걸로 아주 간단하게 시리얼 통신을 해봤습니다. read의 경우에는 더욱더 쉽습니다. 위에 예제로 따지면 serialTest.read() 이코드 하나면 데이터를 받을 수 있습니다.

 

반응형

댓글