標(biāo)題: stm32驅(qū)動SIM808模塊發(fā)短信GPS TCP HTTP研究全套資料下載 含源碼 原理圖 工具及教程 [打印本頁]

作者: mengyang7722    時間: 2017-11-10 13:33
標(biāo)題: stm32驅(qū)動SIM808模塊發(fā)短信GPS TCP HTTP研究全套資料下載 含源碼 原理圖 工具及教程
[stm32] SIM808模塊之發(fā)短信GPS TCP HTTP研究,附帶源碼和原理圖


SIM卡電路,不懂看硬件設(shè)計手冊
兩個LED用來判斷模塊的狀態(tài),很有用!。
藍(lán)牙天線接口,需特殊軟件版本

J2為復(fù)位接口,不用懸空。低電平持續(xù)2秒有效
V_MCU用來控制模塊TTL串口輸出高電壓
默認(rèn)輸出高電壓為5V,與5V單片機(jī)通信
可通過修改模塊上的0R電阻,輸出高電壓為2.85V

TTL電平接口,不能接232
電平匹配電路,不懂百度查IIC電平匹配

默認(rèn)接有源GPS天線。當(dāng)接無源GPS天線時,請將R12去掉。
J13  PPS接口,PPS是用來授時,不懂的話百度
模塊設(shè)計供電電壓范圍為5.2--4.8V,電流需1A或以上


1 原理圖\
2 AT指令\
SIM808_GPS_Application Note_V1.00.pdf
SIM808_GPS_應(yīng)用文檔_V1.00.pdf
SIM900系列模塊AT應(yīng)用了解.ppt
SIM908 AT可參照SIM900 AT COMMAND.pdf


3 硬件設(shè)計手冊\
SIM808_Hardware Design_V1.00.pdf

4 工具\(yùn)
NMEA+GPS+Demo+V2.10\
網(wǎng)絡(luò)調(diào)試助手 GPRS調(diào)試助手\
Chiness_Unicode.exe
NMEA+GPS+Demo+V2.10.rar
sscom.ini
串口調(diào)試軟件sscom32_e666.cn.exe
網(wǎng)絡(luò)調(diào)試助手 GPRS調(diào)試助手.zip


5 使用手冊\
AN0004 SIM 模塊系列調(diào)試.docx
AN0008 GPS數(shù)據(jù)解析及調(diào)試方法.zip
AN0011 SSCOM問題匯總.docx
SIM808 V2.2.5 用戶手冊 V1.2.docx


6 尺寸-protel99se\
7 程序\
make a call.zip
send a chinese message.zip
send a english message.zip


GPS.PNG
GPS和電量.PNG
發(fā)短信.PNG
新建文本文檔.txt
連接百度.PNG

下面是gps和電量執(zhí)行效果:


連接百度:


AT+CSTT="cmnet"
AT+CIICR
AT+CIFSR
AT+CSCS="GSM"
AT+CIPSTART="TCP","www.baidu.com",80
AT+CIPSEND=5
HELLO
AT+CIPSEND

AT+CGPSPWR=1
AT+CGPSRST=1
AT+CGPSINF=32


AT+CBC

AT+CGATT?
AT+SAPBR=3,1,"CONTYPE","GPRS"
AT+SAPBR=3,1,"APN","CMNET"
AT+SAPBR=1,1  
AT+HTTPINIT
AT+HTTPPARA="URL","www.baidu.com/img/baidu_logo.gif"
AT+HTTPACTION=0
AT+HTTPREAD
AT+HTTPTERM

發(fā)送短信:

單片機(jī)源程序如下:
  1. /**********************************************************
  2.         程序說明:
  3.         功能:TEST(UCS2)模式下發(fā)送中英文短息,短消息儲存至SIM卡中
  4.         首先要確定模塊已經(jīng)注冊到網(wǎng)絡(luò)
  5.         然后正確的硬件連接   P3.0-----STXD或者5VT   P3.1-----SRXD或者5VR   GND---GND(只要保證公地即可,沒必要單獨(dú)接一次)
  6.         然后確認(rèn)你單片機(jī)上的晶振,根據(jù)晶振修改自己的程序。
  7.         推薦先將單片機(jī)與電腦相連,確定單片機(jī)發(fā)送的數(shù)據(jù)是正確的。如果發(fā)送的是亂碼,請檢查晶振與單片機(jī)的串口波特率。
  8.         如果通過以上幾條還解決不了問題,請看群共享文件 AN0004 。

  9. *************************************************************/
  10. #include <REG51.H>
  11. #include <string.H>
  12. #include <intrins.h>
  13. #define uchar unsigned char
  14. #define uint unsigned int
  15. //以下是板子上LED的配置,把Px_x改成自己對應(yīng)的腳。
  16. //以下是你的51單片機(jī)的晶振大小
  17. #define FOSC_110592M
  18. //#define FOSC_12M
  19. sbit P10=P1^0;
  20. sbit P11=P1^1;
  21. sbit P12=P1^2;
  22. sbit P13=P1^3;
  23. sbit P14=P1^4;
  24. sbit P15=P1^5;
  25. //以下是開機(jī)后發(fā)送到手機(jī)的內(nèi)容,發(fā)送的號碼在程序中修改。        
  26. unsigned int  rec_data_len_uart=0;    //標(biāo)記Buffer_Uart0接收數(shù)組
  27. unsigned char idata Buffer_Uart0_Rec[25]={0};                 //Uart0中斷接收數(shù)組
  28.    
  29. //注意,無論接收到信號還是發(fā)送完信號,都會進(jìn)中斷服務(wù)程序的
  30. /*初始化程序(必須使用,否則無法收發(fā)),次程序?qū)褂枚〞r器1*/
  31. void SerialInti()//初始化程序(必須使用,否則無法收發(fā))
  32. {
  33.         TMOD=0x20;//定時器1操作模式2:8位自動重載定時器

  34. #ifdef FOSC_12M                   //在這里根據(jù)晶振大小設(shè)置不同的數(shù)值初始化串口
  35.         TH1=0xf3;//裝入初值,波特率2400
  36.         TL1=0xf3;        
  37. #else         
  38.         TH1=0xfd;//裝入初值,波特率9600
  39.         TL1=0xfd;
  40. #endif //end of SOC_12M
  41.         
  42.         TR1=1;//打開定時器
  43.         SM0=0;//設(shè)置串行通訊工作模式,(10為一部發(fā)送,波特率可變,由定時器1的溢出率控制)
  44.         SM1=1;//(同上)在此模式下,定時器溢出一次就發(fā)送一個位的數(shù)據(jù)
  45.         REN=1;//串行接收允許位(要先設(shè)置sm0sm1再開串行允許)
  46.         EA=1;//開總中斷
  47.         ES=1;//開串行口中斷        
  48. }
  49. unsigned char hand(unsigned char *data_source,unsigned char *ptr)
  50. {
  51.         if(strstr(data_source,ptr)!=NULL)
  52.                 return 1;
  53.         else
  54.                 return 0;
  55. }
  56. void clear_rec_data()
  57. {
  58.         uchar i,temp_len;
  59.         temp_len=strlen(Buffer_Uart0_Rec);
  60.         if(temp_len>25)
  61.         {
  62.                 temp_len=25;
  63.         }
  64.         for(i=0;i<temp_len;i++)
  65.         {
  66.                 Buffer_Uart0_Rec[i]='\0';        
  67.         }
  68.         rec_data_len_uart=0;
  69. }

  70. /*串行通訊中斷,收發(fā)完成將進(jìn)入該中斷*/
  71. void Serial_interrupt() interrupt 4
  72. {
  73.         unsigned char temp_rec_data_uart0;        
  74.         temp_rec_data_uart0 = SBUF;//讀取接收數(shù)據(jù)               
  75.         RI=0;//接收中斷信號清零,表示將繼續(xù)接收                        
  76.         Buffer_Uart0_Rec[rec_data_len_uart]=temp_rec_data_uart0;        //接收數(shù)據(jù)
  77.         rec_data_len_uart++;
  78.         if(rec_data_len_uart>24)
  79.         {
  80.                 rec_data_len_uart=0;         //從頭開始接收數(shù)據(jù)
  81.         }        
  82. }
  83. void Uart1Send(uchar c)
  84. {
  85.         SBUF=c;
  86.         while(!TI);//等待發(fā)送完成信號(TI=1)出現(xiàn)
  87.         TI=0;        
  88. }
  89. //串行口連續(xù)發(fā)送char型數(shù)組,遇到終止號/0將停止
  90. void Uart1Sends(uchar *str)
  91. {
  92.         while(*str!='\0')
  93.         {
  94.                 SBUF=*str;
  95.                 while(!TI);//等待發(fā)送完成信號(TI=1)出現(xiàn)
  96.                 TI=0;
  97.                 str++;
  98.         }
  99. }
  100. //延時函數(shù)大概是1s鐘,不過延時大的話不準(zhǔn)...
  101. void DelaySec(int sec)
  102. {
  103.         uint i , j= 0;
  104.         for(i=0; i<sec; i++)
  105.         {
  106.                 for(j=0; j<65535; j++)
  107.                 {        
  108.                 }
  109.         }
  110. }
  111. void main()
  112. {
  113.         uchar i = 0;
  114.         SerialInti();
  115.     DelaySec(10);//延時約15秒,此處延時,是為了讓模塊有足夠的時間注冊到網(wǎng)絡(luò),
  116.     P14=1;                 //提示開始發(fā)送指令,開始發(fā)送指令時,務(wù)必確認(rèn)模塊上的LED 已經(jīng)慢閃,即模塊已經(jīng)注冊到網(wǎng)絡(luò)
  117. //----------------為什么是下面這些AT指令呢,請看群共享文件SIM900A重要的短信指令文件------------
  118.     Uart1Sends("AT+CSCS=\"UCS2\"\r\n");
  119.     DelaySec(1);//延時大約3秒
  120.     Uart1Sends("AT+CMGF=1\r\n");
  121.     DelaySec(1);//延時3秒
  122.         Uart1Sends("AT+CSCA?\r\n");
  123.     DelaySec(1);//延時3秒
  124.         Uart1Sends("AT+CSMP=17,167,0,25\r\n");
  125.     DelaySec(1);//延時3秒
  126.     Uart1Sends("AT+CMGS=\"00310038003800340036003900320030003000380039\"\r\n");//此處修改為對方的電話號,電話話的UNICON編碼,可使用我們配套的
  127.                                                                                                                                                                 //資料包中的 中文轉(zhuǎn)UNICON編碼工具來獲取。特別注意:那個軟件
  128.                                                                                                                                                                 //獲得的unicon 編碼待有空格,實(shí)際中要去掉,否則模塊會報錯
  129.     DelaySec(1);//延時3秒
  130.     Uart1Sends("4F60597D00680065006C006C006F");//修改短信內(nèi)容,短信內(nèi)容可為中文、英文和數(shù)字,但都是對應(yīng)的unicon 編碼。
  131.     Uart1Send(0x1a);
  132.     DelaySec(15);//延時20秒
  133. …………
  134. …………
  135. …………限于本文篇幅 余下代碼請從51黑下載附件…………
  136. }
復(fù)制代碼

所有資料51hei提供下載:
[stm32] SIM808模塊之發(fā)短信GPSTCPHTTP研究.rar (10.2 MB, 下載次數(shù): 305)



作者: ct991218620    時間: 2018-7-19 10:12
不錯的資料
作者: ujkh0.0    時間: 2018-7-24 10:39
感謝樓主的分享
作者: qwthh    時間: 2018-7-30 10:27
可以發(fā)送帶GPS定位的短信嗎???
另外一定要控制電腦才能發(fā)送嗎  不能單片機(jī)控制GSM自主發(fā)送嗎
作者: yinlingwei66    時間: 2018-10-11 17:49
想看看
作者: yinlingwei66    時間: 2018-10-11 19:26
感謝樓主的分享
作者: yinlingwei66    時間: 2018-10-12 08:25
不錯的資料
作者: yinlingwei66    時間: 2018-10-12 08:30
謝謝樓主分享
作者: jeasey    時間: 2018-11-10 09:20
好東西!
作者: foxpro2005    時間: 2018-11-29 08:31
不錯的資料,感謝分享
作者: JIANGKX    時間: 2019-3-13 09:59
qwthh 發(fā)表于 2018-7-30 10:27
可以發(fā)送帶GPS定位的短信嗎???
另外一定要控制電腦才能發(fā)送嗎  不能單片機(jī)控制GSM自主發(fā)送嗎

我也想知道呀?有解決方法嗎

作者: 2373925493    時間: 2019-5-3 13:13
qwthh 發(fā)表于 2018-7-30 10:27
可以發(fā)送帶GPS定位的短信嗎???
另外一定要控制電腦才能發(fā)送嗎  不能單片機(jī)控制GSM自主發(fā)送嗎

兄弟 我現(xiàn)在和你的方向一樣 ,不知道 你可搞懂了沒有,能否傳授我一些經(jīng)驗
作者: 2373925493    時間: 2019-5-3 13:14
JIANGKX 發(fā)表于 2019-3-13 09:59
我也想知道呀?有解決方法嗎

我也想知道 ,大佬 搞懂了沒 ,給小白分享下
作者: 癡迷電子    時間: 2019-9-9 09:43
不錯的資料,好好研究研究
作者: 1074474    時間: 2019-9-9 10:46
謝謝分享,學(xué)習(xí)一下
作者: flyincunt    時間: 2020-1-20 12:40
下載了,看了程序,只有發(fā)短信,打電話程序,基本沒有什么用
作者: rrwhx    時間: 2020-4-24 22:25
感謝分享,很想知道tcp連接
作者: srgbzf    時間: 2020-6-24 14:14
感謝分享,正找這資料呢
作者: wdliming    時間: 2021-3-11 10:14
謝謝作者,正在找相關(guān)資料




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1