GPRS-GSM程序(5)

2020-04-17 01:57

Cal_Crc(&Rx1_Data_Buffer[i+1],5);//计算CRC Temp2=Rx1_Data_Buffer[i+6];

Temp2=(Temp2<<8)+Rx1_Data_Buffer[i+7]; if(CRC==Temp2)//若CRC相等,则为心跳信号。 {

P2OUT&=~0X02;//接收心跳时:灯亮。 Beat_Rcv_Fail=0;//心跳接收失败次数 Heart_Beat_Interval=600; Beat_Rcved_Flag=1; Beat_Test_Start=0;

Minute2_Interval=12000;//2分钟通信间隔检测。 Minute2_Interval_Flag=0; Second=0; Minute=0;

if(Rx1_Data_Buffer[i+3]!=Heart_Beat_Time) {

if(Rx1_Data_Buffer[i+3]==255) return;

Heart_Beat_Time=Rx1_Data_Buffer[i+3]; Temp_iArray[0]=Heart_Beat_Time;

Wr_Data(Beat_Addr,1,Temp_iArray);//保存数据为16进制 Feed_WatchDog();

Wr_Data(Beat_Addr+100,1,Temp_iArray);

Rd_Data(0,91,Temp_iArray);//读取数据,重新计算CRC,然后保存。 for(j=0;j<=90;j++)

{

Temp_cArray[j]=Temp_iArray[j]; }

Feed_WatchDog();

Cal_Crc(&Temp_cArray[1],88);

Temp_iArray[1]=CRC&0x00FF; //CRC低位 Temp_iArray[0]=(CRC>>8)&0x00FF; //CRC高位

Wr_Data(89,2,Temp_iArray); //读取数据,重新计算CRC,然后保存。

Feed_WatchDog();

Wr_Data(189,2,Temp_iArray); } return; } }

//检测浙江GPRS心跳信号

if((Rx1_Data_Buffer[i]==0x68)&&(Rx1_Data_Buffer[i+7]==0x68)&&(Rx1_Data_Buffer[i+8]== {

P2OUT&=~0X02;//接收心跳时:灯亮。

Beat_Rcv_Fail=0;//心跳接收失败次数 Heart_Beat_Interval=600; Beat_Rcved_Flag=1; Beat_Test_Start=0;

Minute2_Interval=12000;//2分钟通信间隔检测。 Minute2_Interval_Flag=0; Second=0; Minute=0; Heart_Flag=0; }

//检测浙江正常登陆

if((Rx1_Data_Buffer[i]==0x68)&&(Rx1_Data_Buffer[i+7]==0x68)&&(Rx1_Data_Buffer[i+8]== {

P2OUT&=~0X02;//接收心跳时:灯亮。 Beat_Rcv_Fail=0;//心跳接收失败次数 Heart_Beat_Interval=600; Beat_Rcved_Flag=1; Beat_Test_Start=0;

Minute2_Interval=12000;//2分钟通信间隔检测。 Minute2_Interval_Flag=0; Second=0; Minute=0;

Load_Master_Flag=1;//登陆主站成功 }

//******以下为短信设置处理程序******。

if((Rx1_Data_Buffer[i]=='0')&&(Rx1_Data_Buffer[i+1]=='8')&&(Rx1_Data_Buffer[i+2]=='9' {

Feed_WatchDog(); for(j=0;j<=11;j++) {

// Center_SIM[j]=Rx1_Data_Buffer[26+i+j];//将发送手机号码的提取。

Temp_Sim[j]=Rx1_Data_Buffer[26+i+j]; }

Asci_To_Hex(&Rx1_Data_Buffer[i],Rx1_Pointer-i+1);//CHANGED 11.5 +1将收到的短信 _NOP();

if((Temp_cArray[29]==0x2F)&&(Temp_cArray[31]==90)&&(Temp_cArray[34]==0xFD))//判断 { //通过主站设置的命令处理

Cal_Crc(&Temp_cArray[1],88);//计算CRC Temp2=Temp_cArray[89];//比较CRC Temp2=Temp2<<8;

Temp2=Temp2+Temp_cArray[90];

if(CRC==Temp2)//若CRC相等,则为设置命令 { //检验密码

if((Temp_cArray[57]==PassWord[0])&&(Temp_cArray[58]==PassWord[1])&&( goto Pass0;

if((Temp_cArray[57]=='H')&&(Temp_cArray[58]=='O')&&(Temp_cArray[59]== {//超级密码

Pass0:;

for(i=0;i<=90;i++) {

Temp_iArray[i]=Temp_cArray[i+29]; }

Wr_Data(Estart_Addr,91,&Temp_iArray[29]);//将设置数据写到EEPROM _NOP();

Wr_Data(Estart2_Addr,91,&Temp_iArray[29]);//将数据备份。100~190 SMS_Mode=1;

Echo_SMS_Master(7);//返回短信正确设置命令。 SMS_Mode=0xff; } return; } }

if(Temp_cArray[20]==0X00)//短信是7bit编码 { //通过手机设置的命令处理。 SMS_Mode=0;


GPRS-GSM程序(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:宾阳县召开第三季度经济运行分析会

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: