0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于單片機和LT8030模塊實現(xiàn)SOCKET通信的應用設計

電子設計 ? 來源:單片機與嵌入式系統(tǒng)應用 ? 作者:余琴,趙振華 ? 2021-06-14 17:08 ? 次閱讀

GPRS(General Packet Radio Service)是通用分組無線業(yè)務的簡稱,是一種以全球手機系統(tǒng)(GSM)為基礎的數據傳輸技術。GPRS網不但具有覆蓋范圍廣、數據傳輸速度快、通信質量高、永遠在線和按流量計費等優(yōu)點,而且其本身就是一個分組型數據網,支持TCP/IP協(xié)議,無需經過PSTN(公用電話交換網)等網絡的轉接,可直接與Internet網互通。因此GPRS業(yè)務在無線上網、環(huán)境監(jiān)測、交通監(jiān)控、移動辦公等行業(yè)中具有無可比擬的性價比優(yōu)勢。

在網絡設置中有HTTP、SOCKET等類型。SOCKET是建立在傳輸層協(xié)議(主要是TCP和UDP)上的一種套接字規(guī)范,它定義兩臺計算機間進行通信的規(guī)范(也是一種編程規(guī)范)。如果說兩臺計算機是利用一個通道進行通信,那么這個通道的兩端就是兩個套接字。套接字屏蔽了底層通信軟件和具體操作系統(tǒng)的差異,使得任何兩臺安裝了TCP協(xié)議軟件和實現(xiàn)了套接字規(guī)范的計算機之間的通信成為可能。

1 系統(tǒng)組成

系統(tǒng)的組成如圖1所示。該系統(tǒng)利用現(xiàn)有的GPRS網絡,單片機通過串口對GPRS模塊進行收發(fā)控制,實現(xiàn)SOCKET通信。

系統(tǒng)各部分的說明如下:

① 單片機采用了AT89C52,它帶有一個串口;

② GPRS模塊。本文以利事達信息技術有限公司開發(fā)的GPRS模塊LT8030為例。LT8030內嵌了完整的TCP/IP協(xié)議棧,包括TCP、UDP、FTP、SOCKET、Telnet、POP3、SMTP、HTTP等,為用戶提供了更簡單的網絡接口。LT8030采用的GPRS技術,無縫覆蓋、永遠在線且按流量計費,緊密結合產品應用領域所遇到的實際問題,進行全面的優(yōu)化和升級,使產品開發(fā)變得更容易、更快捷。它采用標準的RS232 接口,用戶可以通過單片機或其他CPUUART口,使用相應的AT命令對模塊進行控制,達到使其產品可以輕松進入GPRS網絡的目的。

③ 服務器。建立SOCKET連接必須具有公網的IP地址,故應保證服務器中心計算機連接到Internet并且取得公網IP地址。在單片機對GPRS模塊控制之前,服務器端需運行SOCKET端口監(jiān)聽程序(此監(jiān)聽程序一般是現(xiàn)成的),并且設為監(jiān)聽狀態(tài),端口號也要設定,例如port:1024。

2 單片機與GPRS模塊的連接

單片機與GPRS模塊一般采用串行異步通信接口,通信速度可設定,通常為9600 bps。采用RS232電纜方式進行連接時,數據傳輸的可靠性較好。單片機通過電平轉換電路與GPRS模塊連接,電路比較簡單,電路原理圖如圖2所示。所涉及的芯片MAX232用于串行通信接口與232通信接口之間的電平轉換。

基于單片機和LT8030模塊實現(xiàn)SOCKET通信的應用設計

圖1 系統(tǒng)組成框圖

圖2 單片機與GPRS模擬連接的電路原理圖

MAX232的T1IN、T2IN、R1OUT、R2OUT為接TTL/CMOS電平的引腳;T1OUT、T2OUT、R1IN、R2IN為接RS232電平的引腳。TTL/CMOS電平的T1IN、T2IN引腳應接AT89C52的串行發(fā)送引腳TXD;R1OUT、R2OUT應接AT89C52的串行接收引腳RXD。與之對應,RS232電平的T1OUT、T2OUT應接GPRS模塊的接收端RXD;R1IN、R2IN應接GPRS模塊的發(fā)送端TXD。

現(xiàn)選用其中一路發(fā)送/接收,R1OUT接AT89C52的RXD,T1IN接AT89C52的TXD,T1OUT接GPRS模塊的RXD, R1IN接GPRS模塊的發(fā)送端TXD。因為MAX232具有驅動能力,所以不需要外加驅動電路。

3 建立SOCKET連接的命令

下面對SOCKET通信中要用到的一些AT命令進行說明。

3.1 基本設置

① GPRS ISP 碼。

AT+IISP1=*99***1# //全國通用

② 登錄用戶名。

AT+IUSRN=WAP//GPRS網絡登錄名

③ 登錄密碼。

AT+IPWD=WAP// GPRS網絡登錄密碼

④ MODEM 類型。

AT+IMTYP=2 //定義GPRS MODEM

⑤ 初始化命令。

AT+IMIS=“AT+CGDCONT=1,ip,CMNET”

⑥ 域名服務器。

AT+IDNS1=211.136.18.171

//DNS服務器地址,全國通用

⑦ 擴展碼(XRC)。

AT+IXRC=0

3.2 SOCKET設置

① 建立一個TCP通信。

AT+ISTCP:218.66.16.173,1024

建立SOCKET連接,218.66.16.173為應用服務中心計算機端IP地址(實際地址由實際情況決定),1024 為端口號(端口號由中心SOCKET端口監(jiān)聽程序設置決定)。 如果連接成功,LT8030返回I/xxx。xxx為LT8030中本次SOCKET連接的句柄號。中心監(jiān)聽程序會顯示連接的終端IP地址。如果連接失敗,LT8030返回I/ERROR(xxx)。xxx為錯誤代碼。

② 發(fā)送數據。

AT+ISSND%:xxx

發(fā)送數據,xxx為句柄,為要發(fā)送的字符長度,為要發(fā)送的數據。發(fā)送成功后,在中心端可看到終端發(fā)送的數據。最多一次能夠發(fā)送5K以下的數據。

③ 查詢SOCKET狀態(tài)。

AT+ISST:xxx

查詢SOCKET狀態(tài),xxx為句柄。 LT8030返回I/。如果= 000,表示該端口連接正常;如果≥1,LT8030通過該端口從中心接收存在Buffer 里的字節(jié)數;如果<0,則SOCKET錯誤。

④ 接收數據。

AT+ISRCV:xxx

xxx為句柄。該指令會讀取LT8030通過該句柄從中心接收到的,存在Buffer 里的數據;Buffer最大可存儲30K的數據。

⑤ 關閉SOCKET通道。

AT+ISCLS:xxx

關閉SOCKET通道,xxx為句柄。

4 程序的設計

根據單片機與GPRS模塊通信協(xié)議的約定,單片機串行口設為方式1,波特率為9 600 bps,8位UART,1位起始位,1位停止位,無奇偶校驗。上電后,首先向GPRS模塊發(fā)送基本設置命令,即ISP碼、用戶名及用戶密碼幀等,其中ISP碼必須為“*99***1#”,用戶名和用戶密碼可以任意設置,但不能為空。在使用LT8030 GPRS 上網功能之前,必須正確設置這些參數。參數一旦設置后,即永久保存,以后無需重新再設( 以上設定為LT8030C出廠時的默認參數)。然后向GPRS模塊發(fā)送SOCKET設置幀,如成功,則點和點通信環(huán)境已建立,接著就調用發(fā)送數據幀。

開機上電后,程序在主函數中運行,單片機進行初始化。初始化包括設置串口工作方式、波特率,并初始化變量參數和標志位。

結語

隨著計算機和通信技術的進步,當今社會的生產正朝著高效、準確和穩(wěn)定的方向發(fā)展,這對數據傳輸的實時性、可靠性、信息量提出了更高的要求,為此介紹利用GPRS模塊實現(xiàn)SOCKET通信的系統(tǒng)。本文采用內嵌TCP/IP協(xié)議的GPRS模塊LT8030,在8位微控制器AT89C52上實現(xiàn)了對LT8030的控制,并實現(xiàn)了基于GPRS的SOCKET通信功能,具有外圍器件少、電路簡單、系統(tǒng)成本低等優(yōu)點。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6030

    文章

    44499

    瀏覽量

    632166
  • 無線
    +關注

    關注

    31

    文章

    5419

    瀏覽量

    172987
  • GPRS
    +關注

    關注

    21

    文章

    983

    瀏覽量

    129308
收藏 人收藏

    評論

    相關推薦

    基于GPRS模塊LT8030SOCKET通信應用實現(xiàn)設計

    規(guī)范,它定義兩臺計算機間進行通信的規(guī)范(也是一種編程規(guī)范)。如果說兩臺計算機是利用一個通道進行通信,那么這個通道的兩端就是兩個套接字。套接字屏蔽了底層通信軟件和具體操作系統(tǒng)的差異,使得任何兩臺安裝了TCP協(xié)議軟件和
    發(fā)表于 07-16 07:48

    如何利用GPRS模塊實現(xiàn)SOCKET通信的系統(tǒng)?

    本文采用內嵌TCP/IP協(xié)議的GPRS模塊LT8030,在8位微控制器AT89C52上實現(xiàn)了對LT8030的控制,并實現(xiàn)了基于GPRS的
    發(fā)表于 05-31 07:00

    C語言怎樣通過socket編程實現(xiàn)單片機的WiFi模塊通信

    C語言通過socket編程實現(xiàn)單片機的WiFi模塊通信,讀取數據庫數據發(fā)送給單片機。C語言運行
    發(fā)表于 07-20 07:24

    基于GPRS模塊LT8030SOCKET通信系統(tǒng)的實現(xiàn)

      在網絡設置中有HTTP、SOCKET等類型。SOCKET是建立在傳輸層協(xié)議(主要是TCP和UDP)上的一種套接字規(guī)范,它定義兩臺計算機間進行通信的規(guī)范(也是一種編程規(guī)范)。如果說兩臺計算機
    發(fā)表于 08-31 11:53 ?1744次閱讀
    基于GPRS<b class='flag-5'>模塊</b><b class='flag-5'>LT8030</b>的<b class='flag-5'>SOCKET</b><b class='flag-5'>通信</b>系統(tǒng)的<b class='flag-5'>實現(xiàn)</b>

    DSP與單片機串口通信的設計與實現(xiàn)

    DSP與單片機串口通信的設計與實現(xiàn)
    發(fā)表于 10-20 10:11 ?5次下載
    DSP與<b class='flag-5'>單片機</b>串口<b class='flag-5'>通信</b>的設計與<b class='flag-5'>實現(xiàn)</b>

    單片機怎么和wifi模塊實現(xiàn)通訊_wifi模塊單片機通信原理

    本文為大家介紹wifi模塊單片機通信原理。
    發(fā)表于 12-29 09:51 ?8.2w次閱讀
    <b class='flag-5'>單片機</b>怎么和wifi<b class='flag-5'>模塊</b><b class='flag-5'>實現(xiàn)</b>通訊_wifi<b class='flag-5'>模塊</b>與<b class='flag-5'>單片機</b><b class='flag-5'>通信</b>原理

    gsm模塊如何與單片機通信?

    本文首先介紹了51單片機與GSM模塊實現(xiàn)通信的方法,其次介紹了gsm模塊單片機連接方法與注意事
    發(fā)表于 05-15 16:49 ?2.7w次閱讀
    gsm<b class='flag-5'>模塊</b>如何與<b class='flag-5'>單片機</b><b class='flag-5'>通信</b>?

    Flex與51單片機進行socket通信的詳細資料說明

    本文檔的主要內容詳細介紹的是Flex與51單片機進行socket通信的詳細資料說明。
    發(fā)表于 08-14 17:32 ?1次下載
    Flex與51<b class='flag-5'>單片機</b>進行<b class='flag-5'>socket</b><b class='flag-5'>通信</b>的詳細資料說明

    如何使用android socket連接openwrt與arduino單片機串口雙向通信

    本文檔的主要內容詳細介紹的是如何使用android socket 線程連接openwrt與arduino單片機串口雙向通信的程序免費下載。
    發(fā)表于 06-06 17:50 ?3次下載
    如何使用android <b class='flag-5'>socket</b>連接openwrt與arduino<b class='flag-5'>單片機</b>串口雙向<b class='flag-5'>通信</b>

    利用單片機控制MC55 GPRS無線模塊實現(xiàn)SOCKET通信設計

    系統(tǒng)的組成如圖1所示。該系統(tǒng)利用現(xiàn)有的GPRS網絡,單片機通過串口對MC55 GPRS模塊進行收發(fā)控制,實現(xiàn)Internet網絡通信服務,從而實現(xiàn)
    發(fā)表于 02-04 13:32 ?3082次閱讀
    利用<b class='flag-5'>單片機</b>控制MC55 GPRS無線<b class='flag-5'>模塊</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>SOCKET</b><b class='flag-5'>通信</b>設計

    基于AT89C52單片機LT8030實現(xiàn)套接字規(guī)范的計算機通信設計

    在網絡設置中有HTTP、SOCKET等類型。SOCKET是建立在傳輸層協(xié)議(主要是TCP和UDP)上的一種套接字規(guī)范,它定義兩臺計算機間進行通信的規(guī)范(也是一種編程規(guī)范)。如果說兩臺計算機是利用一個
    的頭像 發(fā)表于 06-24 16:56 ?2291次閱讀
    基于AT89C52<b class='flag-5'>單片機</b>和<b class='flag-5'>LT8030</b><b class='flag-5'>實現(xiàn)</b>套接字規(guī)范的計算機<b class='flag-5'>通信</b>設計

    畢設系列之 -- 單片機與NBIOT通信模塊

    Hi,大家好,這里是丹成學長,NBIOT是近幾年不比較火的遠程通信模塊,是物聯(lián)網的重要技術,今天學長向大家詳細介紹什么是NBIOT,NBIOT模塊能做什么,以及但單片機如何使用NBIO
    發(fā)表于 11-23 17:06 ?24次下載
    畢設系列之 -- <b class='flag-5'>單片機</b>與NBIOT<b class='flag-5'>通信</b><b class='flag-5'>模塊</b>

    單片機通信協(xié)議有哪些 單片機和wifi模塊間怎么通信

    單片機和WiFi模塊通信的方法有以下幾種: 1. 串口通信:將單片機與WiFi模塊通過串口連接,
    的頭像 發(fā)表于 06-13 17:56 ?1.6w次閱讀

    基于單片機的串口通信模塊設計

    電子發(fā)燒友網站提供《基于單片機的串口通信模塊設計.doc》資料免費下載
    發(fā)表于 10-19 11:29 ?8次下載
    基于<b class='flag-5'>單片機</b>的串口<b class='flag-5'>通信</b><b class='flag-5'>模塊</b>設計

    藍牙模塊如何實現(xiàn)單片機和手機端數據互傳

    藍牙模塊實現(xiàn)單片機和手機端數據互傳的過程可以分為以下幾個步驟: 硬件準備 : 確保你有一個支持藍牙通信單片機開發(fā)板,如Arduino、Ra
    的頭像 發(fā)表于 07-24 17:59 ?2061次閱讀
    藍牙<b class='flag-5'>模塊</b>如何<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>單片機</b>和手機端數據互傳