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

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

QQ登錄

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

搜索
查看: 3837|回復(fù): 0
收起左側(cè)

stm32使用gsm模塊打電話(huà)代碼

[復(fù)制鏈接]
ID:251082 發(fā)表于 2018-6-24 11:20 | 顯示全部樓層 |閱讀模式
stm32使用gsm模塊打電話(huà)代碼

單片機(jī)源程序如下:
  1. /*****************************************************       
  2. 接線(xiàn)說(shuō)明:
  3. STM32                                        A6&A7
  4. GND                <----->        GND
  5. PA2                ------>        U_RXD
  6. PA3                <------        U_TXD

  7. //用于調(diào)試可不接
  8. STM32                                        USB-TTL模塊
  9. GND                ------>        GND
  10. TX1                ------>        RXD
  11. ***********************************************************/

  12. #include "stm32f10x.h"
  13. #include "delay.h"
  14. #include "usart.h"
  15. #include "led.h"
  16. #include "usart2.h"


  17. //常量
  18. #define Success 1U
  19. #define Failure 0U

  20. //定義變量
  21. unsigned long  Time_Cont = 0;       //定時(shí)器計(jì)數(shù)器

  22. char phoneNumber[] = "1771922xxxx";                //替換成需要被撥打電話(huà)的號(hào)碼


  23. void errorLog(int num);
  24. void phone(char *number);
  25. unsigned int sendCommand(char *Command, char *Response, unsigned long Timeout, unsigned char Retry);
  26. void Sys_Soft_Reset(void);

  27. int main(void)
  28. {       
  29.         delay_init();
  30.        
  31.         NVIC_Configuration();          //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級(jí),2位響應(yīng)優(yōu)先級(jí)
  32.         uart_init(9600);         //串口初始化為9600
  33.         USART2_Init(115200);        //串口2波特率9600
  34.         u2_printf("AT\r\n");
  35.         Init_LEDpin();
  36.        
  37.        
  38.        
  39.         printf("Welcome to use!\r\n");
  40.         printf("ILoveMcu.taobao.com!\r\n");
  41.        
  42.         if (sendCommand("AT\r\n", "OK", 3000, 10) == Success);
  43.         else errorLog(1);
  44.         delay_ms(10);

  45.         if (sendCommand("AT+CPIN?\r\n", "READY", 1000, 10) == Success);
  46.         else errorLog(2);
  47.         delay_ms(10);

  48.         if (sendCommand("AT+CREG?\r\n", "CREG: 1", 1000, 10) == Success);
  49.         else errorLog(3);
  50.         delay_ms(10);

  51.         phone(phoneNumber);                //打電話(huà)
  52.        
  53.         while(1)
  54.         {
  55.                
  56.         }
  57. }

  58. void errorLog(int num)
  59. {
  60.         printf("ERROR%d\r\n",num);
  61.         while (1)
  62.         {
  63.                 if (sendCommand("AT\r\n", "OK", 100, 10) == Success)
  64.                 {
  65.                         Sys_Soft_Reset();
  66.                 }
  67.                 delay_ms(200);
  68.         }
  69. }

  70. void Sys_Soft_Reset(void)
  71. {  
  72.     SCB->AIRCR =0X05FA0000|(u32)0x04;      
  73. }

  74. void phone(char *number)
  75. {
  76.         char send_buf[20] = {0};
  77.         memset(send_buf, 0, 20);    //清空
  78.         strcpy(send_buf, "ATD");
  79.         strcat(send_buf, number);
  80.         strcat(send_buf, ";\r\n");

  81.         if (sendCommand(send_buf, "SOUNDER", 10000, 10) == Success);
  82.         else errorLog(4);
  83. }

  84. unsigned int sendCommand(char *Command, char *Response, unsigned long Timeout, unsigned char Retry)
  85. {
  86.         unsigned char n;
  87.         USART2_CLR_Buf();
  88.         for (n = 0; n < Retry; n++)
  89.         {
  90.                 u2_printf(Command);                 //發(fā)送GPRS指令
  91.                
  92.                 printf("\r\n***************send****************\r\n");
  93.                 printf(Command);
  94.                
  95.                 Time_Cont = 0;
  96.                 while (Time_Cont < Timeout)
  97.                 {
  98.                         delay_ms(100);
  99.                         Time_Cont += 100;
  100.                         if (strstr(USART2_RX_BUF, Response) != NULL)
  101.                         {                               
  102.                                 printf("\r\n***************receive****************\r\n");
  103.                                 printf(USART2_RX_BUF);
  104.                                 USART2_CLR_Buf();
  105.                                 return Success;
  106.                         }
  107.                        
  108.                 }
  109.                 Time_Cont = 0;
  110.         }
  111.         printf("\r\n***************receive****************\r\n");
  112.         printf(USART2_RX_BUF);
  113.         USART2_CLR_Buf();
  114.         return Failure;
  115. }
復(fù)制代碼

所有資料51hei提供下載:
01.STM32撥打電話(huà).rar (319.11 KB, 下載次數(shù): 42)


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 一区二区国产精品 | 欧美老妇交乱视频 | 久久精品国产久精国产 | 麻豆亚洲 | 欧美日韩久久精品 | 欧美偷偷 | 2021狠狠天天天 | 天天综合网天天综合色 | 国产精品免费一区二区三区 | 亚洲成人一区二区三区 | 北条麻妃视频在线观看 | www.成人在线视频 | 久久久久亚洲精品国产 | 日日日干干干 | 最新av中文字幕 | 99国产精品视频免费观看一公开 | 久草青青草 | 久久婷婷香蕉热狠狠综合 | 欧美专区在线 | 成人精品久久日伦片大全免费 | 亚洲国产精品久久久久秋霞不卡 | 精品国产乱码久久久久久丨区2区 | 毛片综合 | 日韩三区 | 欧美成人精品激情在线观看 | 影音先锋亚洲资源 | 青娱乐av| 亚洲天堂一区 | 亚州午夜精品 | 欧美日韩亚洲视频 | 日韩影音 | 国产免费一区二区三区最新6 | 亚洲狠狠丁香婷婷综合久久久 | 中文在线一区 | 成人国产精品久久久 | 春色av| 91视视频在线观看入口直接观看 | 国产美女自拍视频 | 日日夜夜草| 国产精品久久久久久久久久免费看 | 亚洲欧美中文日韩在线v日本 |