在網上買了個stm32開發板和SIM800C模塊板,整理一下模塊發短信功能的學習筆記。忘大家勿噴,共勉!利用Unicode 字符集編碼 ,發送下面的中英文短信。
(1) 接收號碼: +8613316931709
(2) 短信內容: 歡迎使用飛思創 SIM800C 模塊
(3) 發送的有效數據長度:43 ( 后面將會說明如何計算出該長度)
發送中英文短信所使用到的命令有: AT+CMGF 、 AT+CSMP 、 AT+CSCS 、AT+CMGS
其中的命令格式不再做詳細介紹 , 請自行查看 AT 。注意的一點就是,命令后面記得加回車
只有發送結束符命令 0X1A 的后面不需要加回車。
操作步驟如下:
第一步:設置短信模式為文本模式,發送 AT+CMGF=1 ,模塊會響應 OK 。
第二步:設置中英文模式,發送 AT+CSMP=17,167,1,8 , 模塊會響應 OK 。
第三步:設置為 UCS2 字符集編碼。 AT+CSCS=”UCS2”,模塊會響應 OK 。
第四步:設置對方的手機號碼。這時候要使用 Unicode 。
第五步:待模塊響應出現“>”之后,才能發送短信內容。在發之前短信內容需要轉換成 Unicode編碼。短信內容為“歡迎使用飛思創SIM800C模塊!”,轉換后的Unicode編碼 。注意圖中編碼間的間隔需要手動去除。
“6B228FCE4F7F752898DE601D521B00530049004D00380030003000436A215757FF01 ”
綜合以上步驟,演示結果如下圖所示:
輸入1A不加回車把左下角十六進制發送打鉤,點擊手動發送。稍等幾S會出現發送成功的返回信息。單片機程序設計中發送字符串”\r\n”。圖中的+CMGS:54 ,表示發送第54條短信。
|