문제

루비의 직렬 포트를 통해 일부 커뮤니케이션을해야합니다. 내 연구에서, 직렬 통신을위한 최신 라이브러리가 많지 않으며 내가 찾을 수있는 최신 자료는 2006 년입니다. 내가 알지 못하는 보석이 있습니까?

궁극적으로 USB에 첨부 된 직렬 장치 (포트를 파악할 수 있음)와 같은 통신을 유지해야합니다 (다소 Ruby-esque pseudo 코드).

def serial_write_read
  if serial.read == "READY"
    serial.write "1"
    until serial.read == "OK"
      serial.write "5"
    end
    return when serial.read == "DONE"
  end
end
도움이 되었습니까?

해결책

일련의 포트 사양은 영원히 변경되지 않았으며 라이브러리가 몇 살인지 걱정하지 않습니다.

나는 당신이 본 적이 있다고 가정합니다 이것 2006 년 루비 및 직렬 항구에 관한 기사

여기에 있습니다 얻은 사람 루비-시리얼 포트 도서관은 올해 Mac에서 일할 것이라고 언급했습니다.

또한 있습니다 이 오래된 게시물 Ruby Talk에서 인터페이스에 대한 Win32 Serial API에 이르기까지.

다른 팁

Ruby-Serialport를 검색하면 때때로 여기에 이끌어 줄 수 있습니다.

Toholio의 Github Repo는 더 이상 활성화되지 않은 것 같습니다 (2010 년 9 월 기준). 출판 된 보석은 출발합니다

http://github.com/hparra/ruby-serialport

일련의 표준은 변경되지 않았지만 Ruby Gems가 Ruby C 확장과 상호 작용하는 방식은 수년에 걸쳐 충분히 변경되어 Rubyforge Serial Port 확장이 잘 작동하지 않을 것입니다. Rubyforge에는 수년 동안 그것을 고치기 위해 몇 가지 패치가 있었지만 예쁘지는 않았습니다. 좋은 소식은 Github가 활동에 놀라운 가속을 허용하여 Ruby Serial Port Extension을 정리할 수 있다는 것입니다. 적어도 세 명의 다른 사람들이 Github에서 직렬 포트 코드를 교차 브랜칭하고 있습니다. Github에서 검색 할 수는 있지만 Toholio는 최신 코드를 가지고 있는데,이 코드는 Ruby Serial Port를 Ruby Gem으로 다시 포장하고 재 포장합니다. (응!)

http://github.com/toholio/ruby-serialport/tree/master

그것은 Linux에서 저에게 훌륭하게 작동하여 최신 Ruby Gems 릴리스와의 초기 충돌을 해결합니다. Windows에서는 여전히 작동하는 데 문제가 있습니다. Windows에서 Ruby Extensions를 컴파일하는 것은 결코 쉽지 않지만 그것은 전체적인 벌레 캔입니다. 사람들이 루비 직렬 포트 지원을 다시하고 있다는 것이 기쁩니다. 나는 Toholio에게 Wind

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top