´Ë³ÌÐò±¾ÈËÌôÕ½±µÄÔ´³ÌÐò£¬´Ë³ÌÐòÉè¼Æµ½ºÜ¶à¹Ø¼üÖ¸Á³ÌÐòÒѾͨ¹ýʵÑ飬ÎÞÈκδíÎó¡£#includereg52.h#includeabsacc.h#includeintrins.h#defineuintunsignedint#defineucharunsignedcharsbitD10LED=P0^0;//·äÃùÆ÷sbitD11LED=P0^1;//ָʾµÆ1ucharflag;uchara;ucharxdatagpsshuju[47];//ÔʼÊý¾Ýucharxdatajingdu[12];ucharxdataweidu[11];ucharcodejing[15]=longitude:;ucharcodewei[9]=latitude:;ucharcodexinhaobuhao[50]=Poorsignal,Pleasemovesomewhereofbettersignal;ucharcodeasc[5]=GPRMC;ucharcodeTxtMode[9]={AT+CMGF=1};//¶ÌÐÅģʽÉèÖÃTXTģʽucharcodeCSCA[22]={AT+CSCA=+8613800230500};//£¨ÖÐÐĺÅÂëÉèÖã©ucharcodeCMGS[19]={AT+CMGS=15922941973};//£¨¶ÌПñʽÉèÖÿÉÒÔΪ¹Ì¶¨+86µÄÊÖ»ú£©ucharcodeAT[]={AT};//Áª»úÃüÁîdelay_Xms(uintt){uinti,j;for(i=t;i0;i--)for(j=113;j0;j--);}voidext1()interrupt0using2{a=1;D10LED=0;D11LED=0;delay_Xms(30000);D10LED=1;D11LED=1;IE=0X90;}voidgps()interrupt4using0{inti=0;while(1){if(a==1){if(SBUF=='R'){for(i=0;i47;i++){gpsshuju[i]=SBUF;while(RI==0);RI=0;EA=0;}flag=1;return;}while(RI==0);RI=0;}}}Print_Char(ucharch)//·¢Ë͵¥¸ö×Ö·û{SBUF=ch;//ËÍÈ뻺³åÇøwhile(TI==0);//µÈ´ý·¢ËÍÍê±ÏTI=0;//Èí¼þÇåÁã}Print_Str(uchar*str,uintlen)//·¢ËÍ×Ö·û´®,µ÷ÓÃSend_Char()len×Ö·û´®³¤¶È{while(len--){Print_Char(*str++);}}/*************************************************************/init_chuankou(){EA=0;//¹Ø×ÜÖжÏflag=0;a=0;IE=0X95;IP=0X01;//ÉèÖÃÖжÏÓÅÏȼ¶SCON=0X50;TMOD=0X20;TH1=0XFD;TL1=0XFD;//²¨ÌØÂÊΪ9600TR1=1;EA=1;}/*******************************************************//********************************************************/voidGSM_AT()//·¢¡°AT¡±µÄº¯Êý{Print_Str(AT,2);Print_Char(0X0D);//ÒԻسµ×÷Ϊ½áÊø·ûºÅ£¬ÊÖ»ú²ÅÄÜʶ±ðPrint_Char(0X0D);Print_Char(0X0A);ES=1;delay_Xms(1000);//ÑÓʱ}/***************************¶ÌÐÅ**********************************/voidGSM_TXT()//·¢ËÍAT+cmgf=1ÉèÖöÌÐÅģʽTXT{Print_Str(TxtMode,9);Print_Char(0X0D);Print_Char(0X0D);Print_Char(0X0A);ES=1;delay_Xms(1000);}voidGSM_CSCA()//·¢ËÍAT+csca=£¨·¢¶ÌÐŵÄÃüÁ{Print_Str(CSCA,22);Print_Char(0X0D);//ÒԻسµ×÷Ϊ½áÊø·ûºÅ£¬ÊÖ»ú²ÅÄÜʶ±ðPrint_Char(0X0D);Print_Char(0X0A);ES=1;delay_Xms(1000);//ÑÓʱ}voidGSM_CMGS()//CMGS{Print_Str(CMGS,19);Print_Char(0X0D);//ÒԻسµ×÷Ϊ½áÊø·ûºÅ£¬ÊÖ»ú²ÅÄÜʶ±ðPrint_Char(0X0D);Print_Char(0X0A);ES=1;delay_Xms(1000);//ÑÓʱ}voidGSM_HUA1()//CMGS{Print_Str(wei,9);Print_Str(weidu,11);Print_Str(jing,15);Print_Str(jingdu,12);delay_Xms(1000);//ÑÓʱPrint_Char(0X1A);Print_Char(0X0D);Print_Char(0X0D);Print_Char(0X0A);//ÒԻسµ×÷Ϊ½áÊø·ûºÅ£¬ÊÖ»ú²ÅÄÜʶ±ð}voidGSM_HUA2(){Print_Str(xinhaobuhao,50);delay_Xms(1000);//ÑÓʱPrint_Char(0X1A);Print_Char(0X0D);Print_Char(0X0D);Print_Char(0X0A);//ÒԻسµ×÷Ϊ½áÊø·ûºÅ£¬ÊÖ»ú²ÅÄÜʶ±ð}voidmain(){intk=0,m=1;init_chuankou();//´®¿Ú³õʼ»¯delay_Xms(4000);EA=1;while(m){while(flag){TI=0;if(gpsshuju[15]=='A'){for(k=0;k11;k++)weidu[k]=gpsshuju[17+k];for(k=0;k12;k++)jingdu[k]=gpsshuju[29+k];GSM_AT();GSM_TXT();delay_Xms(1000);GSM_CSCA();delay_Xms(1000);GSM_CMGS();GSM_HUA1();delay_Xms(1000);delay_Xms(1000);}else{GSM_AT();GSM_TXT();delay_Xms(1000);GSM_CSCA();delay_Xms(1000);GSM_CMGS();GSM_HUA2();delay_Xms(1000);delay_Xms(1000);}m=0;break;}}}