久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5562|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)控制SIM900a發(fā)送短信

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
各位大神,我需要51單片機(jī)控制SIM900a發(fā)送短信的程序
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:130231 發(fā)表于 2017-4-14 23:36 | 只看該作者
我在網(wǎng)上找的你看看是否合適

  1. #include <reg52.h>
  2. #include <intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. sbit Send_SMS_PDU_key=P1^1;     //發(fā)PDU格式短信按鍵
  6. sbit LED0=P0^0;
  7. sbit LED1=P0^1;
  8. sbit LED2=P0^2;
  9. sbit LED3=P0^3;

  10. #define MAXCHAR 81
  11. uchar  aa[MAXCHAR];
  12. code uchar ATE0[]="ATE0\r\n";
  13. code uchar CREG_CMD[]="AT+CREG?\r\n";
  14. code uchar SMS_send[]="AT+CMGS=18\r\n";
  15. code uchar ATCN[]="AT+CNMI=2,1\r\n";
  16. code uchar CMGF[]="AT+CMGF=0\r\n";
  17. code uchar CMGR[12]="AT+CMGR=1\r\n";
  18. code uchar CMGD[12]="AT+CMGD=1\r\n";

  19. /*-----------------------------------------------------------------------
  20. 1.如果你的晶振是11.0592M
  21. 只需要修改下面的號(hào)碼就可以了,給成你手上拿著的手機(jī)的號(hào)碼


  22. 修改方法   在下面這段字符中找到 5129021411F5

  23. 其實(shí)5129021411F5 --> 15922041115
  24. 18622044083 8126924480F3


  25. 看明白了嗎  電話是兩位兩位顛倒 將您手上的手機(jī)號(hào)碼替換即可
  26. -----------------------------------------------------------------------*/
  27. uchar  code Sms2_Pdu[]="0891683108200205F011000B818126924480F30008A704521B601D";
  28. /*-----------------------------------------------------------------------
  29. 1.如果你的晶振不是11.0592M

  30. 則修改 Ini_UART 函數(shù) 波特率 9600


  31. 其他都不用動(dòng)

  32. -----------------------------------------------------------------------*/

  33. uchar a,j=0,flag=0;

  34. void delay(uint ms)// 延時(shí)子程序
  35. {
  36.     uchar i;
  37.     while(ms--)
  38.     {
  39.         for(i=0;i<120;i++);
  40.     }
  41. }


  42. /***********************************************************
  43. 函數(shù)名稱:Print_Char
  44. 函數(shù)功能:發(fā)送單個(gè)字符
  45.           入口參數(shù):ch      出口參數(shù):無(wú)
  46. ***********************************************************/
  47. Print_Char(uchar ch)//發(fā)送單個(gè)字符
  48. {
  49.     SBUF=ch; //送入緩沖區(qū)
  50.     while(TI!=1); //等待發(fā)送完畢
  51.     TI=0; //軟件清零
  52. }

  53. /***********************************************************
  54. 函數(shù)名稱:Print_Str
  55. 函數(shù)功能:發(fā)送字符串
  56.           入口參數(shù):*str    出口參數(shù):無(wú)
  57. ***********************************************************/
  58. Print_Str(uchar *str)//發(fā)送字符串
  59. {

  60.     while(*str!='\0')
  61.     {
  62.         Print_Char(*str);
  63.         delay(2);
  64.         str++;
  65.     }

  66. }

  67. /***********************************************************
  68. 函數(shù)名稱:Ini_UART
  69. 函數(shù)功能:串口初始化、定時(shí)器初始化
  70.           入口參數(shù):無(wú)     出口參數(shù):無(wú)
  71. ***********************************************************/
  72. Ini_UART(void)//串口初始化、定時(shí)器初始化
  73. {
  74.     SCON = 0x50 ;  //SCON: serail mode 1, 8-bit UART, enable ucvr
  75.     //UART為模式1,8位數(shù)據(jù),允許接收
  76.     TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload
  77.     //定時(shí)器1為模式2,8位自動(dòng)重裝
  78.     PCON |= 0x80 ; //SMOD=1;
  79.     TH1 = 0xFA ;   //Baud:19200 fosc="11".0592MHz
  80.     TL1=0xFA;
  81.     IE |= 0x90 ;     //Enable Serial Interrupt
  82.     TR1 = 1 ;       // timer 1 run
  83.     TI=1;
  84.     ES=1;
  85. }

  86. void clearBuff(void)
  87. {
  88.     for(j=0;j<MAXCHAR;j++)
  89.     {
  90.         aa[j]=0x00;
  91.     }
  92.     j=0;
  93. }

  94. void led(int i)
  95. {
  96.     P2 |= i;
  97.     delay(20);
  98.     P2 &= ~i;
  99.     delay(20);
  100.     P2 |= i;
  101.     delay(20);
  102.     P2 &= ~i;
  103. }



  104. void AT(void)
  105. {

  106.     while(1)
  107.     {
  108.         Print_Str(ATE0);
  109.         delay(50);

  110.         Print_Str(ATCN);
  111.         delay(50);

  112.         Print_Str(CMGF);
  113.         delay(100);

  114.         clearBuff();
  115.         Print_Str(CREG_CMD);
  116.         delay(50);


  117.         if(((aa[9]=='0')&&(aa[11]=='1'))||((aa[9]=='0')&&(aa[11]=='5')))
  118.         {
  119.             clearBuff();
  120.             led(0x02);
  121.             break;
  122.         }
  123.         else
  124.         {
  125.             clearBuff();

  126.             led(0x01);
  127.             delay(50);
  128.         }
  129.     }
  130. }


  131. void main()
  132. {

  133.     Ini_UART();    //初始化串口
  134.     AT();                   //初始化模塊
  135.     delay(10);

  136.     Print_Str(SMS_send);  //發(fā)送中文短信
  137.     delay(500);
  138.     led(0x04);

  139.     Print_Str(Sms2_Pdu);  //發(fā)短信內(nèi)容
  140.     delay(500);
  141.     led(0x08);

  142.     Print_Char(0x1A);      //發(fā)送結(jié)束符號(hào)
  143.         delay(500);

  144.         Print_Str("ATD18622944083;\r\n"); //打電話

  145.     while(1);
  146. }

  147. void ser() interrupt 4
  148. {



  149.     if(RI==1)
  150.     {  aa[j]=SBUF;//命令存到命令數(shù)組

  151.         RI=0; //軟件清除接收中斷
  152.         j++;
  153.     }


  154. }
復(fù)制代碼

下載:
SIM900A 的 51 52單片機(jī)驅(qū)動(dòng).zip (1.5 MB, 下載次數(shù): 117)


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91精品国产综合久久久动漫日韩 | 性做久久久久久免费观看欧美 | 免费精品视频 | 精品一级 | 7777在线| 亚洲视频在线免费观看 | 久久av一区二区三区 | 亚洲高清在线观看 | a在线观看| 日韩精品一区二区三区中文字幕 | 五月槐花香 | 婷婷丁香在线视频 | av电影一区二区 | 久草.com| 亚洲精品一 | 在线观看国产视频 | 黄色片网此 | 久久这里只有精品首页 | 91精品入口蜜桃 | 91精品午夜窝窝看片 | 色婷婷久久久亚洲一区二区三区 | 欧美在线一区二区三区 | 一区二区在线不卡 | 手机av在线| 国产精品久久777777 | 在线欧美视频 | 国产精品视频一 | 亚欧午夜 | 久久九九99 | 91av视频| 538在线精品 | 欧美亚洲视频 | 久久综合九九 | h片在线免费看 | 欧美综合国产精品久久丁香 | 狠狠亚洲 | 色视频成人在线观看免 | 久久69精品久久久久久久电影好 | 欧美一区二区另类 | 免费国产一区二区视频 | 国产精品久久久久无码av |