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설정했습니다 .chmod666

/dev/ttyUSB0그런 다음 Putty를 사용하여 포트 , 전송 속도 9600 및 패리티 8,1,None 과 직렬 연결을 만들었습니다 . 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 설정을 사용해도 여전히 아무것도 얻지 못합니다.

xgps비슷한 방식으로 ( )의 하위 집합을 사용하여 NEO6M을 PL2303 및 CP2102와 인터페이스했습니다 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를 사용해 보십시오.

관련 정보