2017-12-22 40 views
-1

Sir, AT 명령을 통해 PDU 형식으로 SMS를 보냈습니다. 내가 명령에 따라 UDH로 내가 사용하고 & UDHL을 메시지를 보낼 수 있지만, 나에게 오류를 표시하려고 할 때 + CMGS = 18 0011000C912933634241140000AA04D370DA0CPdu 형식으로 SMS 연결 보내기

메시지 AT 은 = 24 + CMGS AT ..... 을 successfuly.But을 보내 0011000C912933634241140000AA05000303020104D370DA0C 내 코드에서 무엇이 잘못 되었습니까?

+0

에서입니까? – saif

+0

누구든지 도와주세요 – saif

+0

나는 어떤 도움도없이 내 일을 끝냈습니다. 하나님 께 감사드립니다. – saif

답변

0

7 비트 인코딩입니까? 이 문제를 직접 해결하기 위해 노력하고있어 문제 자체는 UDH가 메시지 부분 (04D370DA0C)에 패딩이 필요하다는 것입니다 (적어도 내 경우에는). 아래

텍스트 내가 AT 명령을 통해 PDU 형식으로 긴 SMS를 보낼 수있는 방법 https://en.wikipedia.org/wiki/Concatenated_SMS#PDU_Mode_SMS

the UDH is a total of (number of octets x bit size of octets) 6 x 8 = 48 bits long. Therefore, a single bit of padding has to be prepended to the message. The UDH is therefore (bits for UDH/bits per septet) = (48 + 1)/7 = 7 septets in length. 

With a message of "Hello world", the [message] is encoded as 

90 65 36 FB 0D BA BF E5 6C 32 
as you need to prepend the least significant bits of the next 7bit 
character whereas without padding, the [message] would be 

C8 32 9B FD 06 DD DF 72 36 19 
and the UDL is 7 (header septets) + 11 (message septets) = 18 septets. 
+0

이것은 실제로 질문에 대답하지 않습니다. 다른 질문이있는 경우 [질문하기] (https://stackoverflow.com/questions/ask)를 클릭하여 질문 할 수 있습니다. [평판] (https://stackoverflow.com/help/privileges/set-bounties)을 충분히 확보하면 [현상금 추가] (https://stackoverflow.com/help/privileges/set-bounties)를 통해이 질문에 더 집중할 수 있습니다. 평판). - [리뷰에서] (리뷰/저품절 게시물/18920746) – Patrick