2011-11-06 4 views
2

usb 모뎀으로 전송 된 AT 명령의 결과를 보내고받는 방법을 알고 싶습니다.AT 명령어의 결과를 C에서 USB 모뎀으로 보내고 읽음 #

나는 정보를 많이 발견했습니다,하지만 난 최선의 방법이 무엇인지 모르는 :이 발견했습니다

: http://social.msdn.microsoft.com/Forums/en-US/netfxnetcom/thread/800f12fa-4da8-42bf-b61b-65f6bb58c871/

하지만 쓰기를 발견하고 종류 읽었습니다 이상한 ...

누군가 다른 것을 가지고 있습니까?

감사합니다.

편집 : 붙여 넣기 링크는 내가 그것을 시도했습니다 아주 좋았어요 그것은 나에게 널 예외를 준

확실하지 않다.

SerialPort sp = new SerialPort(); 
      sp.PortName = "COM3"; 
      sp.Open(); 
      sp.Write("AT<CR>"); 

하지만 정말 결과를 읽는 방법을 모르는 사람은 아이디어가 :

지금 나는이 노력하고있어? 난 그냥 sp.DataReceived 이벤트를 연결, 정확하게 WPF 응용 프로그램에서 같은 일을하고 있어요 거기 당신이 데이터를 얻을 수 sp.ReadExisting()을 사용할 수

+1

'sp.Read'가 트릭을해야합니다. COM 포트를 통해 모뎀과의 통신을 지원하는 모뎀이 있어야하며, 모뎀 설정과 일치하도록 프로그램에 올바른 COM 포트를 설정해야합니다. –

+0

그래,이 매개 변수를 보았지만 얼마나 많은 바이트를 읽어야하는지 어떻게 알 수 있습니까? – GregM

+0

그렇지 않습니다. 그냥 큰 버퍼를 만들고 그 크기를 전달하십시오. 'var buffer = new byte [4096];와 같이. 함수의 반환 값은 버퍼에 읽은 바이트 수를 알려줍니다. –

답변

3

(내 나쁜 영어 죄송합니다).

+1

Ok : http://www.daniweb.com/software-development/csharp/threads/232090, 지금 당장 시도하고 있습니다. 더 explicative nextime하려고하면 :),하지만 지금은 +1 – GregM

+0

@ 그렉 그것이 당신의 문제를 해결하는 방법을 찾는데 도움이된다면, 나는 그것이 충분하다고 생각한다 - 나는 USB 모뎀과 통신하는 작동하는 응용 프로그램을 가지고있다. 다른 질문이 있으면 기꺼이 도와 드리겠습니다. – Leo