- 相關(guān)推薦
用單片機(jī)控制手機(jī)收發(fā)短信息
摘要:介紹用MCS-51系列單片機(jī)控制手機(jī)收發(fā)短信息的原理、硬件電路、PDU數(shù)據(jù)格式和符合GSM07.05協(xié)議要求的短信息發(fā)送/接收程序,同時(shí)給出了一個(gè)應(yīng)用實(shí)例。GSM(Global System for Mobile communication)系統(tǒng)是目前基于時(shí)分多址技術(shù)的移動(dòng)通訊體制中比較成熟、完善、應(yīng)用最廣泛的一種系統(tǒng)。目前已建成的覆蓋全國(guó)的GSM數(shù)字蜂窩移動(dòng)通信網(wǎng),是我國(guó)公眾移動(dòng)通信網(wǎng)的主要方式。主要提供話音、短信息、數(shù)據(jù)等多種業(yè)務(wù);贕SM短消息功能可以做成傳輸各種檢測(cè)、監(jiān)控?cái)?shù)據(jù)信號(hào)和控制命令的數(shù)據(jù)通信系統(tǒng),能廣泛用于遠(yuǎn)程監(jiān)控、定位導(dǎo)航、個(gè)人通信終端等。由于公眾GSM網(wǎng)絡(luò)在全球范圍內(nèi)實(shí)現(xiàn)了聯(lián)網(wǎng)和漫游,建立上述系統(tǒng)不須再組建專(zhuān)用通信網(wǎng)絡(luò),所以具有實(shí)時(shí)傳輸數(shù)據(jù)功能的短消息應(yīng)用將得到迅速普及。
目前,人們?cè)O(shè)計(jì)的各類(lèi)DTE設(shè)備基礎(chǔ)上以微處理器為核心,帶有RS232/RS485等通信接口,在物理層上很容易實(shí)現(xiàn)與GSM設(shè)置(如手機(jī)等)的連接。但對(duì)SMS協(xié)議的研究文獻(xiàn)卻較少,特別是用單片機(jī)控制手機(jī)的SMS(Short Message Service)收發(fā)的研究更少。筆者在用單片機(jī)設(shè)計(jì)基于GSM的SMS數(shù)據(jù)采集器時(shí),對(duì)怎樣用單片機(jī)控制手機(jī)收發(fā)短信息進(jìn)行了探討。
1 串口控制SMS的工作原理
單片機(jī)與手機(jī)一般采用串行異步通信接口,具有紅外和通信電纜兩種連接方式,通信速度可設(shè)定,通常為19200bps。采用紅外接口的優(yōu)點(diǎn)是單片機(jī)系統(tǒng)與手機(jī)電氣隔離,相互不干擾,接口各自獨(dú)立,使用方便;缺點(diǎn)是通信距離較短,紅外傳播的方向性對(duì)接口相對(duì)位置有要求。采用電纜連接時(shí),數(shù)據(jù)傳輸?shù)目煽啃暂^好;其主要缺點(diǎn)是接口的電氣參數(shù)不兼容,設(shè)計(jì)不當(dāng)時(shí)會(huì)對(duì)手機(jī)的通信質(zhì)量產(chǎn)生影響。筆者經(jīng)過(guò)實(shí)踐設(shè)計(jì)的接口電平轉(zhuǎn)換電路如圖1。
GSM的短信息業(yè)務(wù)SMS利用信令信道傳輸,這是GSM通信網(wǎng)所特有的。它不用撥號(hào)建立連接,把要發(fā)的信息加上目的地址發(fā)送到短信息服務(wù)中心,經(jīng)短消息服務(wù)中心完成存儲(chǔ)后再發(fā)送給最終的信宿。所以當(dāng)目的GSM終端沒(méi)開(kāi)機(jī)時(shí)信息不會(huì)丟失。每個(gè)短消息的信息量限制為160字節(jié)。
現(xiàn)在市場(chǎng)上大多數(shù)手機(jī)均支持GSM07.05規(guī)定的AT指令集。該指令集是ETSI(歐洲通信技術(shù)委員會(huì))發(fā)布的,其中包含了對(duì)SMS的控制。利用GSM手機(jī)的串行接口,單片機(jī)向手機(jī)收發(fā)一系列的AT命令,就能達(dá)到控制手機(jī)收發(fā)SMS的目的。ETSI的GSM07.05中用于SMS收發(fā)控制的主要AT命令見(jiàn)表1。
表1 常用AT指令
GSM手機(jī)通過(guò)異步通信接口實(shí)現(xiàn)對(duì)SMS的控制共有三種接入?yún)f(xié)議:Block Mode;基于AT命令的TextMode;基于AT命令的PDU Mode。PDU模式是發(fā)送或接收手機(jī)SMS信息的一種方法,短信息正文經(jīng)過(guò)十六進(jìn)制編碼后被傳送。目前,PDU Mode應(yīng)用最為廣泛,基本上全國(guó)所有的電信局都提供支持PDU Mode的短消息業(yè)務(wù)。有些地址則不支持Text Mode和Block Mode,這就限制了這兩種接入?yún)f(xié)議的應(yīng)用,而且PDU Mode已有取代Block Mode的趨勢(shì)。為了保證系統(tǒng)具有廣泛的適用性,本文采用PDU模式收發(fā)SMS。
PDU相當(dāng)于一個(gè)數(shù)據(jù)包,它由構(gòu)成消息(SMS)的信息組成。作為一種數(shù)據(jù)單元,它必須包含源/目的地址、保護(hù)(有效)時(shí)間、數(shù)據(jù)格式、協(xié)議類(lèi)型和正文,正文長(zhǎng)度可達(dá)140字節(jié),它們都以十六進(jìn)制表示。PDU結(jié)構(gòu)根據(jù)短消息由移動(dòng)終端發(fā)起或以移動(dòng)終端為目的而不同。
當(dāng)由移動(dòng)終端發(fā)起時(shí),PDU的格式為:
SMSCPDU類(lèi)型MRDAPIDDCSVPUDLUD(0~140octed)當(dāng)以移動(dòng)終端為目的時(shí),PDU的格式為:
SMSCPDU類(lèi)型OAPIDDCSSCTSUDLUD(0~140octed)其中,SMSC為短消息業(yè)務(wù)中心地址,DA/OA為源/目的地址,PID為協(xié)議識(shí)別,DCS為數(shù)據(jù)編碼,UDL為用戶(hù)數(shù)據(jù)長(zhǎng)度,UD為用戶(hù)數(shù)據(jù),VP為有效時(shí)間,MR指明是發(fā)出信息,SCTS指明短消息到達(dá)業(yè)務(wù)中心的時(shí)間。
2 PDU格式下短信息的接收
根據(jù)設(shè)置不同,手機(jī)將收到的短消息保存在緩存單元或存入SIM卡,單片機(jī)從手機(jī)中接收短消息實(shí)質(zhì)上就是從SIM或緩存中讀出信息。這主要利用AT CMGR和AT CMGL兩條指令來(lái)完成,其工作過(guò)程見(jiàn)圖2。
由于不同的廠商對(duì)AT指令集的解釋代碼和響應(yīng)信息不一樣,所以單片機(jī)首先要確認(rèn)能否與手機(jī)建立起通信,一般用ATE指令完成此確認(rèn);然后用AT CMGF指令選定短消息的數(shù)據(jù)格式;在收到手機(jī)的正確回答反以AT指令完成讀出功能。一般用AT CMGL讀取以前的信息,在收到手機(jī)的RING(振鈴)數(shù)據(jù)時(shí),用AT CMGR讀取實(shí)時(shí)信息。
以下是筆者設(shè)計(jì)的物流數(shù)據(jù)采集系統(tǒng)中用到的接收SMS的一個(gè)實(shí)例,它說(shuō)明了PDU模式的應(yīng)用。單片機(jī)發(fā)送和接收(手機(jī)回答)均為ASCII碼。所用手機(jī)為SIEMENS S3508i。
操作過(guò)程如下({}內(nèi)為注釋?zhuān)?
發(fā)送:ATE
手機(jī)回答:OK {已建立聯(lián)接}
發(fā)送:AT CMGF=0 {
【用單片機(jī)控制手機(jī)收發(fā)短信息】相關(guān)文章:
單片機(jī)控制GSM模塊實(shí)現(xiàn)短信收發(fā)的軟件設(shè)計(jì)03-20
一種用單片機(jī)控制的光譜數(shù)據(jù)采集系統(tǒng)03-18
消毒柜單片機(jī)溫度控制11-22
單片機(jī)控制系統(tǒng)的抗干擾優(yōu)化設(shè)計(jì)03-18
一種簡(jiǎn)單串行鼠標(biāo)控制的單片機(jī)實(shí)現(xiàn)03-18
基于單片機(jī)控制的數(shù)字氣壓計(jì)設(shè)計(jì)與實(shí)現(xiàn)03-18