stm32f407 GPRS通信源码


stm32f407 GPRS 数据通信源码
资源截图
代码片段和文件信息
#include “gprs_A6.h“
#include “uart.h“
#include “string.h“
#include “stdlib.h“

uint8_t gprs_rx_buff[2048];
uint32_t gprs_rx_len;
/**************************************************************/
/**************************************************************/
/**************************************************************/
static int gprs_cmd_send(char * data)
{
    while(*data != 0)
    {
        uart6_tx((uint8_t *)data 1);
        data++;
    }
    return 0;
}

static int gprs_data_send(uint8_t * data uint32_t len)
{
    while(len > 0)
    {
        uart6_tx((uint8_t *)data 1);
        data++;
        len--;
    }
    return 0;
}

static void gprs_rx_IRQ(uint8_t * data)
{
    if(gprs_rx_len < sizeof(gprs_rx_buff))
        gprs_rx_len++;
    gprs_rx_buff[gprs_rx_len] = * data;
}

static void gprs_delay(uint32_t ms)
{
    HAL_Delay(ms);
}

static uint32_t gprs_wait_cmd(uint32_t ms)
{
    uint32_t cnt;
    cnt = ms/20;
    while(cnt)
    {
        gprs_delay(20);
        if(strstr((const char *)gprs_rx_buff+1 “OK
“) != NULL)
        {
            return 0;
        }
        else if(strstr((const char *)gprs_rx_buff+1 “ERROR“) != NULL)
        {
            return 1;
        }
        else 
        {
            cnt--;
        }
    }
    return 1;
}

static uint32_t gprs_wait_str1(uint32_t ms char * str)
{
    uint32_t cnt;
    cnt = ms/20;
    while(cnt)
    {
        gprs_delay(20);
        if(strstr((const char *)gprs_rx_buff+1 str) != NULL)
        {
            return 0;
        }
        else if(strstr((const char *)gprs_rx_buff+1 “ERROR“) != NULL)
        {
            return 1;
        }
        else
        {
            cnt--;
        }
    }
    return 1;
}

static uint32_t gprs_wait_str2(uint32_t ms char * str1 char * str2)
{
    uint32_t cnt;
    cnt = ms/20;
    while(cnt)
    {
        gprs_delay(20);
        if(strstr((const char *)gprs_rx_buff+1 str1) != NULL && strstr((const char *)gprs_rx_buff+1 str2) != NULL)
        {
            return 0;
        }
        else if(strstr((const char *)gprs_rx_buff+1 “ERROR“) != NULL)
        {
            return 1;
        }
        else
        {
            cnt--;
        }
    }
    return 1;
}

static uint32_t gprs_send_wait(char * cmd)
{
    memset(gprs_rx_buff 0 sizeof(gprs_rx_buff));
    gprs_rx_len = 0;
    gprs_cmd_send(cmd);
    if(gprs_wait_cmd(10000) != 0)
    {
        return 1;
    }
    return 0;
}

static uint32_t gprs_reset(void)
{
    memset(gprs_rx_buff 0 sizeof(gprs_rx_buff));
    gprs_rx_len = 0;
    gprs_cmd_send(“AT+RST=1
“);
    gprs_delay(15000);
    return 0;
}

static uint32_t gprs_set(void)
{
    if(gprs_send_wait(“AT
“) != 0)
    {
        return 1;
    }
        
    if(gprs_send_wait(“ATE0
“) != 0)
    {
        return 1;
    }
    
    if(gprs_send_wait(“AT+CCID
“) != 0)
    {
       

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        320  2017-03-30 16:30  f407_gprs_A6appIncgprs_A6.h

     文件       2883  2017-01-10 18:43  f407_gprs_A6appIncmain.h

     文件      16730  2017-04-10 18:38  f407_gprs_A6appIncstm32f4xx_hal_conf.h

     文件      16730  2016-06-27 22:08  f407_gprs_A6appIncstm32f4xx_hal_conf.h~RF453d0fb.TMP

     文件      16730  2017-03-22 16:00  f407_gprs_A6appIncstm32f4xx_hal_conf.h~RFb463888.TMP

     文件       3433  2016-06-27 22:08  f407_gprs_A6appIncstm32f4xx_it.h

     文件       1958  2017-03-30 14:18  f407_gprs_A6appIncuart.h

     文件       7582  2017-04-10 18:47  f407_gprs_A6appSrcgprs_A6.c

     文件       8689  2017-04-10 18:39  f407_gprs_A6appSrcmain.c

     文件       3039  2017-03-22 10:14  f407_gprs_A6appSrcstm32f4xx_hal_msp.c

     文件       6258  2017-03-22 16:11  f407_gprs_A6appSrcstm32f4xx_it.c

     文件       9773  2017-04-10 18:37  f407_gprs_A6appSrcsystem_stm32f4xx.c

     文件       6430  2017-04-01 13:58  f407_gprs_A6appSrcuart.c

     文件       7265  2016-06-27 21:19  f407_gprs_A6cmsisIncludearm_common_tables.h

     文件       3942  2016-06-27 21:19  f407_gprs_A6cmsisIncludearm_const_structs.h

     文件     252339  2016-06-27 21:19  f407_gprs_A6cmsisIncludearm_math.h

     文件      24423  2016-06-27 21:19  f407_gprs_A6cmsisIncludecmsis_armcc.h

     文件      55083  2016-06-27 21:19  f407_gprs_A6cmsisIncludecmsis_armcc_V6.h

     文件      41435  2016-06-27 21:19  f407_gprs_A6cmsisIncludecmsis_gcc.h

     文件      37218  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cm0.h

     文件      44796  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cm0plus.h

     文件     103909  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cm3.h

     文件     114498  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cm4.h

     文件     139660  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cm7.h

     文件       3620  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cmFunc.h

     文件       3636  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cmInstr.h

     文件       3662  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_cmSimd.h

     文件      45262  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_sc000.h

     文件     102809  2016-06-27 21:19  f407_gprs_A6cmsisIncludecore_sc300.h

     文件      30232  2016-06-28 23:03  f407_gprs_A6cmsisstartup_stm32f407xx.s

............此处省略239个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)