• 大小: 65KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-12-27
  • 语言: 其他
  • 标签: 51  gprs  

资源简介

51单片机,gprs模块收发短信例程,GA6 模块,包含短信收发,和回复短信操作

资源截图

代码片段和文件信息

/**************************************************************
         果云科技  GA6  模块      

51 单片机例程       

KEY1 : 发送TEXT模式的短信     

本例程使用11.0592MHZ时钟---->必须为11.0592M

串口设置为:96008n1.

技术支持: 杜工

******************************************/
#include 
#include “string.h“
#include “GA6_module_errors.h“


typedef  unsigned char u8;
typedef  unsigned int u16;
typedef  unsigned long u32;


/************* 本地常量声明 **************/

#define Buf_Max      70  //串口1缓存长度
#define STABLE_TIMES   10 //等待上电后稳定,再进行自适应波特率     

/************* 本地变量声明 **************/

//串口1发送回车换行
#define UART1_SendLR() UART1_SendData(0X0D);UART1_SendData(0X0A)

/*LED端口定义*/

sbit LED0 = P1^0;
sbit LED1 = P1^1;
sbit LED2 = P1^2;
sbit LED3 = P1^3;
sbit LED4 = P1^4;
sbit LED5 = P1^5;
sbit LED6 = P1^6;
sbit LED7 = P1^7;

/*KEY端口定义*/

sbit KEY0 = P2^4;
sbit KEY1 = P2^5;
sbit KEY2 = P2^6;
sbit KEY3 = P2^7;

/*************  本地变量声明 **************/
xdata u8 Uart1_Buf[Buf_Max];
u8 First_Int = 0;

static u8  *phone_num = “AT+CMGS=\“15815522222\““; //拨打电话,修改这里可以修改拨打的电话。

u16 count_20ms;

/************* 本地函数声明 **************/
void delay_ms(u16 ms);   //延时ms个20ms  ms*20ms
void CLR_Buf(void);      //清串口接收缓存
u8   Find(u8 *a);        //查找字符串
void UART1_SendData(u8 dat);   //串口1发送 1字节
void UART1_SendString(char *s);//串口1发送 字符串
void UART1_Send_Command(char *s);
u8   UART1_Send_AT_Command(u8 *bu8 *au8 wait_timeu16 interval_time);//at命令发送
u8 UART1_Send_AT_Command_END(u8 *bu8 *au8 wait_timeu16 interval_time);

u8 Wait_CREG(u8 query_times);

void Timer0Init(void) //20毫秒@115200
{
TMOD &= 0xF0;
TMOD |= 0x01; //
TL0 = (65536-20000)%256; //
TH0 = (65536-20000)/256; //
TF0 = 0; //
ET0 = 1;       //
TR0 = 1; //开始计时
}

void Uart1Init(void) //9600bps@11.05926MHz
{
PCON &= 0x7F; //
SCON = 0x50; //
TMOD &= 0x0F; //
TMOD |= 0x20; //
TL1 = 0xFD;   //
TH1 = 0xFD;   //
ET1 = 0;     //
TR1 = 1;     //
ES  = 1; //
}

int check_status(void)
{
int ret;

ret = UART1_Send_AT_Command(“AT““OK“350);//测试通信是否成功
if(ret == 0)
{
return COMMUNITE_ERROR;
}

ret = UART1_Send_AT_Command(“AT+CPIN?““READY“250);//查询卡是否插上
if(ret == 0)
{
return NO_SIM_CARD_ERROR;
}

ret = Wait_CREG(3);//查询卡是否注册到网络
if(ret == 0)
{
return SIM_CARD_NO_REG_ERROR;
}
return 1;
}

/***************************************************************
注:当然你可以返回其他值,来确定到底是哪一步发送指令出现失败了。
****************************************************************/
int send_text_message(char *content)
{
u8 ret;
char end_char[2];

end_char[0] = 0x1A;//结束字符
end_char[1] = ‘\0‘;

//设置存储位置
ret = UART1_Send_AT_Command(“AT+CPMS=\“SM\“\“ME\“\“SM\“““OK“3100);
if(ret == 0)
{
return AT_CPMS_ERROR;
}

ret = UART1_Send_AT_Command(“AT+CMGF=1““OK“350);//配置为TEXT模式
if(ret == 0)
{
return AT_CMGF_ERROR;
}


ret = UART1_Send_AT_Command(“AT+CSCS=\“GSM\“““OK

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

     文件        455  2017-06-17 14:32  C语言\GA6_module_errors.h

     文件       9164  2017-07-30 11:03  C语言\main.c

     文件      20390  2017-07-30 11:10  C语言\main.LST

     文件      19826  2017-07-30 11:10  C语言\main.OBJ

     文件       3130  2016-10-25 18:08  C语言\UART1.LST

     文件      18416  2017-06-02 21:52  C语言\UART1.M51

     文件       1012  2014-04-11 20:24  C语言\UART1.opt.bak

     文件       1984  2014-04-11 15:12  C语言\UART1.Uv2.bak

     文件      70790  2017-07-30 11:10  C语言\UART1.uvgui.Administrator

     文件      71327  2017-06-17 19:10  C语言\UART1.uvgui.dupenghui

     文件      70875  2018-05-21 21:47  C语言\UART1.uvgui.oooCKooo

     文件      76677  2016-11-10 11:44  C语言\UART1.uvgui.Shinelon

     文件      76911  2016-11-09 22:40  C语言\UART1.uvgui_Shinelon.bak

     文件       6191  2017-07-30 11:10  C语言\UART1.uvopt

     文件      13787  2017-07-30 11:10  C语言\UART1.uvproj

     文件         44  2016-10-25 18:08  C语言\UART1.__i

     文件       1013  2014-04-11 20:21  C语言\UART1_Opt.Bak

     文件       2064  2013-05-28 21:12  C语言\UART1_Uv2.Bak

     文件      16990  2017-07-30 11:10  C语言\发送TEXT英文短信

     文件        987  2017-07-30 11:10  C语言\发送TEXT英文短信.build_log.htm

     文件       4927  2017-07-30 11:10  C语言\发送TEXT英文短信.hex

     文件         52  2017-07-30 11:10  C语言\发送TEXT英文短信.lnp

     文件      21594  2017-07-30 11:10  C语言\发送TEXT英文短信.M51

     目录          0  2018-05-29 00:48  C语言

----------- ---------  ---------- -----  ----

               508606                    24


评论

共有 条评论