Android Things에서 시리얼 통신(UART)(PL2303HX 내장 USB 시리얼 변환 케이블 사용)

UART란?



USB 직렬 변환 케이블




아마존 등에서 구입할 수 있습니다.

선의 의미




칼라
의미


레드
5V PWR

블랙
GND

화이트
UART0 TX

녹색
UART0 RX


배선도





Mac에서 연결


$ ls /dev/tty.*

로 연결된 기기 확인
$ screen /dev/tty.usbserial 115200

에서 연결 (/dev/tty.usbserial은 위에서 확인한 장치 지정)

실행 결과



위의 screen 명령을 실행하면 기본적으로 다음과 같이 표시되며 콘솔에 들어갈 수 있습니다.
나머지는 adb shell로 연결했을 때와 마찬가지로 명령을 실행할 수 있습니다.
rpi3:/ $

절단 방법



Control + a를 누른 다음 a만 놓고 k를 누릅니다.

Really kill this window [y/n]

라는 메시지가 표시되므로 y를 누르면 연결이 끊어집니다.

직렬 포트 설정 변경



Raspberry Pi 3의 초기 설정에서 직렬 포트는 콘솔에 로그인합니다. 이를 비활성화하고 프로그램에서 사용할 수 있도록 설정합니다.
  • microSD를 꺼내 PC에 마운트합니다

  • RPIBOOT/cmdline.txt를 열고 다음 부분을 삭제합니다

  • console=serial0,115200

    이렇게하면 프로그램에서 UART로 직렬 통신을 수행 할 수 있습니다.

    샘플 코드 얻기



    Google이 샘플 코드를 제공하기 때문에 이번에는 이를 활용합니다.
    git clone https://github.com/androidthings/sample-uartloopback.git
    

    샘플 코드 실행



    그대로 실행하면 직렬 연결하여 입력한 문자열이 그대로 표시됩니다.

    이 상태가 제대로 작동하는지 모르기 때문에 LoopbackActivity.java의 165 행을

    mLoopbackDevice.write(buffer, read);
    mLoopbackDevice.write(buffer, read);

    처럼 두 줄로 해보겠습니다. 그러면 입력한 문자가 두 번 표시되는 것을 확인할 수 있습니다.

    좋은 웹페이지 즐겨찾기