는 .NET 시리얼 포트 객체도 (치명적인 일이 발생할 때까지 즉,) 당신에게 오류를 제공하지 않을 수 있습니다.
가장 일반적인 직렬 포트 통신 오류는 전송 속도 불일치로 인해 발생합니다. '에코'를 얻을 수 있다는 메시지가 있으면 핸드 셰이크 작업의 일환으로 시도하십시오. 아마도 연결하려는 장치에 '상태'메시지가 표시되었을 것입니다. 그것을 요청할 때 아무런 해가 없으며 의사 소통이 제대로 이루어지고 있는지를 알 수 있습니다.
소프트웨어 핸드 셰이 킹 (xon xoff)의 경우 제대로 구성되었는지 여부를 감지 할 수있는 방법은 거의 없습니다. 직렬 포트 개체는 기본 직렬 포트 드라이버 구현에 따라 스레드 예외 예외가 발생하면이 매개 변수를 완전히 무시한 상태에서 모든 작업을 수행 할 수 있습니다. xon/xoff를 완전히 무시한 직렬 포트 드라이버를 사용하고 문자를 프로그램에 직접 전달합니다. 예.
하드웨어 핸드 셰이 킹의 경우 장치 작동 방식에 따라 전송 속도에 대한 기본 반향 전략이 작동 할 수 있습니다. 하드웨어 핸드 쉐이킹을 수행 할 것이라는 것을 알고 있으면이를 감지하여 켤 수 있습니다. 장치가 하드웨어 핸드 셰이 킹을 필요로하고 켜져 있지 않은 경우 아무 것도 얻을 수 없으며 반대의 경우도 마찬가지입니다.
거의 사용되지 않는 또 다른 설정은 DTR 핀 - 데이터 터미널 준비 상태입니다. 일부 시리얼 장치는 이것이 데이터 송신을 시작할 시간임을 나타 내기 위해 이것이 어설 션되어야합니다 (예 : true로 설정). 기본적으로 false로 설정됩니다. 소용돌이 치기.
직렬 포트 개체가 ... 까다 롭습니다. 꼭 필요한 것은 아니지만, 변경하기 전에 포트를 닫는 것을 고려할 것입니다.
편집 : this이 장치처럼 당신의 의견에
덕분에, 그것은 보인다.이 기본 설정이되어야합니다 말한다 :
- 1200 보드
- 홀수 패리티
- 1 정지 비트
- 하드웨어 핸드 쉐이킹
그것은 얼마나 많은 데이터 비트를 지정하지 않지만 장치는 7과 8을 지원한다고 말합니다. 또한 600, 1200, 2400, 4800, 9600 및 19200 보오를 지원합니다.
하드웨어 핸드 쉐이킹을 켜고 DTR을 활성화하고 (다른 기능) 모든 다른 전송 속도를 순환하면 사용자 설정이 아니라는 가능성이 있습니다. 사용중인 직렬 케이블이 장치에 잘못 연결되었을 수 있습니다. 일부 직렬 케이블은 '통과 (passthrough)'케이블입니다. 한 쪽의 1-9 핀은 다른 쪽의 1-9 핀과 정확히 일치합니다. 그런 다음 "TX"및 "RX"케이블이 전환되는 '크로스 오버'케이블이 있습니다 (한 쪽이 전송할 때 다른 쪽이 매우 편리한 케이블을 수신 할 수 있도록).
명령 표 거기에 매뉴얼의 뒷면에; 어떤 유형의 에코 백을 얻기 위해 발행 할 수있는 "인쇄 소프트웨어 버전"명령이 있습니다.
기기에서 기대하는 데이터의 형식을 설명하여 확장 할 수 있으십니까? –
모델 번호를 사용할 수 있다면 사용중인 실제 장치에 대한 자세한 내용이 무엇인지 잘못 판단 할 수 있습니다. –