• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > WinCE系統下GSM Modem的測控應用

    WinCE系統下GSM Modem的測控應用

    作者:安徽省淮北704臺 武斌 李建軍 時間:2008-06-30 來源:單片機與嵌入式系統應用 收藏

      在系統下,利用 Modem和現有的網,通過軟件編程手段,實現用普通電話(包括手機)對遠程工業現場的某些工作參數的監測和控制。

    本文引用地址:http://www.czjhyjcfj.com/article/84953.htm

      其中的監測數據以語音形式體現。文中給出了語音合成的具體實現方法。

      引言

      許多時候,我們需要了解遠距離的某個工作現場的某些工作參數,或者對某些工作指標進行控制(開、關控制)。例如,需要了解遠距離無人職守的發射機的功率情況,需要開啟或關閉高山上電視塔的燈光,等等。這些一般都是通過基于C/S或者B/S等的網絡手段來實現的,需要專門的網絡線路和監控端軟硬件的支持,構筑這樣的應用系統投資一般都比較大,監控方位置的靈活度也被局限于有監控端軟硬件的環境中。這里介紹一種在系統下利用 Modem,用普通電話(包括手機,下同)就可以實現遠程監控的方法。不需要有專用的監控端軟硬件的支持和其他專用的網絡線路,借助GSM的無線通信網絡,投資大大縮小;監控方的位置可以處在任何有電話的地方,方便靈活。監控操作的選擇由電話的按鍵來實現,監測到的參數通過語音的方式反饋到監控方的電話上;可以滿足大多數遠程監控應用場合的要求。

      1  應用系統架構

      本系統主要由GSM網、GSM Modem、以S3C2410為核心的硬件和系統組成,如圖1所示。


    圖1  系統架構

      需要監測的參數或需要控制的指標通過某種方式與系統構成上、下位采集與控制體系。嵌入式系統發出測控指令,可以實現對現場相應數據的采集和控制。采集到的現場數據以數據文件形式保存在嵌入式系統上。目前,有關嵌入式系統對下位現場的具體采集與控制操作介紹的文獻很多,這里不再復述。

      2  嵌入式系統受監控端軟件設計

      嵌入式系統中受監控端軟件是本監控系統的核心。它一方面管理GSM Modem識別遠程電話的控制指令(按鍵識別)、向電話反饋對應的語音數據,另一方面還要根據遠程電話的指令完成對下位現場的測控。

      2.1  串行口及GSM Modem的初始化

      根據GSM Modem連接的串行口,comID用hSerial=CreateFile(TEXT ("comID"),GENERIC_READ | GENERIC_WRITE,0, NULL, OPEN_EXISTING, 0, NULL);

      打開該串行口。根據返回句柄hSerial的值,可以判斷打開是否成功。由“GetCommState(hSerial,&dcb);”獲得comID的狀態,同時自動填入不用的DCB結構成員。再用“SetCommState(hSerial,&dcb);”就可以初始化該串口了。之前,&dcb要設置自己的參數,如:

      最后用“ WriteFile(hSerial,szBuffer,strlen(szBuffer),&dwBytesWritten,&os_w);” 向串口寫入GSM Modem的初始化數據(AT命令)。不同的GSM Modem其AT命令可能有所不同(可以從GSM Modem的用戶手冊中獲得)。筆者使用的GSM Modem的初始化數據為“ats0=1+fclass=8”、“at+vsm=128,11025”。

      2.2  按鍵識別

      因為監控指令是由遠程電話通過電話上的按鍵發出的,所以在受監控端,正確識別電話的按鍵是非常關鍵的。在一個處理線程中,可以用如下程序進行識別:

      運行后,有電話撥入并按下567890,執行結果如圖2所示。




    圖2  按鍵識別測試

      對于按鍵組合,可以將單個鍵的值依次存放到緩沖區。在程序中控制好flag的值就可以實現對按鍵組合的識別。

     

    linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 精河县| 静海县| 炎陵县| 门头沟区| 洪江市| 图木舒克市| 喀喇沁旗| 宁城县| 黑河市| 冷水江市| 阿克| 太仆寺旗| 昌都县| 肃宁县| 体育| 黄大仙区| 临泉县| 宣武区| 墨玉县| 普定县| 隆德县| 徐闻县| 崇礼县| 海阳市| 皮山县| 大厂| 德令哈市| 海淀区| 土默特右旗| 瓦房店市| 成都市| 柳州市| 丰县| 谢通门县| 工布江达县| 克拉玛依市| 苗栗县| 上虞市| 辰溪县| 黄陵县| 凤凰县|