2014-02-06 2 views
0

micromax MMX310G 3G USB 관리자 (모뎀 아님)의 AT 명령을 사용하여 SMS를 보내려고합니다. 인터넷없이 airtel sim을 사용합니다.Micromax MMX310G USB 관리자를 사용할 때 AT 주석이 작동하지 않습니다.

string recievedData = ExecCommand(port,"AT", 300, "No phone connected"); 
recievedData = ExecCommand(port,"AT+CMGF=1", 300, "Failed to set message format."); 
String command = "AT+CMGS=\"" + PhoneNo + "\""; 
recievedData = ExecCommand(port,command, 300, "Failed to accept phoneNo");   
command = Message + char.ConvertFromUtf32(26) + "\r"; 
recievedData = ExecCommand(port,command, 3000, "Failed to send message"); 

내가 AT를 디버깅하고 AT + CMGF가 ok를 반환하고 다른 명령이 오류를 반환 할 때. USB 관리자를위한 다른 AT 명령이 있습니까? Aircel 데이터 카드를 사용할 때 똑같은 코드가 작동합니다. AT 명령을 실행하기 위해 sim에서 활성화하려면 인터넷이 필요합니까? 당신의 소중한 의견이 이것에 도움이 될 수 있습니다.

답변

0

여기에 AT 명령을 처리하는 근본적인 잘못된 방법이 있으며, 작동하면 운이 좋다는 여러 가지 일을합니다.

우선 ExecCommand에 대한 세 번째 인수와 같은 지연을 절대로 사용하지 마십시오. 그리고프롬프트를 받기 전에 AT + CMGS의 데이터 부분을 보내지 않아야합니다. 해당 지점에 대한 자세한 내용은 this answer의 첫 번째 부분을 참조하십시오.

그리고 명령을 보낸 후에 최종 명령 코드를 얻기 전까지 다음 명령을 시작하기 전까지 모뎀에서 응답을 읽지 않도록 처리 논리를 변경해야합니다. 자세한 내용은 this answer을 참조하십시오.

관련 문제