單片機控制手機的硬軟件接口技術(shù)及其應用
引 言
在我國,擁有手機的用戶(hù)已很普遍,更新也很快,價(jià)格也越來(lái)越低。因為其工作的無(wú)線(xiàn)網(wǎng)絡(luò )覆蓋范圍廣,在信息傳遞方面,性能穩定、可靠。所以把手機作為信息傳遞的載體,與單片機結合起來(lái)構成應用系統有著(zhù)強大的生命力和廣闊的應用空間,特別是在遠程數據傳輸、遠程監控等領(lǐng)域更是受到電子設計應用工程師的關(guān)注和采用。一些專(zhuān)業(yè)刊物也介紹了一些有關(guān)這方面的文章,然而由于手機的控制指令復雜,數據格式繁瑣,工程技術(shù)人員在進(jìn)行單片機與手機的硬軟件接口設計時(shí)經(jīng)常會(huì )遇到很多困難,有時(shí)還無(wú)資料可查。作者在完成一個(gè)項目的開(kāi)發(fā)過(guò)程中,針對幾種手機進(jìn)行了大量的測試和實(shí)驗,在此基礎上歸納出一些帶規律性的結論,對此結論,工程設計人員可拿來(lái)即用,大大縮短研發(fā)周期,現把它公布出來(lái),愿與廣大電子設計人員共享。
目前市場(chǎng)上流行的大部分手機幾乎都具有數據引出口,并基本上都支持與GSM短信息相關(guān)的AT控制指令(GSM—SMS—AT指令),手機通過(guò)數據口以串行方式接收指令并向外輸出數據。理論上講,在數據口中找出RXD、TXD和GND引腳與單片機的串口對應連接即完成了硬件接口,然而,實(shí)際上由于不同品牌,不同型號手機的RXD、TXD和GNG引腳并非一致,找查這三根線(xiàn)有時(shí)也非易事,況且手機數據口的電平既不是RS232電平,也不是TTL電平,與由5V供電的單片機的串口還不能直接聯(lián)接。最簡(jiǎn)單、最可靠的方法是使用手機的數據線(xiàn)建立單片機與手機的硬件連接。手機數據線(xiàn)是專(zhuān)為連接PC機9針串口而設計的,一是信號電平為標準的RS232電平,只要單片機的串口也轉換為RS232電平,就可方便連接。二是9針串口引腳定義是固定的,即2 腳為T(mén)XD(手機發(fā)送),3腳為RXD(手機接收)、5腳為GNG,這樣,無(wú)論什么型號的手機與單片機的連接就成了固定連接,不需要知道手機數據口信號的具體定義,二者通過(guò)數據線(xiàn)的連接電路如圖1所示:
需要注意的是:不同手機數據線(xiàn)內部電平轉換芯片的供電方式是不同的,有的是通過(guò)手機直接供電;有的是通過(guò)竊取PC機串口某些引腳(通常為4、6、7、8引腳)的電流經(jīng)內部整流濾波穩壓后提供,判斷的方法是將數據線(xiàn)一端插到手機數據口,測量另一端2腳與5腳之間的電壓,如果有-7V左右的電壓,則為前者,如果測不出電壓,則為后者,對于后者則需要單片機為4、6、7、8、引腳任意一引腳提供+5V電壓即可,如圖1中虛線(xiàn)所示。
單片機與手機的軟件接口其實(shí)就是單片機通過(guò)與GSM短信息有關(guān)的AT指令控制手機的控制技術(shù),如讀取手機的短消息內容,刪除短消息內容,列出手機中還未讀的短消息等。關(guān)于A(yíng)T指令的功能描述請讀者參考“參考文獻”所示的文章內容,此處不再贅述。然而,執行一條指令,也并非某些資料中介紹得那么簡(jiǎn)單,事實(shí)上,指令的執行過(guò)程需要單片機與手機交互應答完成,每一次發(fā)送或接受的字節數有嚴格的規定,二者必須依據這些規定實(shí)現數據交換,否則,通信就是失敗的,作者經(jīng)過(guò)對幾種手機反復測試,總結出來(lái)一些規律,如表1所示:
評論