當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]引 言 在我國,擁有手機(jī)的用戶已很普遍,更新也很快,價(jià)格也越來越低。因?yàn)槠涔ぷ鞯臒o線網(wǎng)絡(luò)覆蓋范圍廣,在信息傳遞方面,性能穩(wěn)定、可靠。所以把手機(jī)作為信息傳遞的載體,與單片機(jī)結(jié)合起來構(gòu)成應(yīng)用系統(tǒng)有著強(qiáng)大的生

引 言
在我國,擁有手機(jī)的用戶已很普遍,更新也很快,價(jià)格也越來越低。因?yàn)槠涔ぷ鞯臒o線網(wǎng)絡(luò)覆蓋范圍廣,在信息傳遞方面,性能穩(wěn)定、可靠。所以把手機(jī)作為信息傳遞的載體,與單片機(jī)結(jié)合起來構(gòu)成應(yīng)用系統(tǒng)有著強(qiáng)大的生命力和廣闊的應(yīng)用空間,特別是在遠(yuǎn)程數(shù)據(jù)傳輸、遠(yuǎn)程監(jiān)控等領(lǐng)域更是受到電子設(shè)計(jì)應(yīng)用工程師的關(guān)注和采用。一些專業(yè)刊物也介紹了一些有關(guān)這方面的文章,然而由于手機(jī)的控制指令復(fù)雜,數(shù)據(jù)格式繁瑣,工程技術(shù)人員在進(jìn)行單片機(jī)與手機(jī)的硬軟件接口設(shè)計(jì)時(shí)經(jīng)常會(huì)遇到很多困難,有時(shí)還無資料可查。作者在完成一個(gè)項(xiàng)目的開發(fā)過程中,針對(duì)幾種手機(jī)進(jìn)行了大量的測(cè)試和實(shí)驗(yàn),在此基礎(chǔ)上歸納出一些帶規(guī)律性的結(jié)論,對(duì)此結(jié)論,工程設(shè)計(jì)人員可拿來即用,大大縮短研發(fā)周期,現(xiàn)把它公布出來,愿與廣大電子設(shè)計(jì)人員共享。

1、單片機(jī)與手機(jī)的硬件接口

目前市場(chǎng)上流行的大部分手機(jī)幾乎都具有數(shù)據(jù)引出口,并基本上都支持與GSM短信息相關(guān)的AT控制指令(GSM—SMS—AT指令),手機(jī)通過數(shù)據(jù)口以串行方式接收指令并向外輸出數(shù)據(jù)。理論上講,在數(shù)據(jù)口中找出RXD、TXD和GND引腳與單片機(jī)的串口對(duì)應(yīng)連接即完成了硬件接口,然而,實(shí)際上由于不同品牌,不同型號(hào)手機(jī)的RXD、TXD和GNG引腳并非一致,找查這三根線有時(shí)也非易事,況且手機(jī)數(shù)據(jù)口的電平既不是RS232電平,也不是TTL電平,與由5V供電的單片機(jī)的串口還不能直接聯(lián)接。最簡單、最可靠的方法是使用手機(jī)的數(shù)據(jù)線建立單片機(jī)與手機(jī)的硬件連接。手機(jī)數(shù)據(jù)線是專為連接PC機(jī)9針串口而設(shè)計(jì)的,一是信號(hào)電平為標(biāo)準(zhǔn)的RS232電平,只要單片機(jī)的串口也轉(zhuǎn)換為RS232電平,就可方便連接。二是9針串口引腳定義是固定的,即2 腳為TXD(手機(jī)發(fā)送),3腳為RXD(手機(jī)接收)、5腳為GNG,這樣,無論什么型號(hào)的手機(jī)與單片機(jī)的連接就成了固定連接,不需要知道手機(jī)數(shù)據(jù)口信號(hào)的具體定義,二者通過數(shù)據(jù)線的連接電路如圖1所示:

 
需要注意的是:不同手機(jī)數(shù)據(jù)線內(nèi)部電平轉(zhuǎn)換芯片的供電方式是不同的,有的是通過手機(jī)直接供電;有的是通過竊取PC機(jī)串口某些引腳(通常為4、6、7、8引腳)的電流經(jīng)內(nèi)部整流濾波穩(wěn)壓后提供,判斷的方法是將數(shù)據(jù)線一端插到手機(jī)數(shù)據(jù)口,測(cè)量另一端2腳與5腳之間的電壓,如果有-7V左右的電壓,則為前者,如果測(cè)不出電壓,則為后者,對(duì)于后者則需要單片機(jī)為4、6、7、8、引腳任意一引腳提供+5V電壓即可,如圖1中虛線所示。

2、單片機(jī)與手機(jī)的軟件接口及控制原理

單片機(jī)與手機(jī)的軟件接口其實(shí)就是單片機(jī)通過與GSM短信息有關(guān)的AT指令控制手機(jī)的控制技術(shù),如讀取手機(jī)的短消息內(nèi)容,刪除短消息內(nèi)容,列出手機(jī)中還未讀的短消息等。關(guān)于AT指令的功能描述請(qǐng)讀者參考“參考文獻(xiàn)”所示的文章內(nèi)容,此處不再贅述。然而,執(zhí)行一條指令,也并非某些資料中介紹得那么簡單,事實(shí)上,指令的執(zhí)行過程需要單片機(jī)與手機(jī)交互應(yīng)答完成,每一次發(fā)送或接受的字節(jié)數(shù)有嚴(yán)格的規(guī)定,二者必須依據(jù)這些規(guī)定實(shí)現(xiàn)數(shù)據(jù)交換,否則,通信就是失敗的,作者經(jīng)過對(duì)幾種手機(jī)反復(fù)測(cè)試,總結(jié)出來一些規(guī)律,如表1所示:

   




現(xiàn)對(duì)幾個(gè)問題說明如下:

⑴所有AT指令的指令符號(hào)、常數(shù)、PDU數(shù)據(jù)包等都是以ASCII編碼形式傳送的,比如“A”的ASCII編碼為41H,“T”的ASCII編碼為54H,數(shù)字“0”的 ASCII編碼為30H等。

單片機(jī)控制手機(jī)工作,必須把手機(jī)的短信息工作模式設(shè)置為PDU格式,即通過指令A(yù)T+CMGF=0完成。

⑶單片機(jī)向手機(jī)發(fā)送每一條指令后,必須以回車符作為該條指令的結(jié)束,回車的ASCII編碼為0DH,例如單片機(jī)向手機(jī)發(fā)送“AT+CMGF=0”這條指令,其ASCII編碼序列為“41H、54H、2BH、42H、4DH、47H、46H、3DH、30H、0DH”,最后一個(gè)字節(jié)0DH就是回車符,表示該條指令結(jié)束,如果沒有這個(gè)回車符,手機(jī)將不識(shí)別這條指令。

⑷當(dāng)手機(jī)接收到一條完整的AT指令后,手機(jī)并不立即執(zhí)行這條指令,而是①先把剛才接收到的AT指令的全部ASCII編碼序列全部反發(fā)送出來(含0DH);②其次發(fā)送一個(gè)回車符和換行符的ASCII編碼,即0DH和0AH;③執(zhí)行該條指令。

⑸手機(jī)向單片機(jī)傳送短信息內(nèi)容時(shí),其PDU數(shù)據(jù)包的內(nèi)容是以16進(jìn)制表示的數(shù)據(jù),但并不是直接向單片機(jī)傳遞16進(jìn)制數(shù)據(jù),而仍然是把每一位16進(jìn)制數(shù)以ASCII編碼來發(fā)送。這樣,二個(gè)字節(jié)的16進(jìn)制數(shù)就變成4個(gè)字節(jié)的ASCII碼。但是,PDU數(shù)據(jù)包中的數(shù)據(jù)字節(jié)長度部分仍然是實(shí)際字節(jié)長度,而不是變成ASCII碼的字節(jié)長度,這在編程時(shí)應(yīng)特別注意,否則,接收的數(shù)據(jù)就不完整。單片機(jī)接收到PDU數(shù)據(jù)包數(shù)據(jù)后,必須將其恢復(fù)成16進(jìn)制數(shù)據(jù),其算法如下:

設(shè): a為接收的ASCII碼,b為轉(zhuǎn)換后的16進(jìn)制數(shù)。那么:如果a<39H,則b=a-30H;如果a>39H,則b=a-30H-07H。最后把前后兩個(gè)數(shù)合并為一個(gè)字節(jié)。

⑹手機(jī)向單片機(jī)應(yīng)答PDU數(shù)據(jù)包的字節(jié)數(shù)不包括前9個(gè)字節(jié)數(shù)據(jù) (短信服務(wù)中心地址),但向單片機(jī)傳送PDU數(shù)據(jù)包時(shí),包括這9 個(gè)字節(jié)的數(shù)據(jù),例如,如果手機(jī)應(yīng)答的pdu數(shù)據(jù)長度為50,而實(shí)際向單片機(jī)傳送的16進(jìn)制數(shù)據(jù)為59字節(jié),ASCII碼為2*59字節(jié),所以,單片機(jī)必須按2*59個(gè)字節(jié)接受pdu數(shù)據(jù)。

3、應(yīng)用舉例

作者利用上述原理和接口技術(shù)開發(fā)了一個(gè)項(xiàng)目:高速公路顯示導(dǎo)引系統(tǒng)。安裝在高速公路上的LED顯示屏實(shí)時(shí)顯示前方路段車輛通行態(tài)勢(shì),和天氣氣候情況,提醒并引導(dǎo)駕駛?cè)藛T,正確駕駛。該系統(tǒng)的使用一定程度上消除了許多交通事故隱患,從而保障了道路的暢通和人民生命財(cái)產(chǎn)的安全。該系統(tǒng)由控制中心和若干個(gè)顯示屏組成??刂浦行膶?shí)時(shí)將最新信息發(fā)送到各顯示屏。構(gòu)建控制中心與顯示終端的通信鏈路,傳統(tǒng)的方法要么鋪設(shè)光纜用有線方式實(shí)現(xiàn),要么構(gòu)建專用無線網(wǎng)用無線方式實(shí)現(xiàn)。因?yàn)楦咚俟返奶厥庑?,控制中心與顯示終端之間的距離通常很遠(yuǎn),兩種方案都必須投入大量資金和巨大的施工工作量。如果采用GSM公眾無線傳輸網(wǎng)絡(luò),控制中心以短信息的形式把顯示信息發(fā)送到顯示終端的技術(shù)方案,則具有投資小,施工方便,工作可靠,運(yùn)行費(fèi)用低等諸多優(yōu)點(diǎn)。

在控制中心,微機(jī)編輯好短信息后通過手機(jī)這個(gè)載體發(fā)送出去,在顯示終端,單片機(jī)通過讀取手機(jī)的短信息把它顯示到LED顯示屏上。項(xiàng)目的核心技術(shù)是單片機(jī)與手機(jī)的接口和PDU數(shù)據(jù)包中的漢字信息編碼,因?yàn)槎绦畔⒅械臐h字僅僅是一個(gè)編碼,單片機(jī)應(yīng)用系統(tǒng)將編碼變?yōu)闈h字點(diǎn)陣數(shù)據(jù),必須配置漢字字庫。按照GSM07.05協(xié)議規(guī)定,短信息中的漢字編碼為unicode編碼,如果,構(gòu)建一個(gè)unicode編碼的漢字字庫,確實(shí)是一件繁瑣的工作,因此,在設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)時(shí),采用了如下兩點(diǎn)技術(shù)措施?! ?/p>

1)單片機(jī)系統(tǒng)配置的字庫為GB-2312編碼的漢字庫,即區(qū)位碼漢字庫,該漢字庫在網(wǎng)上可免費(fèi)下載,固化到Flash存儲(chǔ)芯片中即可。當(dāng)然這樣做的前提是,PDU數(shù)據(jù)包中的漢字編碼必須為漢字內(nèi)碼而非Unicode編碼。

2)控制中心編輯PDU數(shù)據(jù)包數(shù)據(jù)時(shí),采用自定義數(shù)據(jù)方式,其中,代表漢字的數(shù)據(jù),直接取用漢字的機(jī)內(nèi)碼即可,免去了把機(jī)內(nèi)碼再轉(zhuǎn)換為Unincode編碼之苦。實(shí)踐證明,這是可行的。

采用以上技術(shù)措施的優(yōu)點(diǎn),一是省去了兩種編碼的相互轉(zhuǎn)換;二是保證了數(shù)據(jù)的保密性,非系統(tǒng)內(nèi)用戶無法接收,即使接收也無法顯示。

該項(xiàng)目研制成功投入使用后,因顯示終端只接收不發(fā)送,幾乎沒有運(yùn)行成本。發(fā)送端(控制中心)可采用月租方式,也能把運(yùn)行費(fèi)用降低到最低限度。因此該項(xiàng)目受到用戶滿意的評(píng)價(jià)。

參考文獻(xiàn)
[1] 薛棟梁單片機(jī)原理與應(yīng)用[M] 北京水利水電出版社 2001
[2]李鴻用單片機(jī)控制手機(jī)收發(fā)短信息電子技術(shù)應(yīng)用2002
[3]馬潮嵌入式GSM短信息接口的軟硬件設(shè)計(jì)單片機(jī)及嵌入式應(yīng)用 2002
[4] http://m.lujuzi.cn
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉