RJ-45 <-> RS-232, RS-232 쪽을 교체하고 이더넷 포트를 COM 포트로 남용할 수 있나요?

RJ-45 <-> RS-232, RS-232 쪽을 교체하고 이더넷 포트를 COM 포트로 남용할 수 있나요?

우리는 "보드 쪽"에 RJ-45 잭이 있고 케이블의 반대쪽에 RS-232 플러그가 있는 특정 공급업체의 PCIX 보드(MIPS CPU 포함)를 가지고 있습니다. 예상되는 프로토콜은 두 시스템 간에 널모뎀 케이블을 사용할 때와 분명히 동일합니다.

이제 이 케이블을 양쪽 끝에 RJ-45 커넥터가 있는 표준 패치 코드로 교체할 수 있는 Linux 또는 *nix 버전이 있는지 궁금합니다(명백한 이유로 크로스오버 없음). 누군가 유사한 사용 사례를 제안한 것을 읽었 socat지만 사용 사례가 너무 난해해 해당 주제에 대한 문서가 거의 존재하지 않는 것 같습니다. 물론 제가 지금까지 검색어를 잘못 사용했을 가능성도 있습니다.

추론: 요즘에는 COM 포트가 있는 장치를 찾기가 거의 어렵지만 대부분 이더넷 포트가 있습니다. 게다가 보드가 접근하기 어려운 위치에 있어서 접속을 위해 모바일 기기를 사용해 왔습니다. 그러면 COM 포트가 있는 시스템을 찾는 것이 더 어려워집니다.

알아채다:나는 USB 장치에 대한 RS-232를 알고 있지만 더 다재다능해 보이기 때문에 지적된 솔루션을 선호합니다.

답변1

정확히 무엇을 원하는지 명확하지 않습니다. 기존 이더넷 포트를 사용하려는 경우 여러 가지 이유로 옵션이 아닙니다. 가장 기본적인 것은 이더넷에 정확한 종료 및 전압 수준이 필요하며 인터페이스의 하드웨어(PHY)가 이를 처리하도록 설계되었다는 것입니다. 문제를 위해 설계되었습니다. 이더넷은 +/-0.85V 및 50Ω 터미널 임피던스를 엄격하게 사용하며, RS-232는 최소 +/- 3V 및 최대 +/-25V(일반적으로 +/-12V)를 사용합니다. 제 생각에는 이더넷 포트를 RS-232 회선에 연결하려고 하면 네트워크 인터페이스가 손상될 것 같습니다.

Socat은 완전히 다른 수준에 있으며 여기서는 전혀 사용되지 않습니다. TCP/IP 통신 도구입니다. 기본 하드웨어의 전기적 특성에 대해 아무것도 모릅니다. RS232 회선을 통해 통신할 수 있지만 TCP에 대해 이야기합니다. 이것이 작동하려면 상대방이 TCP와 통신해야 합니다.

이제 보드를 설계하는 경우 유선 RJ45 잭을 직렬 I/O 포트에 연결할 수 있습니다. 이는 바로 PCIX 보드 제조업체가 수행하는 작업입니다. 나는 또한 이와 같은 Cisco 라우터를 본 적이 있습니다.

실제로 필요한 도구는 RS232->USB 변환기입니다.

답변2

많은 장치는 직렬 포트에 비표준 커넥터를 사용합니다. RJ-45는 아마도 DB-9 다음으로 가장 일반적으로 사용되는 RS-232 직렬 커넥터일 것입니다. 그러나 DB-9와는 달리사실은핀아웃은 표준입니다. 나는 4개의 다른 RJ-45 RS-232 핀아웃을 알고 있는데, 아직 보지 못한 다른 핀아웃도 있을 수 있습니다.

이 중 어느 것도 사람들이 이더넷을 직렬로 변환하고 있다는 의미는 아닙니다. 그들은 단지 동일한 커넥터를 사용하게 되었습니다.

이 변환을 제공하는 많은 제품이 있으며 실제로 대부분 직렬 측에 RJ-45 커넥터를 사용합니다. 단일 포트 변환기의 예는 다음과 같습니다.디지털원SP. 더 일반적인 것은 여러 직렬 포트를 제공하는 상자입니다.디지 포트 서버그리고Avocent(이전의 Cyclades) 콘솔 서버. 이것은 많은 예 중 단지 두 가지에 불과합니다. Digi와 Avocent는 의심할 여지 없이 가장 큰 두 회사이지만 비슷한 일을 하는 소규모 회사도 많이 있습니다.

/dev/ttyWHATEVER이러한 상자 중 일부는 드라이버를 설치하여 운영 체제에 표시됩니다. 이것의 장점은 직렬 포트와 통신하는 방법을 아는 모든 프로그램이 변환기에 연결된 원격 장치와 통신할 수 있다는 것입니다. 대부분의 경우 드라이버는 변환기를 기본 직렬 포트와 다르지 않게 보이게 만듭니다. 예를 들어, 프로그램이 변환기 /dev/노드 중 하나를 열고 cfsetospeed()이를 호출하여 직렬 포트의 비트 전송률을 설정하면 드라이버는 명령을 원격 변환기 상자로 전달하여 해당 포트의 직렬 비트 전송률을 변경합니다.

이러한 유형의 변환기를 사용할 때의 주요 문제점은 특정 커널에 대해 작동하는 드라이버를 찾는 것이 항상 가능하지는 않다는 것입니다. 이 문제는 RS-232의 인기가 떨어지면서 더욱 일반화되었습니다. 이는 이러한 장치를 제공하는 회사가 커널 차이를 추적하기 위해 드라이버를 지속적으로 향상시킬 동기가 적다는 것을 의미하기 때문입니다.

직렬-이더넷 변환기의 또 다른 주요 유형은 순전히 네트워킹 장치입니다. 예를 들어 Cyclades 상자의 경우 DHCP 서버에서 IP 10.1.2.3을 받으면 TCP 포트 7001을 통해 10.1.2.3에 연결하여 첫 번째 직렬 포트에 연결할 수 있습니다. TCP 포트 7002를 두 번째 직렬 포트로 사용할 수 있습니다.

이 유형의 변환기를 사용하여 직렬 포트 매개변수를 설정하려면 일반적으로 변환기 상자에서 호스팅되는 웹 관리 UI를 사용해야 합니다. 이는 변환기로 자동 직렬 포트 매개변수 전달과 같은 기능을 얻을 수 없다는 것을 의미하지만, 드라이버 없이 TCP 연결을 열 수 있는 모든 프로그램과의 호환성을 얻을 수 있습니다.

관련 정보