USB 직렬 링크 열기 도움말

USB 직렬 링크 열기 도움말

내 목표는 다음 명령을 사용하여 Segger 직렬 링크를 통해 ARM mmc와 통신하는 것입니다.

python3 -m serial.tools.miniterm -e /dev/ttyUSB3 115200

그러나 다음과 같은 오류 메시지가 나타납니다.

No such file or directory: '/dev/ttyUSB3'

dmesg를 사용하면 USB 포트에 연결된 Segger 직렬 장치를 볼 수 있습니다(아래 참조).

[159707.574338] usb 1-3: new full-speed USB device number 17 using xhci_hcd
[159707.724537] usb 1-3: New USB device found, idVendor=1366, idProduct=0101, bcdDevice= 1.00
[159707.724542] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[159707.724545] usb 1-3: Product: J-Link
[159707.724546] usb 1-3: Manufacturer: SEGGER
[159707.724548] usb 1-3: SerialNumber: 000801025943

그래서 USB3에 연결했지만 직렬 링크를 열 수 없는 것 같습니다. 또한 이것을 참조하십시오:

USER@USERdev:/dev$ ls -ld ttyU*
ls: cannot access 'ttyU*': No such file or directory

왜 직렬 링크를 열 수 없는지 아시나요? 저는 데비안 11.7을 사용하고 있습니다.

도와주셔서 감사합니다 :)

답변1

많은 장치 액세스 문제는 그룹 멤버십 변경으로 해결될 수 있습니다.

sudo journalctl --follow연결된 장치를 보면 장치 이름을 찾을 수 있습니다. 또는 ls -1 /dev >dev.before장치를 연결하고 10초 동안 기다리십시오 ls -1 /dev >dev.after;diff dev.{before,after}.

특히 ls -l 그룹 표시 권한(두 번째 " rwx" 삼중항)이 " rw"(예: " -rw-rw----")인 경우 장치를 소유한 그룹에 자신을 추가하면 rw액세스 권한이 부여됩니다.

그게 다야 :

# change to your device name 
device="/dev/ttyUSB3"
sudo adduser $USER $(stat -c "%G" $device)

이를 통해 장치를 사용할 수 있는 그룹의 구성원이 될 수 있습니다 rw.하지만 한 가지 단계가 더 있습니다.

모든 프로세스를 새 그룹의 구성원으로 만들려면 로그아웃한 후 로그인하세요. 그룹 멤버십은 시간 기준으로 설정됩니다 login.

새 그룹에서 단일 프로세스를 생성하려면(테스트용, 로그아웃/로그인 전):

newgrp $(stat -c "%G" $device)  

또는 그룹 이름을 입력하세요. 바라보다 man newgrp.

답변2

J-Link SEGGER의 기능을 사용하려는 것 같습니다.데이터 시트"가상 COM 포트"를 호출합니다(데이터시트의 5.14장).

그러나 먼저 "J-Link Commander" 또는 "J-Link Configurator"를 사용하여 이 기능을 활성화해야 할 수도 있습니다. 둘 다 Windows 응용 프로그램인 것 같습니다.

/dev/ttyUSB*Linux의 장치 노드는 USB-RS232(또는 RS485) 어댑터와 연결됩니다. Windows에서는 RS232 또는 RS485 포트를 COM 포트라고 합니다.

하지만 J-Link SEGGER(JTAG 디버거)는 기존 RS232 스타일 직렬 포트의 일반적인 데이터 전송 속도보다 훨씬 높은 데이터 전송 속도를 약속하므로 "가상 COM 포트 모드"는아니요USB를 통한 장치의 기본 통신 모드입니다. 대신, 더 높은 데이터 속도를 달성하기 위해 기본 USB 프로토콜을 사용할 수 있으며, 필요한 경우 상대적으로 느린 가상 COM 포트 에뮬레이션을 보조 기능으로 활성화해야 합니다.

사용 가능한 J-Link 구성 소프트웨어의 Linux 버전이 없는 경우 적절한 소프트웨어를 사용하여 J-Link 장치를 Windows 시스템에 일시적으로 연결해야 할 수 있습니다. 이를 사용하여 장치 설정을 변경하여 "Virtual COM"을 활성화해야 합니다. Port"를 선택하고 새 설정을 전송합니다. 장치에 저장한 다음 재구성된 장치를 Linux 시스템으로 다시 이동하고 다시 시도하십시오.

관련 정보