2013-08-28 2 views
3

PDU 모드에서 SMS를 보내려고합니다. 모뎀에 대한 사양을 확인했으며 PDU 모드를 지원합니다.PDU 모드에서 GSM 모뎀으로 SMS를 보내는 방법은 무엇입니까?

PDU 인코더 및 디코더를 개발했지만 이제 데이터를 모뎀에 보내는 방법을 알지 못합니다.

http://www.twit88.com/home/utility/sms-pdu-encode-decode :이 온라인 도구를 사용하여이 PDU의 정확성을 확인했다

AT+CMGW="16079189390500410011000C918939050000000000AA02E834" 

:이 같은 PDU 데이터를 전송 이러한 명령을 보낸 후

AT 

AT+CMGF=0 

: 나는 AT 명령이 시도

하지만 AT 명령을 통해 전송 한 후 모뎀이 중지됩니다.

SMS PDU를 보내는 것이 올바른 방법입니까? Google에서 검색 했으므로 유용한 정보를 찾을 수 없습니다. 모든

답변

5

첫째, 모뎀은 PDU 모드에있을 때 SMS를 보내려면 다음 명령을 보내야합니다 : 를 + CMGS AT = < 길이 길이 (PDU 바이너리 문자열의 길이 - 2)입니다 > <CR>/2 '>'기호가 표시되면 pdu 및 ctrl + z 문자를 보내야합니다 (char.ConvertFromUtf32 (26)). 여기

유용 할 수있는 몇 가지 리소스입니다 : http://www.developershome.com/sms/ SMS 튜토리얼 http://www.diafaan.com/sms-tutorials/gsm-modem-tutorial/online-sms-deliver-pdu-decoder/ 다른 온라인 PDU 디코더 (하지만 링크는 내 의견에 더 좋다) 명령 가이드 AT http://www.fccps.cz/img.asp?attid=24590 (WAVECOM에 대한,하지만 차이가 없습니다)

마지막 조언은 - 연결하고 모뎀을 테스트하고 PDU 문자열 =의

1

길이 응답 방식을 볼 수있는 텔넷 클라이언트를 사용하여 (- 2 - PDUlength ServiceCentreNumber 길이)/2

ServiceCentreNumber 길이는 PDU 문자열의 첫 번째 바이트입니다. (2 진수 문자 = 8 비트) PDU 모드 송신 SMS 용

명령 :

send:AT+CMGF=0     //recieved "\r\nOK\r\n" 
send:AT+CMGS=<length>   //recieved "\r\n> " 
send:<pdu string><char(26)> //recieved "\r\n+CMGS: 59\r\n\r\nOK\r\n" 

다른 변형 후 메모리에 MSG (코드 상기와 동일) 및 물품 대신 + CMGS 명령 + CMGW를 사용하는 + CMSS를 사용하여 메모리에서 메시지를 보냅니다.

관련 문제