新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 一種基于Sim卡座的GPRS無線通信模塊設計

        一種基于Sim卡座的GPRS無線通信模塊設計

        作者: 時間:2014-04-13 來源:網絡 收藏

        無線數傳模塊

        本文引用地址:http://www.104case.com/article/236430.htm

        無線模塊作為終端的無線收發模塊,把從單片機發送過來的IP包或基站轉來得的分組數據進行相應的處理后再轉發。

        模塊采用德國ens公司生產的MC35模塊。MC35模塊主要由射頻天線,內部Flash、SRAM、GSM基帶處理器、匹配電源和一個40腳的ZIF插座組成。GSM基帶處理器是核心部件,其作用相當于一個協議處理器,用來處理外部系統通過串口發送AT指令,射頻天線部分主要實現信號的調制和解調,以及外部射頻信號與內部基帶處理器之間的信號轉換,匹配電源為處理器基射頻部分提供所需的電源。MC35的外圍電路如圖4所示。

        ?

        ?

        圖中,由AS2815將外部電壓轉換成3.3V工作電壓。系統中的啟動電路由三極管和上電復位電路組成,模塊上電后,為使之正常工作,必須在15腳加至少100ms的低電平信號,啟動后,15腳信號應保持高電平。

        MC35在ZIF連接器上為SIM卡接口預留的引腳數為6個,要注意的是,CCIN引腳用來檢測SIM卡座是否插有SIM卡,當插入SIM卡,該引腳置為高電平時,系統方可進入正常工作。

        SYNC引腳有兩種工作模式:一種是指示發射狀態時的功率增長情況,另一種是指示MC35的工組狀態,本設計中使用后一種模式,LED熄滅時,表明MC35處于關閉或睡眠狀態;當LED為600ms亮/600ms熄時,表明SIM卡沒有插入或MC35正在進行網絡登陸;當LED為75ms為亮/3s熄時,表明MC35已登陸進入網絡,處于待機狀態。

        單片機通信程序設計

        該程序軟件中的所有代碼都用C語言編寫,在Keil環境中編譯,Keil是Keil Software公司為8051及其兼容產品提供的專門開發工具,它支持在系統調試,Keil中C51譯碼器很好地集成了RTX多任務實時操作系統,編寫程序時,需在源代碼頭加入“#incluede rtx51.h”.所有代碼調試后經由TI Downloader下載到存儲器中。

        目前,絕大多數基于GPRS網絡應用系統所使用的GPRS模塊不支持TCP/IP協議,也就是說,要想工作在相同的網絡層面上,其內部傳輸的數據必須都要采用相同的協議,所以除了利用GPRS模塊的功能外,必須在單片機系統中嵌入按TCP/IP和PPP協議標準編寫的程序,從而使設計的終端設備能夠方便的應用GPRS數據分組業務。

        ◇ TCP/IP協議的嵌入

        有很多種方法可以完成協議轉換,本設計利用在嵌入式實時操作系統RTX51中移植部分IP和PPP協議來增強系統的可擴展性和產品開發的可延續性。

        TCP/IP協議是一個標準協議套件,可以用分層模型來描述,數據打包處理數據時,每一層把自己的信息添加到一個數據頭中,而這個數據頭又被下一層中的協議包裝到數據體中。數據解包處理程序接收到GPRS數據時,把相應的數據頭剝離,并把數據包的其余部分當做數據體對待。

        考慮到嵌入式系統的特點,本設計采用了系統開銷較小的IIP+UDP協議來實現GPRS通信,主機發送的UDP數據報文經GPRS通道傳送給GPRS通信模塊,GPRS通信模塊負責對數據報進行解析,解析后的數據按照一定的波特率串行傳送給用戶終端。

        ◇ 數據處理

        數據包在主機和GPRS服務器群中傳輸使用的是基于IP的分組,即所有的數據報文都要基于IP包,但明文傳送IP包不可取。故一般使用PPP協議進行傳輸,模塊向網關發送PPP報文都會傳送到Internet網中相應的地址。而從Internet傳送過來的應答幀也同樣會根據IP地址傳送到GPRS模塊,從而實現采集數據和Internet網絡通過GPRS模塊的透明傳輸。

        要注意的是,GSM網絡無靜態IP地址,故其他通信設備不能向它提出建立連接請求,監控中心必須擁有一個固定的IP,以便監測終端可以在登陸GSM網絡后通過該IP找到監控中心,關于這一點,很容易解決,只需在電信申請相應的服務就可以了。

        GPRS模塊登陸上GSM網絡后,自動連接到數據中心,向數據中心報告其IP地址,并保持和維護數據鏈路的連接,GPRS監測鏈路的連接情況,一旦發生異常,GPRS模塊自動重新建立鏈路,數據中心和GPRS模塊之間就可以通過I地址通過UDP/IP協議進行雙向通信,實現透明的可靠數據傳輸。

        上位機監控中心的設計

        監控中心的功能是實現GPRS信息的接收和保存,設計語言采用Microsoft公司的Visual C++編程語言,C++語言應用靈活,功能強大,并對網絡編程和數據庫有強大的支持。

        由于通過GPRS中心監控部分可以直接訪問互聯網,所以監控部分并不需要再設置GPRS模塊,中心只需通過中心軟件偵聽網絡,接收GPRS無線模塊傳來的UDP協議的IP包和發送上位機控制信息,以實現與GPRS終端的IP協議通信。接收到的信息要保存到中心的數據庫中,以備查歷史記錄。數據庫采用Access,用VC編制的界面窗口能推動AD()訪問Access中的數據,也可通過Socket接收網絡終端信息。

        Socket接口是TCP/IP網絡的API,Socket接口定義了許多函數和例程,程序員可以利用它來開發TCPIP網絡上的應用程序,VC中的MFC列提供了CAsyncSocket這樣一個套接字類,用它來實現Socket編程非常方便,本設計采用數據報文式的Socket,這是一種無連接的Socket,對應于無連接的UDP服務應用。

        CAsyncSocket使用DoCallBack函數來處理MFC消息,一個網絡事件發生時,DoCallBack函數按照網絡時間類型FD_READ、FD_WRITE、FD_ACCEPT和FD_CON-NECT來分別調用OnReceive、OnSend、OnAccept和OnCon-nect函數,以驅動相應的事件,從而完成網絡數據通信。

        結束語

        本文采用嵌入式TCP/IP協議,通過高速8位單片機實現GPRS業務的數據傳輸功能,具有外圍電路少,電路簡單,系統成本低等優點,通過標準RS232串口和外部控制器連接,只需按照預先規定的協議就可互相通信,通用性較強,系統軟件均使用C語言編寫,稍加改動就可以在各種控制器上實現,可移植性也較強。

        基于GPRS的系統有有一定的缺點,例如,現在的GPRS網還不夠穩定,有丟包的現象,主控制器要實現IP協議,使用起來比較復雜;上位機基于互聯網的解決方案保密性較差等,上述問題經過精細設計是可以避免和解決的,所以基于GPRS的設計仍具有無可比擬的優勢。

        c++相關文章:c++教程


        tcp/ip相關文章:tcp/ip是什么


        數字通信相關文章:數字通信原理


        通信相關文章:通信原理


        存儲器相關文章:存儲器原理


        電能表相關文章:電能表原理

        上一頁 1 2 下一頁

        關鍵詞: GPRS Sim

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南召县| 揭阳市| 高雄县| 镇安县| 白水县| 丰都县| 共和县| 太和县| 沂南县| 阜新| 凤台县| 公安县| 漯河市| 防城港市| 靖州| 吴忠市| 扎囊县| 毕节市| 贡嘎县| 乳源| 遵义市| 桑植县| 肥东县| 巴林左旗| 开鲁县| 沙河市| 酒泉市| 沁阳市| 融水| 西充县| 平潭县| 会东县| 大安市| 阳江市| 黄骅市| 蕉岭县| 惠水县| 南平市| 万载县| 田阳县| 彭山县|