USB 포트를 통해 UART 장치를 연결하는 데 문제가 있습니다.

USB 포트를 통해 UART 장치를 연결하는 데 문제가 있습니다.

USB를 통해 두 개의 UART 장치와 통신하려고 합니다. HT-06 블루투스 모듈과 GY-NEO6MV2 GPS 모듈. 저는 Prolific PL2303 USB 케이블을 사용하고 있습니다. 백업용으로 Silicon Labs CP2102도 있습니다.

PL2303을 연결하면

  • 명령 lsusb이 반환됨
    Bus 001 Device 015: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
    
  • 그리고 dmesg명령이 반환됩니다.
    [147697.657037] usb 1-11: pl2303 converter now attached to ttyUSB0
    
  • 쇼 의ls -l/dev
    crw-rw----  1 root dialout   188,   0 Jun 15 08:58 ttyUSB0
    

그룹 에 나 자신을 추가하고 dialout로 설정 chmod했습니다 666.

/dev/ttyUSB0그런 다음 Port , Baud 9600 및 Parity 8,1,None 과의 직렬 연결로 Putty를 사용합니다 . PL2303 케이블을 HT-06에 GND-GND, VCC-VCC, TX-RX 및 RX-TX로 연결합니다. 모든 매우 기본적인 것들.

Putty 화면은 왼쪽 상단에 커서가 있는 것으로 시작됩니다. AT 명령을 보냅니다. 나는 괜찮을 것으로 기대하지만 아무 일도 일어나지 않습니다. 두 번째 HT-06이 있지만 아직 아무것도 없습니다.

RX 또는 TX 케이블이 파손된 것일 수 있다고 생각하여(HT-06에서 LED가 깜박이므로 VCC와 GND가 정상임) PL2303을 CP2102로 교체했습니다. lsusb와 dmesg 모두 변환기가 (다시 에 /dev/ttyUSB0) 연결되어 있음을 알려줍니다. 동일한 Putty 설정을 사용해도 여전히 아무것도 얻지 못합니다.

유사한 라인을 따라 NEO6M을 PL2303 및 CP2102와 모두 연결하고 xgps(의 하위 집합 gpsd)을 사용했습니다. 오류가 반환됩니다.

gpsd is not connected to /dev/ttyUSB0

분명히 아무 일도 일어나지 않습니다.

저는 CP210X와 PL230X용 드라이버가 모두 포함된 커널 5.4.0-74-generic과 함께 Linux Mint 20을 사용하고 있습니다. 또한 다른 USB 포트(USB2 및 USB3)도 시도했습니다. 2개의 다른 USB-TTL 변환기, 3개의 UART 장치 및 여러 가지 직렬 터미널 앱(또한 시도해 보았고)에도 불구하고 minicomm아무것도 rfcomm작동하지 않습니다.

답변1

이전에 훨씬 오래된 Linux 버전이었을 때 내 PC에서 작동했던 오래된 Arduino를 찾아냈습니다. 최신 Arduino IDE 및 직렬 모니터를 사용하면... 작동합니다. 이제 HC-06 및 NEO6m 장치 모두와 통신할 수 있습니다. 내가 원하는 해결 방법은 아니지만 해결 방법입니다.

답변2

tty 구성 stty --all -F /dev/ttyUSB0을 공유하고 CLOCAL 플래그를 확인하고 모든 구성 플래그를 확인하고 하드웨어 구성도 확인하세요. DB9 커넥터에 대한 배선 구성이 다릅니다. 또한 속도는 전송 속도 또는 비트 전송률(드라이버 구성에 따라 다름)이라는 점을 기억하십시오. 따라서 9600의 비트 전송률을 원하는 경우 때때로 속도를 1200으로 설정해야 합니다.

답변3

picocom( sudo apt install picocom) 프로그램을 사용하여 모뎀을 작동하게 했습니다 .

picocom /dev/ttyUSB0

그런 다음 명령을 입력하면 됩니다. 또한 작동하지 않으면 sudo를 사용해 보십시오.

관련 정보