가상 직렬 포트 만들기


9

내 맥에 가상 직렬 포트 한 켤레를 만들려고 노력하고있어. 이것은 PC에서 많은 셰어웨어 프로그램을 사용하면 상당히 쉽습니다. 한 줄에 이렇게하는 뻔뻔한 강력한 쉘 명령이있을 것이라고 생각했지만 찾지 못했습니다.

한 포트에 NMEA 데이터를 보내고 Google 어스에서 데이터를 다른 포트로 읽으려고합니다.

어떤 팁?

편집하다

미스터 다니엘 /dev/ptypx 댓글이 재미있을 것 같았다 - 나는 그것을 꺼낼 수있다. /dev/ttypx 그냥 터미널에서 잘.
그러나 Google 어스는 cu를 읽는 것 같습니다. 장치 이름 대신에 / ttypx 장치 ..

구체적으로 (구 프로) :

GPS (또는 가상 직렬 포트를 통해 파이프 된 NMEA 스트림)를 사용하여 현재 위치를 가져 오려고 할 때 도구 & gt; GPS & gt; 실시간으로 가져 오기 화면으로 이동합니다.
NMEA 옵션을 선택하고 실시간 추적을 활성화하면 연결된 장치를 찾고 다음과 같이 보입니다.

  • USB:
  • /dev/cu.Bluetooth-PDA-Sync
  • /dev/cu.Bluetooth-Modem
  • /dev/cu.iPhone-WirelessAP

ttypx 직렬 포트가 정상적으로 작동한다고해도, 찾지 않습니다.
해당 기기에서 Google 어스로 데이터를 가져오고 싶습니다.


1
+1, 나는 또한 장치 개발을 위해 이것을하고 싶다. ServerFault, 수퍼 유저 또는 StackOverflow 일 수도 있습니다.
— Max Ried

사용을 고려 했습니까? Google 위치 찾기 대신에? 허용되지 않는 경우 Google 어스의 기능에 대해 자세히 설명해주십시오.
— Old Pro

NMEA 포트를 통해 제공된 가짜 위치를 통해 Google 어스를 성공적으로 제어 한 적이 있습니까? 나는 이것이 어떻게 작동하는지에 관심을 가질 것이다.
— Max N

1
@ 맥스 N - 아니. 나는 포기 했어 :(
— DefenestrationDay

닫기입니다 (AppleScript). laclefyoshi.blogspot.com/2011/01/...
— Max N

답변:


7

Google은 Arduino 개발자를 위해 매우 유용한 도구를 갖추고 있으며 테스트 목적으로 OS X에서 직렬 포트를 매우 잘 시뮬레이트합니다. 10.6까지만 작동합니다.

https://github.com/clokey/PublicCode/tree/master/MacOSXVirtualSerialPort

(이전에 http://code.google.com/p/macosxvirtualserialport/ )

이게 도움이 될까요?


2
내 undeleting 이것을 용서하고 그것을 편집 - 나는 당신이 구글의 놀라운 가상 직렬 포트 소프트웨어를 데리고 오신 것을 환영합니다. 물론 그것을 다시 삭제할 수 있으며, 귀하의 취향에 따라 혼자 남겨 둘 것입니다.
— bmike

2
macosxvirtualserialport의 code.google.com 사이트에서 404 오류를 반환합니다.
— hotpaw2

1
Github에서 Google 프로젝트를 사용할 수있는 것 같습니다. github.com/clokey/PublicCode/tree/master/... 10.7까지 작동합니다.
— Max N

3

제 생각에 당신이 찾고있는 것은 Pseudo Terminal입니다. 텍스트 터미널 하우투 , Mac OS X이 내장 된 것처럼 보입니다. /dev 이게 당신이하고 싶은 일을 할 수있는 것처럼 보입니다. 두 개의 프로그램이 "가상"직렬 포트를 통해 함께 이야기합니다.

가짜 터미널은 / dev / ptyp3 및 / dev / ttyp3과 같은 장치 쌍입니다. 직렬 포트 커넥터가 아닌 물리적 장치가 직접 연결되어 있지 않습니다. 그러나 프로그램이 직렬 포트처럼 ttyp3을 처리하면 해당 포트에 읽고 쓰여지는 내용이 다른 프로그램에서 읽고 쓰는 데 사용하는 ptyp3 쌍의 다른 구성원에 나타납니다. 따라서 두 프로그램은이 방법을 통해 서로 이야기하고 ttyp3에있는 한 프로그램은 직렬 포트와 통신하고 있다고 생각합니다. 이 두 tty 사이의 "파이프"와 같은 것입니다.

또한, 화면 당신에게도 유용하게 프로그램 해주세요.


1

여기에 귀하의 질문에 몇 가지 각도가 있습니다 :

  • NMEA 트랙 등을 Google 어스에서 읽고 (표시 할 수있는) 것으로 변환하고 싶습니까? GPSBabel 이런 종류의 도구를 선택하는 도구입니다.
  • GPS를 연결하고 직렬 포트를 통해 콘텐츠를 읽고 싶습니까? Mac에는 직렬 포트가 없으므로 다음과 같은 것이 필요할 것입니다. 키이스 팬 USA-19HS USB를 통해 직렬 장치를 연결합니다.
  • 호기심에서 가상 시리얼 장치를 만들고 싶습니까? 그것은 확실히 가능하지만 내 지식을 넘어서는 것입니다 ...

1
옵션 3. NMEA 데이터를 (실시간으로) 실시간으로 표시하고 싶습니다. Google 어스는 직렬 포트에서 읽으므로 포트 설정 방법을 알아 내고 포트 중 하나에 파이프를 연결하면됩니다.
— DefenestrationDay

NMEA 데이터의 출처는 어디입니까? GPSBabel은 실시간 변환기로 작동 할 수 있습니다. gpsbabel.org/htmldoc-1.4.2/tracking.html
— nohillside

iPhone에서 스트리밍되었습니다. 나는 (특히 kml) 무엇이든 변환 할 필요가 없으며, nmea 데이터를 던지기 위해 가상 직렬 포트가 필요하며, Google 어스로 다른 끝 부분을 빨아 들여야합니다.
— DefenestrationDay

내가 사용할 때마다 키스 팬 나는 귀에 귀를 미소 짓는다. 특히 나의 새로운 11 인치 공기에 - 너무 많은 새롭고 오래되는 함께 일하는 ;-)
— bmike

0

내장 직렬 포트 탐지 기능을 가짜로 만들 수는 없지만 명명 된 파이프 (mkfifo) in /dev/cu.fake.ttypx 실시간으로 활성화 할 때 일부 데이터를 읽을 준비가되어 있어야합니다.

Google 어스의 사본은 각 잠재적 소스를 순서대로 폴링하는 것으로 보이며 제공되는 NMEA 데이터가 없기 때문에 계속 스캔 만합니다.

물론 작은 [shell | perl | python] 스크립트가 필요합니다. /dev/ttypx "fake"fifo 파일에 쓰십시오.



-1

나는 posix pseudoterminal을 사용하여 OSX C 프로그램에 가상 통신 포트를 만들었습니다. posix_openpt () 라이브러리 함수를 검색 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.