버추얼 박스(VirtualBox)에 설치된 Ubuntu에 USB2Serial 데이터 송수신

2020. 1. 9. 16:56기타

1. PC에 2개의 USB2Serial을 창작

 - COM3과 COM4로 인식됨

2. 2개의 USB2Serial을 크로스(Cross)로 연결

3. 연결이 잘 되는지 테스트

 - 2개의 PUTTY로 각각의 포트를 연결하여 테스트

 - Baudrate는 9600으로 동일

*** 여기까지 잘 됐으면 물리적인 연결은 제대로 되었음

 

4. VirtualBox를 구동한 다음 다음과 같이 설정

  - Ubuntu는 설치되어있다고 가정

5. VirtualBox의 시작버튼을 눌러서 VM을 시작한다. 

만약 윈도우 설정 시리얼 포트를 다른 프로그램이 사용중이면 VM이 시작되지 않는다.

(3번의 putty를 닫지 않아 발생한 문제임)

6. VM이 구동되고 나면 Ubuntu의 터미널을 실행하여 command를 입력한다

   > dmesg | grep tty

7. ttyS0가 나타난다.(만약 4번에서 COM2를 선택했으면 ttyS1이 보임)

 

8. stty -F /dev/ttyS0 명령을 보내면 포트정보를 알 수 있다.

  (여기서는  baudrate가 9600)

  * 참고로 "stty 115200 < /dev/ttyS0" 명령어는 baudrate를 바꿀 수도 있음

  cat /dev/ttyS0 명령어로 수신대기

9. 윈도우에서  putty로 COM3번 접속한다.

(3번과 4번은 연결되어 있고, 4번은 VirtualBox에서 쓰고 있기 때문에)

10. putty에서 텍스트를 입력한 다음 엔터를 치면 리눅스 터미널에서 보인다.

(우분투에서 시리얼 프로그램을 사용하면 엔터 안 치고도 보이고, 서로 주고 받을 수도 있다!!! 귀차니즘)