亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? gprs003.c

?? MSP430與GPRS短消息收發(fā)例程
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
      Rx1_Time_Counter=0;
      Rx1_TimeOut_Flag=1;//超時(shí)標(biāo)志置位
     }
  } 
if(Rx0_Start_Flag==1)//串口0接收計(jì)時(shí)。
  {
     Rx0_Time_Counter++;
   if(Rx0_Time_Counter>=4)
     {
      Rx0_Time_Counter=0;
      Rx0_TimeOut_Flag=1;//超時(shí)標(biāo)志置位
     }
  } 
 }
  //================================
 //函數(shù):TimerA_Int()
 //功能:定時(shí)器A比較1中斷
 //輸入?yún)?shù):
 //輸出參數(shù):
 //================================
 #pragma vector=TIMERA1_VECTOR
__interrupt void  TimerA1_Int(void)  
 {
  if(TAIV==2)
  {
    Wait_Result_Time--;
  if(Wait_Result_Time==0)
      {
        Wait_Result_Time=100;//
        Wait_Result_TimeOut=1;
      }
   if(Ring_Start_Flag==1)
        {
          if(Ring_Time++>=6000)//60s for ring bell
           {
             Ring_Time=0;
             Ring_Start_Flag=0;
             Tel_Ring_Counter=0;
           }
        }     
    
 if((Second==2900)||(Second==5900))//to test
     {
        P2OUT|=0X02;//接收心跳時(shí):燈亮。
        Heart_Flag=1;
     }
 /*if((Signalmscnt++)>=500)
        // if((Minute%1)==0)//to test
          {  
           Signalmscnt=0;
           Inqury_Signal_Flag=1;
          }
 */
   if(Second++>=6000)//60s
      {
          Second=0;
          Minute++;
       
        if((Minute%1)==0)//to test
          {  
           Inqury_Signal_Flag=1;
          }
         if(Minute>=Heart_Beat_Time)//心跳周期。
           {
             nMinute_Beat_Flag=1; 
             Minute=0;
           }
         if(Minute>=254)
           Minute=0;  
       }
      
    Heart_Beat_Interval--;    //自動(dòng)連接間隔時(shí)間
  if(Heart_Beat_Interval==0)  //自動(dòng)連接時(shí)間到。
     {
       Heart_Beat_Flag=1; 
       Heart_Beat_Interval=6000;
     }
      
  if((Read_SMS_Time--)==0)
   {  
     Read_SMS_Time=60000;//每5分鐘讀取SIM中短信1次。
     Read_SMS_Flag=1;
    }
 if((Minute2_Interval--)==0)
   {
     Minute2_Interval=12000;
     Minute2_Interval_Flag=1;
   }
 if(Beat_Test_Start==1)
   {
    if((Beat_Test_Interval--)==0)//心跳測(cè)試間隔為30秒。 
   {
     Beat_Test_Start=0;
     Beat_Test_Fail=1;
   }
  } 
}
}
//===============================
 //函數(shù) :UART0_RX()中斷矢量
 //功能: 串口0接收中斷服務(wù)
 //輸入?yún)?shù):
 //輸出參數(shù):
 //================================
#pragma vector=UART0RX_VECTOR
__interrupt void  UART0Rx_Int(void)  
{
 UTCTL0&=~URXSE;
  Rx0_Time_Counter=0;//每次接收到數(shù)據(jù),則接收間隔清零。
  if(Rx0_Start_Flag==0)
    {
     Rx0_Start_Flag=1;//串口0開始接收到數(shù)據(jù)
     Rx0_Pointer=0;
    }
  Rx0_Data_Buffer[Rx0_Pointer++]=RXBUF0;
  //if(DSR==0)
  //  TXBUF1=RXBUF0;
 }
//===============================
 //函數(shù): UART0_TX()
 //功能: 串口0發(fā)送中斷服務(wù)
 //輸入?yún)?shù):
 //輸出參數(shù):
 //================================
#pragma vector=UART0TX_VECTOR
__interrupt void  UART0Tx_Int(void)  
{
 if(Tx0_Snd_Lenth!=0)
  {
   TXBUF0=*(Pointer0+Tx0_Pointer);
   Tx0_Snd_Lenth--;
   Tx0_Pointer++;
  }
 else
   for(ii=Tx0_Pointer;ii<=250;ii++)
    {
     Rx0_Data_Buffer[ii]=0;
    }
}
//===============================
//函數(shù): UART1_TX()
//功能: 串口0發(fā)送中斷服務(wù)
//輸入?yún)?shù):
//輸出參數(shù):
//================================
 #pragma vector=UART1TX_VECTOR
__interrupt void  UART1Tx_Int(void)  
{
if(Tx1_Snd_Lenth!=0)
  {
   TXBUF1=*(Pointer1+Tx1_Pointer);
   Tx1_Snd_Lenth--;
   Tx1_Pointer++; 
   P5OUT&=0XBF;
   Tx1_Led^=0x40;//發(fā)送指示燈閃爍
   P5OUT|=Tx1_Led;
  }
  
 else
 
{
   P5OUT|=0X40;//發(fā)送指示燈關(guān)閉
 for(ii=Tx1_Pointer;ii<=250;ii++)
 {
   Rx1_Data_Buffer[ii]=0;
 }
}  
 } 
 //===============================
 //函數(shù): UART1_RX()
 //功能: 串口1接收中斷服務(wù)
 //輸入?yún)?shù):
 //輸出參數(shù):
 //================================
 #pragma vector=UART1RX_VECTOR
__interrupt void  UART1Rx_Int(void)  
{
  UTCTL1&=~URXSE;
  Rx1_Time_Counter=0;//每接收一個(gè)字節(jié),則接收計(jì)時(shí)器清零一次。   
if(Rx1_Start_Flag==0)
   {
     Rx1_Start_Flag=1;//串口開始接收到數(shù)據(jù)
     Rx1_Pointer=0;
   }
 Rx1_Data_Buffer[Rx1_Pointer]=RXBUF1;
 Rx1_Pointer++;
  //if(DSR==0)
  //  TXBUF0=RXBUF1;
  P5OUT&=0X7F;
  Tx1_Led^=0x80;//接收指示燈閃爍
  P5OUT|=Rx1_Led; 
 }
 //===============================
 //函數(shù): PORT2_Int()
 //功能: RING中斷服務(wù)
 //輸入?yún)?shù):
 //輸出參數(shù):
 //================================
 #pragma vector=PORT2_VECTOR 
__interrupt void  PORT2_Int(void)  
{
 P2IFG=0;
 if(Ring_Time>=1000)
  Tel_Ring_Counter=0;
 Ring_Time=0;
 Tel_Ring_Counter++;
 if(Tel_Ring_Counter>10)
   Tel_Ring_Counter=3;
 Ring_Time=1;
 if(Ring_Start_Flag==0)//振嶺開始標(biāo)志
   {
     Ring_Start_Flag=1;
     Heart_Beat_Flag=1;
     Heart_Beat_Interval=6000;
   } 
 } 
 //====================================
 //函數(shù):Cal_Crc()
 //功能:計(jì)算CRC校驗(yàn)值
 //輸入?yún)?shù):要計(jì)算CRC值的數(shù)組
 //輸出參數(shù):CRC值
//==========================================
void Cal_Crc(char *Pointer,Uint L)
{
  char k;
  Uint  CRC_Table[16]={0x0000,0x1021,0x2042,0x3063,0x4084,0x50a5,0x60c6,0x70e7,
                       0x8108,0x9129,0xa14a,0xb16b,0xc18c,0xd1ad,0xe1ce,0xf1ef};//CRC表

   CRC=0;
   WDTCTL=WDTPW+WDTCNTCL;
  while(L--!=0)
  {
   k=((char)(CRC/256))/16;//暫存CRC的高4位
   CRC<<=4;//CRC右移4位,相當(dāng)于CRC的低12位。
   CRC^=CRC_Table[k^(*Pointer/16)];//CRC的高4位和本字節(jié)的前半字節(jié)相加后查表計(jì)算CRC,然后加上上一次CRC的余數(shù)。
   k=((char)(CRC/256))/16;//暫存CRC的高4位
   CRC<<=4;//CRC右移4位,相當(dāng)于去CRC的低12位。
   CRC^=CRC_Table[k^(*Pointer&0x0F)];
   Pointer++;                               
  }  
 }
 
 //=================================
 //函數(shù):Feed_WatchDog()
 //功能:清看門狗
 //輸入?yún)?shù):
 //輸出參數(shù): 
 //=================================
 void Feed_WatchDog(void)
 {
   WDTCTL=WDTPW+WDTCNTCL;//看門狗計(jì)數(shù)器清零。
 }
//==================================
//函數(shù):Read_Delete_SMS()
//功能:讀取、刪除短信息
//輸入?yún)?shù):無
//輸出參數(shù):無
//=================================== 
void  Read_Delete_SMS(void)
{
 char  i,j,k=0; 
 char  *AT_CPMS="AT+CPMS?\r";//查詢短信息數(shù)量。
 char  AT_CMGR[11]={'A','T','+','C','M','G','R','=',0X00,0X00,0X0D}; //讀短信息。
 char  AT_CMGD[11]={'A','T','+','C','M','G','D','=',0X00,0X00,0X0D}; //刪除短信息。
 char  Try_Counter1=0;
 char  Try_Counter2=0;
 char  Clenth; 
 
  
  SMS_Index=0;
Try88: 
  WDTCTL=WDTPW+WDTCNTCL;
  for(j=0;j<10;j++){Rx1_Data_Buffer[j]=0;}
  Rx1_Pointer=0;
  Tx_Head=AT_CPMS[0];
  Data_Cmnd_Snd(8,&AT_CPMS[1],1,1);//檢測(cè)SIM中是否有短信存在。
  Waiting_Result(30);
  Rx1_Time_Interval=4;
if((Rx1_Pointer<15)&&(Try_Counter1<3))//若讀SIM卡不成功,則重讀,直至3次。
{
  Try_Counter1++;
  goto Try88;
}
if(Rx1_Pointer>=15)
 Judge_SMS_Counter(); //判斷短信數(shù)量。 
if(SMS_Index==0)
  return;
i=0;
 while(SMS_Index!=0)
   { 
      WDTCTL=WDTPW+WDTCNTCL;
      Try_Counter2=0;
      i++;
    if(i<=9)
        {
          AT_CMGR[8]=i+0x30;
          AT_CMGR[9]=0X0D;
          AT_CMGD[8]=i+0x30;
          AT_CMGD[9]=0X0D;
          Clenth=9;
        }
    if(i>=10)
        {
           k=i/10;
           AT_CMGR[8]=k+0x30;
           AT_CMGD[8]=k+0x30;
           k=i%10;
           AT_CMGR[9]=k+0X30;
           AT_CMGD[9]=k+0X30;
           AT_CMGR[10]=0X0D; 
           AT_CMGD[10]=0X0D; 
           Clenth=10;
        }
    if(i>30)//超出存貯量,跳出循環(huán)體
      break;      
Read_Sms_Again0:
       WDTCTL=WDTPW+WDTCNTCL;
       for(j=0;j<10;j++){Rx1_Data_Buffer[j]=0;}
       Rx1_Pointer=0;
       Tx_Head=AT_CMGR[0];
       Data_Cmnd_Snd(Clenth,&AT_CMGR[1],1,5);//讀取SIM中的短信
       Waiting_Result(40);
       Rx1_Time_Interval=4;
       
     if((Rx1_Pointer<=25)&&(Try_Counter2<3))//若讀SIM卡不成功,則重讀,直至3次。
       {
        Try_Counter2++;
        goto Read_Sms_Again0;//若未讀到短信,則重讀。
       }
       
     if(Rx1_Pointer>25)//
        { 
          SMS_Index--;
          Gprs_Mode_SMS(Rx1_Pointer);//GPRS模式短信處理。
          for(j=0;j<10;j++){Rx1_Data_Buffer[j]=0;}
          Tx_Head=AT_CMGD[0];//
          Data_Cmnd_Snd(Clenth,&AT_CMGD[1],1,5);//讀取SIM中的短信
          Waiting_Result(40);//
          Rx1_Time_Interval=4;//
          _NOP();
        }
  }
}
//=================================== 
//函數(shù):Gprs_Mode_SMS()
//功能:GPRS模式下的SM處理
//輸入?yún)?shù):Rx1_Data_Buffer[]
//返回參數(shù):
//===================================
void Gprs_Mode_SMS(Uint Lenth2)
{
  Uint i,j;
 
for(i=0;i<Lenth2;i++)
  {
    WDTCTL=WDTPW+WDTCNTCL;
    if((Rx1_Data_Buffer[i]=='C')&&(Rx1_Data_Buffer[i+1]=='M')&&(Rx1_Data_Buffer[i+2]=='G')&&(Rx1_Data_Buffer[i+3]=='R')&&(Rx1_Data_Buffer[i+4]==':')&&(Rx1_Data_Buffer[i+6]=='1'))
    {
     //已讀短信
     _NOP();
     return;
    }
    
   if((Rx1_Data_Buffer[i]=='0')&&(Rx1_Data_Buffer[i+1]=='8')&&(Rx1_Data_Buffer[i+2]=='9')&&(Rx1_Data_Buffer[i+3]=='1')&&(Rx1_Data_Buffer[i+4]=='6')&&(Rx1_Data_Buffer[i+5]=='8'))
     {
        for(j=0;j<=11;j++)
           {
             Center_SIM[j]=Rx1_Data_Buffer[26+i+j];//將發(fā)送手機(jī)號(hào)碼的提取。
           }
        
      
       for(j=20;j<=Lenth2;j++)  
        {    //'#'結(jié)束符
         if((Rx1_Data_Buffer[j]=='2')&&(Rx1_Data_Buffer[j+1]=='3')&&(Rx1_Data_Buffer[j+2]==0X0D)&&(Rx1_Data_Buffer[j+3]==0X0A))//&&(Rx1_Data_Buffer[i+4]=='6')&&(Rx1_Data_Buffer[i+5]=='8'))
          {
            Asci_To_Hex(&Rx1_Data_Buffer[i],j-i+4);//將收到的短信ASCII轉(zhuǎn)化成16進(jìn)制數(shù)。
             break;
          }
        } 
       if(Temp_cArray[20]==0X00)//短信是7bit編碼 
            { //通過手機(jī)設(shè)置的命令處理。
             SMS_Mode=0;
             WDTCTL=WDTPW+WDTCNTCL; 
             Decode8Bit(Temp_cArray[28]);//數(shù)據(jù)解碼后,放到User_Data[]中
             _NOP();
             goto Cotinue001;
            }
            
        if(Temp_cArray[20]==0X04)//短信是8BIT編碼
            {

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成人精品一区二区| 色综合网色综合| 久久午夜电影网| av福利精品导航| 亚洲精选视频免费看| 欧美久久久久久久久中文字幕| 亚洲一区二区三区在线播放| 日韩视频永久免费| 成人免费视频视频| 婷婷夜色潮精品综合在线| 日韩免费一区二区三区在线播放| 国产a级毛片一区| 亚洲国产一二三| 国产三级欧美三级日产三级99| 99在线热播精品免费| 日本在线不卡一区| 亚洲国产成人午夜在线一区| 欧美日韩一级视频| 成人综合在线观看| 蜜臀精品一区二区三区在线观看| 国产精品情趣视频| 欧美日本免费一区二区三区| 狠狠狠色丁香婷婷综合久久五月| 欧美成人a∨高清免费观看| 岛国一区二区在线观看| 天堂蜜桃一区二区三区| 国产精品麻豆欧美日韩ww| 欧美一区二区啪啪| 97精品久久久久中文字幕| 蜜桃精品在线观看| 樱花影视一区二区| 久久精品一区二区三区不卡 | 精品视频资源站| 国产精品一级黄| 一区二区三区在线免费播放| 精品噜噜噜噜久久久久久久久试看| 成人黄色电影在线| 韩国v欧美v日本v亚洲v| 一区二区三区精品在线观看| 欧美激情一区二区三区在线| 91精品国产高清一区二区三区| 色成人在线视频| 成人综合在线网站| 国产乱码精品一区二区三区av| 午夜精品久久久久久不卡8050| 中文字幕一区日韩精品欧美| 精品国产精品网麻豆系列| 色婷婷精品大视频在线蜜桃视频 | 精品久久久久久最新网址| 欧美日韩专区在线| 欧美在线观看18| 国产不卡视频一区二区三区| 免费成人av资源网| 日本美女视频一区二区| 亚洲精品久久久久久国产精华液| 久久综合一区二区| 欧美乱妇一区二区三区不卡视频| 一本一道综合狠狠老| 成人黄色国产精品网站大全在线免费观看 | 强制捆绑调教一区二区| 亚洲资源中文字幕| 亚洲一线二线三线久久久| 中文字幕日韩av资源站| 国产精品每日更新| 国产精品电影院| 国产三级欧美三级日产三级99| 久久久久久日产精品| 26uuu精品一区二区| 久久亚洲精品国产精品紫薇| 欧美mv日韩mv亚洲| 精品sm在线观看| xnxx国产精品| 国产精品网站一区| 中文字幕一区二区三区四区不卡 | 在线观看av一区二区| 日本福利一区二区| 欧美日韩国产一二三| 91精品久久久久久久久99蜜臂| 欧美日韩国产另类不卡| 91精品国产色综合久久| 精品国产免费久久| 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美一区2区视频在线观看| 91精品国产综合久久久久| 欧美一卡2卡3卡4卡| 日韩欧美国产系列| 国产亚洲短视频| 亚洲精品一区在线观看| 久久久国际精品| 精品粉嫩aⅴ一区二区三区四区| 久久婷婷久久一区二区三区| 26uuu成人网一区二区三区| 欧美激情中文字幕| 亚洲精品美国一| 日日噜噜夜夜狠狠视频欧美人 | 天堂久久一区二区三区| 久久99日本精品| 久久精品国产99| www.亚洲免费av| 欧美日韩精品一区二区三区| 日韩欧美成人午夜| 国产精品国产三级国产a| 午夜精品福利久久久| 精品无人区卡一卡二卡三乱码免费卡| 国产精品一区在线观看乱码| 色综合久久综合网欧美综合网 | 国产精品丝袜91| 亚洲一区在线播放| 婷婷亚洲久悠悠色悠在线播放| 国产精品一级黄| 日本丰满少妇一区二区三区| 色综合久久88色综合天天6| 日韩欧美视频在线| 亚洲视频在线一区| 精久久久久久久久久久| 色哟哟国产精品免费观看| 亚洲精品一区二区三区影院| 亚洲精品免费一二三区| 久久 天天综合| 色94色欧美sute亚洲线路二| 欧美成人一区二区三区片免费| 国产精品国产精品国产专区不蜜| 日产欧产美韩系列久久99| 91啪九色porn原创视频在线观看| 欧美精品v日韩精品v韩国精品v| 精品成人一区二区三区| 亚洲欧美日韩在线| 国产在线播放一区三区四| 欧美三区免费完整视频在线观看| 国产午夜精品久久久久久久| 亚洲成人自拍一区| 不卡的av在线| 久久久久国产成人精品亚洲午夜| 亚洲国产wwwccc36天堂| 99视频精品全部免费在线| 国产精品美女久久福利网站| 亚洲精品老司机| 成人av网站免费| 久久色中文字幕| 日本vs亚洲vs韩国一区三区二区| 一本大道综合伊人精品热热| 久久人人爽爽爽人久久久| 天天综合日日夜夜精品| 91色porny在线视频| 国产精品萝li| 成人蜜臀av电影| 2欧美一区二区三区在线观看视频| 亚洲激情校园春色| av一区二区不卡| 国产日产欧美一区二区视频| 爽好久久久欧美精品| av不卡在线观看| 久久精品在线观看| 国产精品中文字幕日韩精品| 久久综合色之久久综合| 日本vs亚洲vs韩国一区三区二区| 欧美日本视频在线| 午夜精品久久久久久久99樱桃| 91国产免费看| 亚洲激情五月婷婷| 在线一区二区三区四区五区| 亚洲精选视频在线| 色婷婷av一区| 一区二区欧美国产| 在线影院国内精品| 亚洲成人av一区二区三区| 欧美在线一区二区| 亚洲h动漫在线| 欧美日韩视频在线一区二区| 亚洲成人免费视频| 制服丝袜亚洲色图| 美女网站一区二区| 久久新电视剧免费观看| 国产福利一区在线| 亚洲精品在线电影| 成人黄色片在线观看| 国产精品毛片a∨一区二区三区| 成人午夜电影网站| 国产日产精品一区| 成人h版在线观看| 亚洲激情五月婷婷| 欧美一级久久久| 国产成人av自拍| 亚洲色图在线播放| 欧美美女一区二区三区| 久久99国内精品| 中文字幕+乱码+中文字幕一区| 91欧美激情一区二区三区成人| 午夜久久久影院| 精品粉嫩超白一线天av| 99视频有精品| 亚洲福中文字幕伊人影院| 欧美成人乱码一区二区三区| 国产一区美女在线| 亚洲少妇30p| 欧美日本一道本在线视频| 国产乱码精品一区二区三| 麻豆专区一区二区三区四区五区| 久久久高清一区二区三区| 欧美网站一区二区|