下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
前為什么學(xué)GSM/GPRS技術(shù)GSM/GPRS這個作為電子者的我們已經(jīng)滾瓜爛熟了,名字其實早已經(jīng)滲物聯(lián)網(wǎng)技術(shù)的重點工程之一,GSM/GPRS以其獨有的數(shù)據(jù)傳輸占有重要為什么要寫《GSM/GPRS實戰(zhàn)演練》GSM/GPRS發(fā)展已經(jīng)非常成熟,發(fā)展迅猛。從等,越是成東西往往越缺為什么要打造GSM/GPRS開發(fā)平臺GSM/GPRS開發(fā)平臺作為網(wǎng)蜂物聯(lián)網(wǎng)開發(fā)平臺的一員,市面上技術(shù)已經(jīng)非常先打造一款優(yōu)秀的GSM/GPRS開發(fā)平臺,使用學(xué)習(xí)資料最全、通用性最強的SIM300系列模塊,為大家的GSM/GPRS學(xué)習(xí)保駕護航!--網(wǎng)蜂網(wǎng)蜂科技團2013.8于廣州大學(xué)郵網(wǎng)店《GM/GPS實戰(zhàn)演練》已經(jīng)由網(wǎng)蜂科技于廣州局備案,任何單位或個人同意其中內(nèi)容的網(wǎng)蜂科技將以法律形式責(zé)任。版本《GSM/GPRS實戰(zhàn)演練》由蜂網(wǎng)團隊打造,始終堅持開源原則,包括書籍內(nèi)容、所有教學(xué)代碼和項目例程代碼的開源。當(dāng)前是第一版。GSM/GPRSGSMGPRS實驗第1 GSM/GPRS簡介及開發(fā)環(huán)境的建 GSM/GPRS簡 網(wǎng)蜂GSM/GPRS套件介 SIM300模塊簡 網(wǎng)蜂GSM/GPRS模 網(wǎng)蜂GSM/GPRS開發(fā)平 搭建開發(fā)環(huán) 第2章基于PC上位機開發(fā) 使用前準 網(wǎng)蜂GSM/GPRS模塊簡單測 GSM測 GPRS測 發(fā)送AT命令實現(xiàn)接聽與撥 撥 接 英文的英文的發(fā) 中文的發(fā) 中文的GPRS通 TCP連 UDP連 彩信的發(fā) 第3章基于單片機開發(fā) 打/接讀/控制臺 GPRS通 第1章GSM/GPRS簡介及開發(fā)環(huán)境的GSM/GPRS簡GSM的英文是GlobalS 通話清晰、穩(wěn)定性強不易受干擾、信息靈敏、通話死角少、耗電量特點。我國自1994年底開始建設(shè)GSM蜂窩移動通信網(wǎng),其發(fā)展勢頭世人皆嘆。目前,中國移動通信擁有世界上網(wǎng)絡(luò)規(guī)模最大和客戶數(shù)量最多的GSM移動通信網(wǎng)。GPRS是GeneralPacketRadioService的英文簡稱,中文為通用無線分組業(yè)務(wù)。它具有實時、按量計費、快捷登錄、高速傳輸、自如切換的優(yōu)點。使用GPRS上網(wǎng)的方法與WAP不同,資料和通話可以同時進行,即通話繼續(xù)使用GSMGPRS。我們可以簡單地理解成為:GSM是語音通話網(wǎng)絡(luò),就是打發(fā)的網(wǎng)絡(luò);而圖1.1營網(wǎng)蜂GSM/GPRS套件介控制,和過去51單片機的編程環(huán)境和指令完全兼容,可以讓我們把精力投放在GSM/GPRS及其AT指令等技術(shù)上。模塊選用SIM300,也是國內(nèi)目前資料最GSM/GPRS實戰(zhàn)演練》也是基于此平臺開發(fā)。內(nèi)容甚至可以將本的例程和實踐應(yīng)用在自己的設(shè)計、項目生產(chǎn)上。圖 SIM300是一款三頻段GSM/GPRS模塊可在全球范圍內(nèi)的EGSM900MHz、 1800MHz、PCS1900MHz三種頻率下工作,能夠提供GPRS多信道類型多達10個,并且支持CS-1、CS-2、CS-3和CS-4四種GPRS編碼方案。SIM30040mm*33mm*2.85mm,幾乎可滿足所有對產(chǎn)品尺寸有要求的工業(yè)應(yīng)用,比如智能,掌上電腦和其他移動設(shè)備。SIM300功能模塊有SPI類型的LCD雙音頻通道,包含兩個麥克風(fēng)輸入和兩個話筒輸出,可方便的由SIM300有兩種RF天線接口:一種是天線連接器、一種是天線焊點。天線連接器型號為MURATAMM9329-2700,用戶也可以通過天線焊點自己焊接天線。SIM300壓范圍3.4~4.5VSIM300集成了TCP/IP協(xié)議棧并且擴展了TCP/IPAT指令使用戶利圖 GSM/GPRSSIM300模1.4SIM300IO功能特點尺寸:7.5*產(chǎn)品接口:標2.54MM雙排針,全部IO口引出。供電方式:集成4V電源轉(zhuǎn)換。直接5V供電LED指示燈:GSM信號指示燈天線接口GSM接口 ,耳機麥克風(fēng)接口網(wǎng)蜂GSM/GPRS功能特點
1.5GSM/GPRS開發(fā)平臺底底板尺寸:15*10串口通訊:自帶USB轉(zhuǎn)串口功能(PL-2303),方便筆記本用戶供電方式:方口USB、DC2.1電源座(5V2A)功能接口:網(wǎng)蜂物聯(lián)網(wǎng)盒子接口,單片機所有IO5V/3.3V引腳功能按鍵:1個復(fù)位,16個普通按鍵(矩陣鍵盤)LED指示燈:電源指示燈和普通LED網(wǎng)蜂特色 開發(fā)平臺集成LCD12864顯示模塊、矩陣鍵盤控制、繼電器、蜂鳴器等外設(shè),載程序和調(diào)試,同時支持5V開關(guān)電源供電、USB供電。引出MCU所有IOZigBee、藍牙、 等任意物聯(lián)網(wǎng)平臺進行數(shù)據(jù)傳輸。通用性極強1.6GSM/GPRS開發(fā)平搭建開發(fā)環(huán)GSM/GPRSMCU選用STC89LE52,引腳和功能普通51單片機完全兼容,而且LE屬于低功耗系列單片機,供電電壓為3.3V。方便我們與其他網(wǎng)蜂物聯(lián)網(wǎng)平臺連接,開發(fā)環(huán)境我們使用非常熟悉的KEIL4。1、開發(fā)軟件KEIL2USB第一步:安裝KEIL4打開“KEIL41.7圖 KEIL安裝文
第二步:KEILFILE—LicenseManagement1.10在KEIL 下打開KEIL4機將碼到NewLicenseIDCode的框,點擊AddLIC當(dāng)出現(xiàn)如1.14所示的Expires:Jan2020(有效期到2020年的時候),恭喜你,成功了圖1.14成最后,keil4/KEIL4中加入STC單片機頭文件文件夾下的UV4.cdb文件到安裝路徑下的UV4文件夾里替換原文件,這一步是為了使用STC的第三步:新建工程打開安裝好的KEIL4軟件,點擊project—NewuvisionProject,在新建號的LED文件夾下新建led工程,點擊保存。點擊Project—optionsforTarget1.19output下選擇CreateHEXFilehex文件。便于調(diào)試使用。完成后點擊OK。接下來點擊file—new:輸入或者代碼點擊保存,我們需要保存成C在左邊SourceGroup1點擊右鍵— 添加成功后,左邊出現(xiàn)剛剛保存的C1.24代碼變成正規(guī)至此,新建工程完畢。如圖1.25、圖1.26所示:1.26工程出現(xiàn).hex2USB轉(zhuǎn)串口驅(qū)動的RFID開發(fā)平臺上集成PL2303的USB轉(zhuǎn)串口,我們通過安裝相應(yīng)的驅(qū)動可通過USBPL2303_driver軟件直接進行安裝(安裝時候建議USB線不連接開發(fā)平臺?。┌惭b好后,通過方口USB線連接開發(fā)平臺,我們右鍵打開電腦--屬性—硬件—設(shè)備管理器,查看到USB-to-SerialCom,說明驅(qū)動安裝成功。3、程序圖 STC_ISP圖選擇1.30配置相關(guān)軟打開程序文件,我們剛剛新建的工程里面編譯出來的hex將開放平臺斷電再重新上電,自動程序。完成如圖1.32所示第2PC上位機開面看了網(wǎng)蜂GSM/GPRS開發(fā)平臺的資源介紹,對開發(fā)板的資源有了一定了熟悉程度,也對開發(fā)板的SIM300模塊有了一定的了解之后,下面就可以單片機控制GSM/GPRS做好準備。使用前準在使用網(wǎng)蜂GSM/GPRS開通GPRS功能的。圖2.1到卡插上帶麥克風(fēng)的電腦耳機。要求耳機接口與麥克風(fēng)接口是分開圖2.2耳機和麥克插上一個5V2A的直流電源要求直流電源能提供的供電電流不能小于2ASIM300發(fā)射2ASIM300模塊正圖 5V2A以上的開關(guān)電保證串口SW開關(guān)處于彈起狀態(tài)(用于切換PC機操作和單片機操作電腦PC的TXD SIM300的RXD電腦PC的 SIM300的2.4串口切SW開關(guān)處于彈起插上 方口打印線。另一端連接到電腦的USB,做串口通訊用按下電源開關(guān)S1,通電等待SIM300一次,當(dāng)SIM300捕捉到信號后,信號燈閃爍的頻率大概是3S一次)準備就緒如下圖所圖 開發(fā)平臺準備工作完ATGSM/GPRSAT指令的操作,在這里列AT指令集,大家可以簡單瀏覽一下,不需要記住,在使用的時候查表表 常用AT指ASCI設(shè)置收到短+CMTI“SM,44表示內(nèi)短消息數(shù)息=X第X條短消息用PDU刪除第X來電自動顯來! 發(fā)送短消息>1A+CMGS:十六進制大寫第11 1150表示PDU一、一般SONY獲得模塊標識。這個命令用來得到支持的頻帶PCS1900獲得改訂的軟件版本。 獲得GSM模塊的IMEI(國際移動設(shè)備標識)序列號。TETE用的是哪個狀態(tài)ME。ME于是可以轉(zhuǎn)換每一個輸入的或顯示的字母。這個是用來發(fā)送、或者撰寫。+CSCS:字符串字母。這個用來讀或者寫簿的。SI際移動簽署者標識。在IMSI之前應(yīng)該先輸入PIN(如果需要PIN的話。EF-CCID:,+一個執(zhí)行令。關(guān)機。這個特殊令停止GSM軟件堆棧和硬件層。命令A(yù)T+CFUN=0的功能與+CPOF相同。設(shè)定機能。這個命令選擇移動站點的機能水平結(jié)果碼“+CMEERROR:”或者“+CMSERROR:”代替簡單的“ERROR小鍵盤控制。仿真ME+CCLK:+CALA:(1- 鈴聲旋律。這個命令在模塊的蜂鳴器上一段和到來聲音。設(shè)定或獲得到來的鈴聲級別。二、呼叫接GSMDTMF(雙音多頻)雙音頻。這個命令用來定義雙音頻的長度(300毫給用戶提供應(yīng)用GSM網(wǎng)絡(luò)發(fā)送DTMF雙音頻。這個命重撥上次單一方案用附加的用戶信息三、網(wǎng)絡(luò)信號質(zhì)量。+CSQ:AT+COPS?+COPS:0,0,"China網(wǎng)絡(luò)。獲得的狀態(tài)+CREG:操作員名字。優(yōu)先操作員列表。四、安全輸入PIN輸入PIN2改變五 簿命選擇簿+CPBS:查找簿表目寫簿表目簿查詢防止在下一次重起時初始化所有的簿刪除呼叫。六、短消GSM-MO、SMS-MT、優(yōu)先信息格式。執(zhí)行格式有TEXT方式和PDU保存設(shè)置。保存+CSAS和+CSMP讀。信息從+CPMS命令設(shè)定的器寫息并從器中發(fā)送信息刪除息。刪除一個或多個息不改變SMS狀態(tài)。在執(zhí)行 或+CMGL后仍保七、追加呼叫八、數(shù)據(jù)本地DTE-DCE是否允許V42是否報告V42九、傳真十、第二類傳真命緩沖大告設(shè)置DCE定義本地ID十一、V24-V25確定DTE確定DTE-DCE控制DTE-DCE設(shè)置DCD(數(shù)據(jù)攜帶檢測)設(shè)置DTR(數(shù)據(jù)終端就緒)設(shè)置DST(數(shù)據(jù)設(shè)置就緒)決定DCE十二、特AT自動RxLev在ME和MSC之間的數(shù)據(jù)模式數(shù)據(jù)模式在PLMNGPIO值。寫GPIODTMF旋律。配置信差速率顯示軟件版本允許在特定的操作符上個性化ME設(shè)置CPHS商業(yè)特性管理。是否允 改變旋律的缺省器十三、SIM卡工具箱網(wǎng)蜂GSM/GPRS模塊簡單測GSMGSM/GPRS模塊進行簡單的測試。GSM\開發(fā)軟件和驅(qū)動\這個文件夾里面可圖 GSM串口調(diào)試助上圖紅色框內(nèi)區(qū)域的按鈕GSM調(diào)試的,綠色框內(nèi)的按鈕則是GPRSGSMGPRSGSM測按下GSM測試的各個按鈕,這個串口上位機會自動發(fā)送AT命令SIM300是自動適應(yīng)串口波特率的,無論你設(shè)AT指令后適應(yīng)你設(shè)置的波特率。所以一SIM300AT命令的時候,SIM300往往是沒反應(yīng)或者下圖為簡單測試SIM300的GSM撥號功能以測試SIM300的通話功能。例如輸入10086的號碼,按下,帶上你的耳機,稍等一下,就會聽到10086那熟悉了。如錯誤!未找到源。所2.7如果有別的打進來,SIM300則會返回RING。如果此時蜂鳴器的跳線帽以接通打進來的了。如圖2.8所示:2.8測GPRS測GPRSSIM300模塊的發(fā)送數(shù)據(jù)功能,就是發(fā)數(shù)據(jù)出去成功就行了。具體建立TCP連接,SIM300作為TCP客戶端與TCP服務(wù)器進行GPRS數(shù)據(jù)通信將會在后面的2.6節(jié)再做詳細解說。下圖SIM300GPRS功能測試圖 到此,SIM300的簡單測試實驗為大家講解完畢,這個可以確定我們的模塊發(fā)送AT命令實現(xiàn)接聽與撥前言SIM300各個功能的實AT指令給SM300SIM300SIM300的各個功能的SIM300的AT指令的印象,同時也為以后用單片機開發(fā)SIM300奠定基礎(chǔ)。指令講解ATE1+回車換ATD+“號碼”+“;”+“回車換行如:先輸入 ATA+ATH+回車換AT+CLIP=1+回車換 可以不用重復(fù)再開機了。然后通過發(fā)送:AT+COPS?+回車換行,如果返回:撥前言實驗步驟首先,在配套資源的/開發(fā)軟件和驅(qū)動/文件夾里找到且打開串口調(diào)試助手。圖標是。手動發(fā)送,就可以查詢SIM300是否找到運營商。如果返回:期待已久的打測試了。如圖2.10所示:2.10測試是否找到運2、打:在發(fā)送區(qū)輸入:ATD10086;+回車鍵(記得分號再按手動發(fā)呼叫其的號碼進試。2.11100863、掛:然后等你聽膩了10086那一大堆啰嗦后,就會想掛掉電話,此時在發(fā)送區(qū)輸入:ATH+回車鍵,再點擊手動發(fā)送,就可以掛掉。2.12掛 接前言掌握了打之后,是否很自然地想知道:如果有人打進來,怎樣才能AT命令來實現(xiàn)接聽呢?好,事不宜遲,我們馬上進行接聽的實驗。實驗步驟可設(shè)置來電顯示,當(dāng)有打入的時候就,SIM300會返的來電號碼。2、接聽:當(dāng)有打進來時,SIM300會在串口調(diào)試助手打印RING和ATA+回車鍵,點擊手動發(fā)送,即可接聽。當(dāng)對方掛斷的時候,SIM300會返回:NOCARRIER。2.13接聽到此,接聽/撥打的實驗為大家講解完畢,希望大家學(xué)習(xí)愉快AT命令實現(xiàn)與發(fā)前言和中文的與發(fā)送。整個實驗通過我們熟悉的串口調(diào)試助手來實現(xiàn):指令講解MI=2,1+回車用于設(shè)置新消息提示。如:輸入MI=2,1,然后按下回車鍵,點擊手動發(fā)送。當(dāng)收到新消息,且未滿的時候,SIM300會返回提示有新信息的數(shù)據(jù),如:+CMTI:"SM",2,表示收到接收到新消息,在的位置2。 =+位置+回車換用于,比如發(fā)送 =2,則可以在位置的AT+CMGF=1+回車換用于設(shè)置短消息模式,SIM300支持PDU模式和文本(TEXT)2種模式,發(fā)送:AT+CMGF=1,即可設(shè)置為文本模式。發(fā)送:AT+CMGF=0,即可設(shè)置為PDU模式。發(fā)送與英文的時候是采用文本模式,發(fā)送與中文時則是采用PDU模式。用于指定接收的號碼。在發(fā)送PDU模式時,需要發(fā)送AT+CPMS?+回車換+CPMS:"SM",24,50,"SM",24,50,"SM",24,50,表示當(dāng)前SIM300最大50條AT+CMGD=+位置+回車換SIM300無法繼續(xù)接收新消息,此時則需要刪除一部分的信息。如發(fā)送:AT+CMGD=1,則將位置1的消息刪除。英文前言實驗步驟置的模式為TEXT模式,也即是英文時的模式。2、設(shè)置新消息提醒:在發(fā)送區(qū)輸入:MI=2,1+回車鍵,發(fā)送。這樣便完成了新消息提醒的設(shè)置。當(dāng)有新消息到達的時候,SIM300就會返回數(shù)據(jù)提醒有新消息到達,例如:+CMTI:"SM",14,表示新消息到達,而且位置是14。。3、的:例如:新短息位置是14,時,在發(fā)送區(qū)輸入: =14+回車鍵,發(fā)送。SIM300返回的數(shù)據(jù)中即可看到短息的具體內(nèi)容。如果所的是第一次,SIM300返回的提示中會提醒+ :"REC返回的數(shù)據(jù)中也包含了來的號碼,以及時間,日期。。圖2.15到信4、查詢數(shù)量:當(dāng)你想知道當(dāng)前SIM300一共了多少條的圖2.16查詢刪的發(fā)送文件功能,在/開發(fā)軟件與驅(qū)動/里找到TXT文件“刪除命令集”,用串口助手把整個文件發(fā)送給SIM300。里面內(nèi)容如下:實驗現(xiàn)象刪除多條圖2.17批量刪英文的發(fā)前言簡短的英文。指定的號碼是:13316**1557。內(nèi)容是: oWeBee。實驗步驟1、設(shè)置的模式:時同樣要設(shè)置的模式,在發(fā)送區(qū)輸入2、指定接收方的號碼:輸入:AT+CMGS=”對方”+回車鍵,發(fā)送>3、輸入發(fā)送內(nèi)容:例如:oWeBee4、十六進制模式下發(fā)1A:則會返回:例如+CMGS:6,說明發(fā)送成功,6為模塊的計數(shù)器,一般不用理會。然后對方號碼(13316**1557)就會收到你發(fā)出的。實驗現(xiàn)象2.18發(fā)送英操圖2.19收到發(fā)來 OWEBEE中文的發(fā)前言本節(jié)將演示利用SIM300發(fā)送AT指令來完成給指定的號碼發(fā)送中文短實驗步驟與英文的發(fā)送不一樣,英文采用的是文本模式TEXT發(fā)送,中文短信時以PDUUNICODE編碼的。發(fā)送步1、變換號碼:先將進行特定進制編碼,編碼方法如下則加補F,得到:3113*61#55F7。2、內(nèi)容編碼:內(nèi)容“網(wǎng)蜂科技”,通過Chinese_Unicode.exe, 文件夾里面能找到這個軟件。進行16進制編碼后:“7F51870279D16280。如下圖:2.20漢字與Unicode3、PDU格式編碼:本實驗發(fā)送的內(nèi)容是中文,輸入輸出內(nèi)容是PDU格式。整個PDU內(nèi)容如下:0011000D91683113*61#55F70008A0087F518702前序|前序|目的號碼長度|國際接入碼|號碼(兩位一反)|8bit式|允許時間長度內(nèi)容(前序是一定要的,一般不做更改 (目的號碼長度,號碼(11位)+中國區(qū)號(2位)共13位,十六進制表示為0D) (國際接入碼 (目標號碼反序轉(zhuǎn)換后 (在服務(wù)器中保存時間7F51870279D16280(要發(fā)送的的中文內(nèi)容轉(zhuǎn)成UNICODE后的模式為PDU模式,也即是中文時的模式。5、計算PDU總長度:總長度= 要發(fā)送的中文字數(shù)*4/2+15。例如我們這次發(fā)送4個字,那么總長度=4*4/2+15=23。>輸入1A(即是0X1A,這里也不需要回車,然后發(fā)送。7、發(fā)送完成:等到SIM300發(fā)送完成,返回如:+CMGS:5,表示已成功發(fā)送。此時,我們在目標(13316*#1557)上面,就可以看到模塊發(fā)送過來的中文了。實驗現(xiàn)象圖 發(fā)送“網(wǎng)蜂科技”中文信圖2.22收到發(fā)來的中文信中文前言在本節(jié),將用其他先發(fā)送一條中文到SIM300模塊上,內(nèi)容是:”網(wǎng)蜂科技物聯(lián)網(wǎng)”這七個字。然后再通過串口調(diào)試助手向SIM300發(fā)送AT命令來收到的中文。實驗步驟在做這個實驗前,讀者要知道,英文時,SIM300返回的數(shù)據(jù)我們是可以直接的。但是中文則不一樣,返回的內(nèi)容是UNICODE編碼的組合。所以,我們還需將UNICODE編碼轉(zhuǎn)化為漢字。步驟如下:置的模式為PDU模式,也即是中文時的模式。2、設(shè)置新消息提醒:在發(fā)送區(qū)輸入:MI=2,1+回車鍵,發(fā)送。這樣便3、向SIM300發(fā)送一條簡短的中文:例:網(wǎng)蜂科技物聯(lián)網(wǎng)4、內(nèi)容:當(dāng)有到達時,在發(fā)送區(qū)輸入 =+位+回車鍵,發(fā)送。SIM300會返回如下內(nèi)++:2.23模塊收到的信息內(nèi)容 (表示之前沒讀過,1表示之前已經(jīng)被讀過 (長度 (中心地址長度(字節(jié) (表示該號碼定義為國際號碼683108707515F0( 中心號碼 (號碼長度 (表示該號碼定義為國際號碼 (對方 (協(xié)議標識,00GSM類型,點到點方式 (內(nèi)容UNICODE\件與驅(qū)動 打開軟件。將內(nèi)容到Unicode碼框里,每符加一個空格號,然后 的Unicode碼轉(zhuǎn)成漢字了。如下圖:2.24翻譯接收到的到此,中英文的發(fā)送/接收為大家講解完畢,希望大家學(xué)習(xí)愉快GPRS通前言SIM300GPRSSIM300作為客戶TCP/UDPTCP/UDP連接,然后實現(xiàn)模塊與電腦的TCP/UDP數(shù)據(jù)傳輸。GPRSGPRS建立一個TCP連接。模塊作為CLIENT(客戶端)向的SERVER(服務(wù)器)發(fā)起一個TCPSERVER(服務(wù)器)INTERNET獲得,如在PC在局域網(wǎng)則無法建立連接然后該PC運行我們的(服務(wù)器)軟件。這時就可以SIM300AT命令SERVER建立TCP連接,連接成功后會返回CONNECTOK。然后就可以用AT+CIPSEND發(fā)送數(shù)據(jù)到指令講解(GPRSIPD頭:AT+CIPHEAD=1表示收到數(shù)據(jù)時帶有斷是模塊命令響應(yīng)還是GPRS數(shù)據(jù)。)為1234(用于建立TCP連接或UDP端。發(fā)送: "TCP","29","1234",SIM300將建立一個TCP連接,連接目標地1A(0x1A以上是對這次實驗用到的AT指令的講解。對于讀者上網(wǎng)方式的不同,要進行 通信之前,要做以下對應(yīng)的準備工作一、撥號也就沒有路由器,直接用Modem撥號上網(wǎng)的,直接擁有1個IP,你可以通過,搜索:IP,第一個條目,就是本機IP。記錄下這個IP,后面需2.25查看當(dāng)前機器的IP地二、路由器上網(wǎng)也就是經(jīng)過了路由器上網(wǎng)的,那么你到的公網(wǎng)IP是路由器的公網(wǎng)IP,1、登錄:(路由器IP地址,根據(jù)你的實際情況輸入)登錄時需要賬號和,之前沒有修改過就默認都是admin。登錄路由器控制頁面,然后選擇-->轉(zhuǎn)發(fā)規(guī)則-->DMZ主機。如下圖:2.26設(shè)置路2DMAIP地址內(nèi)填入你電腦的本機地址,選擇啟用,然后點擊保TCP連前言TCP是基于連接的協(xié)議,在收發(fā)數(shù)據(jù)前,必須先和對方建立可靠連接,是和作為電腦(TCP服務(wù)器)TCP連接,并實現(xiàn)數(shù)據(jù)的互相收實驗步驟網(wǎng)蜂科技(WeBee)GSMGPRS開發(fā)平臺配套資源\開發(fā)軟件和驅(qū)動\NetAssist網(wǎng)絡(luò)調(diào)試助手文件夾里面能找到。圖標如:2、打開軟件,設(shè)置協(xié)議類型為:TCP服務(wù)器,本IP地址直接用默認的即可,設(shè)置本地,端口為:1234,注意,這里的端可以隨便設(shè)置,范圍為鈕(點擊后變?yōu)椤皵嚅_TCP服務(wù)器已經(jīng)開始工作,等待連接2.27IP被自動3、指定本地端口在發(fā)送區(qū)輸入:AT+CLPORT=”TCP”,”2022”+回車,然后4、連接TCP服務(wù)器:12340~65535都可以,但是,有時候你設(shè)置的端連不上,則可以換多幾個其他端口試試。2.28當(dāng)前的公IPSIM300返回CONNECTOK圖 GPRS連接成就是的IP地址,連接對象就選上這個的IP地址,詳細如下圖:2.30網(wǎng)絡(luò)調(diào)試助手選擇新出現(xiàn)的IP地5、進GPRS通信輸入:AT+CIPSEND+回車,發(fā)送。SIM300返回“>”后,在發(fā)送框輸入要發(fā)送的內(nèi)容,例如:oWeBee(不用回車,然后點發(fā)送。內(nèi)容發(fā)完后,重要點擊串口調(diào)試助手的十六進制發(fā)送,輸入1A,(不用回車SIM300返回SENDOK表示發(fā)送成功。2.31發(fā)送信息成2.32網(wǎng)絡(luò)調(diào)試助手接收到SIM300發(fā)來也是可以的。在網(wǎng)絡(luò)調(diào)試助手發(fā)送框輸入:o!ThisisTCPServer!SIM300收到后打印在串口調(diào)試助手上,如圖2.33、圖2.34所示:2.33網(wǎng)絡(luò)調(diào)試助圖 SIM300收到GPRS發(fā)來的信當(dāng)需要斷開GPRS6、關(guān)閉移動場景:輸 AT+CIPCLOSE+回車,發(fā)送。返回:OK 如下圖2.35UDP連前言一種不可靠的數(shù)據(jù)傳輸方式,不過速度快。本節(jié),在SIM300模塊和電腦之間建立一個UDP連接,并實現(xiàn)數(shù)據(jù)的互相收發(fā)。實驗步驟1、設(shè)UDP協(xié)議:UDP方式,IP和端口不IPGPRSIPUDP方式下會改變。除非加心跳包來維持端。故這里不測試網(wǎng)絡(luò)助手網(wǎng)SIM300模塊發(fā)送UDP數(shù)據(jù)。2、指定 本地端口:輸入:AT+CLPORT="UDP","3000"+回車,發(fā)送3、UDP連接:輸入AT+CIPSTART="UDP","3","1234"+回車,SIM300CONNECTOK4、GPRS通信:TCP連接差不多。輸入:AT+CIPSEND+回車,發(fā)送。SIM300返回>后,在發(fā)送框輸入要發(fā)送的內(nèi)容,例如:oWeBee。內(nèi)點擊串口調(diào)試助手的十六進制發(fā)送,輸入1A,(不用回車SIM300返回SENDOK2.36SIM300圖 SIM300發(fā)送信2.37UDP方式接收到當(dāng)需要斷開GPRS5、關(guān)閉移動場景:輸 AT+CIPCLOSE+回車,發(fā)送。返回:OK 如下圖2.38GPRS連到此,SIM300的GPRS通信為大家講解完畢。希望大家學(xué)習(xí)愉快彩信的發(fā)前言的功能?;蛘叽蠹乙部梢詤⒄誗IM300_AN_MMS_V1.1.pdf。實驗步驟彩信發(fā)送實驗需要用到的串口調(diào)試助手跟之前不一樣。這次用的是串口調(diào)試軟件 這個軟件在/開發(fā)軟件和驅(qū)動/文件夾里面找到。圖標是,打開軟件如下,勾上發(fā)送新行:
2.39發(fā)送新1_234、發(fā)送 56789、在這里點擊打開文件按鈕,選擇要發(fā)送的,格式最好是JPG格式,原圖:2.40文件信9、發(fā)送它的,根據(jù)軟件的計算值改動。10、點擊發(fā)送文件,成功時返回的數(shù)據(jù)如下圖2.41成功發(fā)送SIM30011、發(fā)送:at+cmmsrecp="13316**1557" 2.42 //這條命令是發(fā)送彩信令 2.42成功發(fā)送圖2.43成功收到彩到此,發(fā)送彩信的實驗為大家講解完畢,同時第2章內(nèi)容也結(jié)束。這章內(nèi)容同時也為下一章基于MCU開放做鋪墊。希望大家學(xué)習(xí)愉快。第3章基于單片機開前言前面為大家做了SIM300的介紹和基本操作實驗。接下來就進入的項目實戰(zhàn)階段。本章一共有三個實驗項目,分別用到了SIM300的語音通話功能,短信功能,以及GPRSSIM300提供一些幫助。同時,為了讓讀者更好地學(xué)習(xí)SIM300,在這一章將會重復(fù)說明第二章的一部分SIM300的AT指令。重要:請讀者在第三章實驗中都保持開發(fā)板上的串口切換開關(guān)置于被按下的狀態(tài)。也就是:PMUSM狀態(tài),此時的串口連接狀態(tài)如下:電腦的 MCU的 SIM300的電腦的 MCU的 SIM300的3.1按鍵需要處于按下打/前言此節(jié),將會為大家演示用單片機控制SIM300實現(xiàn):打、接、掛電話、以及來電顯示的功能??吹竭@里,大家也許在想:SIM300原來那么拉風(fēng)的指令講解ATE1+回車換ATD+號碼+;+回車換再按回車鍵,再按發(fā)送,即可實現(xiàn)撥打10086。ATA+ATH+回車換AT+CLIP=1+回車換操作與現(xiàn)象2下一下一項:無操作0~9輸入要呼叫的號碼確認:呼叫輸入的號碼返回:掛斷,返回主,按鍵操作功能如下:確認返回:掛斷,返回主頁打開網(wǎng)蜂(WeBee)GSMGPRS開發(fā)平臺配套資源\示例程序和文檔\第3.2void{ LCD_printf(3,0網(wǎng)蜂科技 while{ 15.第10行:這是一個串口發(fā)送字符串的函數(shù),單片機發(fā)送"AT+CLIP=1\r\n"第13行:GSM_Fsm();是整個實驗的代碼,下面會做詳細講解以及GSM_Fsm();函數(shù)。下面會慢慢為讀者道來:void{{if(Usart_Receive[Receive_Count-2]==&&Receive_Count Receive_Count=if(NULL!=strstr(Usart_Receive,"CHINAMOBILE"){,"}} 21.Usart_Receive[]Receive_Count對收到的數(shù)和’\n’。也就是收到回車換行。SIM300每發(fā)完一句話都加上一個回車12行:Receive_CountSIM300第13行: if的判斷條件里面用到了C語言的一個庫函數(shù),函數(shù)原型是:externchar*strstr(char*str1,char*str2);這個函數(shù)在這里的作用是在第16行:這里用到的是C語言的一個庫函數(shù)。其原型如下void*memset(void*s,intch,size_tn);這個函數(shù)在這里的作用是:清Usart_Receive[]GSM_Fsm();還是GoToDefintionOf‘GSM_WaitForNetworks();’去到函數(shù)定義處。雖然staticMain_PageStatstat staticu8rpt_flag u8key {caseif(rpt_flag==0{rpt_flag= key //檢測是否有打if(CallInFlag== //如果有打{if(key { //接函 if(key { //掛函 ifkeyKEY_NEXT如果按下下一項按鍵,{rpt_flag=stat= caseif(0==rpt_flag{rpt_flag= key= //檢測是否有打if(CallInFlag== //如果有打{stat // ifkeyKEY_LAST {rpt_flag=stat= // ifkey {rpt_flag //0,前面檢測到則執(zhí)行 ifkey // Call_Flag //打函 if(keyKEY_BACK //{rpt_flag=stat=if(Call_Flag=={Call_Flag=//}{//}}if(key=={rpt_flag=stat=//} ifBusy_Flag //{//要等待的時間較長,8Busy_Flag=Call_Flag=rpt_flag=stat=}}第二部分是第37~110行,編輯Edit狀態(tài)下的處理。主頁Home狀態(tài)下晶上,并且將來電檢測標志CallInFlag置1。18~28CallInFlag1,說明有來電。這段程序是對有來電時則執(zhí)行掛的函數(shù)。編輯Edit狀態(tài)下第45行:按鍵功能函數(shù),根據(jù)按鍵掃描返回的按鍵號,編輯數(shù)組第46行: 顯示編輯中的。48CallInFlag150~54行:如檢測到CallInFlag1,則返回主頁Home第101~107行:SIM300主動呼叫對方時,如果對方掛斷,則會返回BUSY。不過等待的時間較長,大約是8秒鐘。函數(shù),GoToDefintionOf‘Gsm_CallInCheck();’去到函數(shù)定義處,函數(shù)void{if(Usart_Receive[Receive_Count-2]==&&Receive_Count {Receive_Count= {CallInFlag=,","," //打進來時+CLIP: {strncpy(CallInNumber,Usart_Receive+8,11 {CallInFlag=}}{Busy_Flag=}40.第8~16行:這里又一次用到C語言的庫函數(shù)strstr,在這里的作用是檢測數(shù)來電標志CallInFlag置1。13行為顯示來電號碼。第18~25:打進來時SIM300會返回+CLIP: ",161,"",,"",0,處理:22行是從號碼的位置開始顯示號碼。23行是將來電號碼CallInNumber[]。第27~31行:檢測到對方掛時的處理源碼,里面有詳細注釋。通過STC軟件將hex文件到單片機里面。就可3.33.4到此,第一個項目為大家講解完畢,希望大家學(xué)習(xí)愉讀/控制臺前言指令講解MI=2,1+回車用于設(shè)置新消息提示。如:輸入MI=2,1,然后按下回車鍵,點擊手動發(fā)送。當(dāng)收到新消息,且未滿的時候,SIM300會返回提示有新信息的數(shù)據(jù),如:+CMTI:"SM",2,表示收到接收到新消息,在的位置2。 用于,比如發(fā)送 =2,則可以在位置的AT+CMGF=1+回車換用于設(shè)置短消息模式,SIM300支持PDU模式和文本(TEXT)2種模式,發(fā)送:AT+CMGF=1,即可設(shè)置為文本模式。發(fā)送:AT+CMGF=0,即可設(shè)置為PDU模式。發(fā)送與英文的時候是采用文本模式,發(fā)送與中文時則是采用PDU模式。(注:當(dāng)SIM300收滿50條時會停止接收,此時需要刪除一些,刪除的步驟請參考第二章2.5.1的講)操作與現(xiàn)象運營商后,液晶上會顯示:中國移動。等待約10S的穩(wěn)定時間。3、將要控制的臺燈的開關(guān)引出兩條線接到開發(fā)板的繼電器上。給SIM300發(fā)送一條,內(nèi)容是:turnonlight。SIM300收到后,單片機會打開繼電器,點亮臺燈。發(fā)送:turnofflight。SIM300收到后,單片機會關(guān)閉繼電器,臺燈熄實驗講解打開:網(wǎng)蜂(WeBee)GSMGPRS開發(fā)平臺配套資源\示例程序和文檔\2、控制臺燈,下面我們一步步講述代碼原理,同樣是由主函數(shù)開始。3.5void{ LCD_printf(3,0網(wǎng)蜂科技 Receive_Count //while{ if0x00 {}if(Return_Flag==1||Confirm_Flag=={Confirm_Flag=Return_Flag=}}41.第12行:等待SIM300找到運營商。第一個項目里面已經(jīng)解,不再贅述。第28~32行:在主頁面狀態(tài)下,數(shù)字鍵的操作都被取消。第25行:GSM_NewSMSCheck();函數(shù)是檢測是否有新的到達,以及到達時的一些處理。是本個實驗項目的程序。下面講解這個實驗的程序GSM_NewSMSCheck();,光標放在函數(shù)名上GoToDefintionOf‘GSM_NewSMSCheck();’去到函數(shù)定義處。函數(shù)定義void{if(Usart_Receive[Receive_Count-2]==&&Receive_Count {if(NULL!=strstr(Usart_Receive,"AT+"){if(NULL==strstr(Usart_Receive,"OK"){ LCD_printf(0,0,"NewSMS,"http://將其中的顯示出//打印內(nèi)容在液晶上,換行后就是內(nèi)( { ( {}Receive_Count=} Message_Position[2]='\0'//將在SIM300中的位置出if(Message_Position[1]=='\r'{ /*將要讀信息令存在數(shù)組Read_Cmd中 Receive_Count=//memset(Usart_Receive,0x00,//Usart1_SendString(Read_Cmd);//發(fā)送讀信息 程序分成兩大部分,第一部分是第7~35行,是處理內(nèi)容的部分。第二7~35++:"RECo第7~12行:第7行,檢測到"AT+ "說明返回的是內(nèi)容,第9行:檢測第17~21行:第18行顯示的是發(fā)短息給SIM300的,strstr返回的是字符串"READ"的首地址,再往后數(shù)10個地址才到。而LCD_printf();從參數(shù)指向的地址開始一直顯示,直到遇到雙引號”。第39行:如果有收到"+CMTI",則說明有新的到達第42行:將的所在的位置到數(shù)組Message_Position[];strncpy函數(shù)是C語言的庫函數(shù),其函數(shù)原型是:。char*strncpy(char*dest,char*src,size_tnum);這個函數(shù)在這里的作用是從Usart_Receive[]第14個元素開始,個數(shù)是2到的數(shù)據(jù)就是到達的位置。。第44~47行:如果所在的位置是個位數(shù),則Message_Position[];里面的Message_Position[1]’\n’;此時用’\0替換掉’\n’strcat還是C語言庫函數(shù)。原型如下:externchar*strcat(char*dest,char*src); 功能:src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。請讀者參考源碼,里面有詳細注釋。通過STC軟件將hex文件到單片機實驗現(xiàn)象圖3.6發(fā)送 o圖 接收信圖3.8發(fā)送開燈命3.9到此,讀/控制臺 的項目為大家講解完畢,希望大家學(xué)習(xí)愉快GPRS通前言SIM300進行GPRS通信。SIM300TCP在這里再次強調(diào),根據(jù)你設(shè)置的服務(wù)器(PC機作為服務(wù)器)上網(wǎng)的方式不一樣,需要有相應(yīng)的一些設(shè)置。這個可以參考第二章的2.6節(jié)。指令講解GPRSIPD頭:AT+CIPHEAD=1表示收到數(shù)據(jù)時帶是模塊命令響應(yīng)還是GPRS數(shù)據(jù)。端為1234用于建立TCP連接或UDP端。發(fā)送:AT+CIPSTART="TCP","291234",SIM300將建立一個TCP連接,連接目標地址為:29,連接端口為1234,連接成功會返回:CONNECTOK1A(0x1A以上是對這次實驗用到的AT指令的講解。操作與現(xiàn)象2IPPORT的編輯界IP地址編輯狀態(tài)下一項:當(dāng)正在編輯IP地址時,按下一項進入端口編輯狀態(tài)確認:根據(jù)所編輯的IP地址與端口進行TCP連接0~9:編輯IP退格:刪除一位IP3輸入IP地址端口完畢后按確認鍵進行TCP連接此時液晶上會顯示:“GPRS連接中?!保?dāng)連接成功后,會顯示:”CONNECT OK”。兩秒后,進入TCP通信頁面。如果一直顯示:GPRS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建房合同范例貸款
- 學(xué)生團隊租車合同范例
- 危房申請合同范例
- 傳媒硬件采購合同模板
- 快遞企業(yè)服務(wù)合同范例
- 藝術(shù)靈感生活蘊藏
- 開業(yè)花籃租賃合同范例
- 巢湖官方代理記賬合同范例
- 債務(wù)重組退費合同模板
- 合同中贈與合同范例
- 《嚴以律已+做遵紀守法的好少年+主題班會教育》
- 強生干式生化V350檢測儀標準操作程序(SOP)
- 06-2018泥石流災(zāi)害防治工程勘查規(guī)范(試行)
- 洛陽市女職工生育保險待遇申報表
- 2023年旅行社經(jīng)營管理教案
- 扁桃體炎-課件
- 蘇教版五年級數(shù)學(xué)上冊《小數(shù)乘小數(shù)》說課稿
- 探放水操作工安全風(fēng)險管控措施
- 體育與健康 五禽戲(2022年秋2021級)學(xué)習(xí)通課后章節(jié)答案期末考試題庫2023年
- DBJ-T13-368-2021 福建省陶粒增強型輕質(zhì)墻板應(yīng)用技術(shù)標準
- Unit 5 Dinners ready A Lets spell(說課稿)人教PEP版英語四年級上冊
評論
0/150
提交評論