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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? process.c

?? 關于MSP430的程序
?? C
字號:
#include "Process.h"
#include "flash.h"
#include "const.h"



int nATlen = 0;
int nBuf1 = 0;
int nBuf2 = 0;
int nBuf3 = 0;
void Init_Process(void)
{
    //////////////////////////////////////////
    // 為了提高算法的搜索效率,這里采利用 AT
    // 命令的長度和3個關鍵字符來識別AT命令
    int *pAtLen;
    int *pAtBuf1;
    int *pAtBuf2;
    int *pAtBuf3;
    
    pAtLen = (int*)AT_LEN;
    FLASH_clr(pAtLen);
    pAtBuf2 = (int*)AT_BUFA2;
    FLASH_clr(pAtBuf2);
    pAtLen = (int*)AT_LEN;
    pAtBuf1 = (int*)AT_BUFA1;
    pAtBuf2 = (int*)AT_BUFA2;
    pAtBuf3 = (int*)AT_BUFA3;
    // 0 AT命令的長度,檢查通信鏈路正常命令
    FLASH_ww(pAtLen,3);
    FLASH_ww(pAtBuf1,'A');
    FLASH_ww(pAtBuf2,'T');
    FLASH_ww(pAtBuf3,13);

    
    // 1 讀出設置的號碼AT+PHONENUM=?(enter)
    pAtLen += 1;
    pAtBuf1 += 1;
    pAtBuf2 += 1;
    pAtBuf3 += 1;
    FLASH_ww(pAtLen,14);
    FLASH_ww(pAtBuf1,'P');
    FLASH_ww(pAtBuf2,'H');
    FLASH_ww(pAtBuf3,'O');    
    
    // 2 AT+PHONENUM=Xxxxxxxxx(Enter)
    pAtLen += 1;
    pAtBuf1 += 1;
    pAtBuf2 += 1;
    pAtBuf3 += 1;
    FLASH_ww(pAtLen,22);
    FLASH_ww(pAtBuf1,'P');
    FLASH_ww(pAtBuf2,'H');
    FLASH_ww(pAtBuf3,'O');
    
    return;
}
int ProcessUART0(char *pBuf,int nLen)
{
    int nTemp = -1;
    int i;
    
    
    // 處理撥號后的響應
    for(i = 0;i < nLen;i++)
    {
        if(pBuf[i] == 0x37 && pBuf[i + 1] == 0x39)
        {
            nTemp = 1;
            break;
        }
    }
    // 處理初始化后的響應和發送+++以及ATH0的響應
    if(pBuf[0] == 0x30 && pBuf[1] == 13)
        nTemp = 4;
    // 處理撥號后的響應
    if(pBuf[0] == 0x31 && pBuf[1] == 0x32 && pBuf[2] == 13)
        nTemp = 1;
    // 處理是否已經在撥
    if(pBuf[0] == 0x33 && pBuf[1] == 13)
        nTemp = 3;
    // 處理撥號后的響應
    if(pBuf[0] == 0x33 && pBuf[1] == 0x30 && pBuf[2] == 13)
        nTemp = 1;
    // 處理撥號后的響應
    if(pBuf[0] == 0x35 && pBuf[1] == 0x30 && pBuf[2] == 0x20 
       && pBuf[3] == 0x20 && pBuf[4] == 0x37 && pBuf[5] == 0x39 
       && pBuf[6] == 13)
    	nTemp = 1;
    if(pBuf[0] == 0x35 && pBuf[1] == 0x31 && pBuf[2] == 0x20 
       && pBuf[3] == 0x20 && pBuf[4] == 0x37 && pBuf[5] == 0x39 
       && pBuf[6] == 13)
    	nTemp = 1;
    if(pBuf[0] == 0x32 && pBuf[1] == 0x30 && pBuf[2] == 0x20 
       && pBuf[3] == 0x20 && pBuf[4] == 0x37 && pBuf[5] == 0x39 
       && pBuf[6] == 13)
    	nTemp = 1;
    // 沒有接電話線的情況
    if(pBuf[0] == 0x36 && pBuf[1] == 13)
    	nTemp = 5;
    	
    // 對方掛斷的情況
    if(pBuf[0] == 0x37 && pBuf[1] == 13)
    	nTemp = 6;
    // 2表示發送+++,3表示收到+++響應
    if(pBuf[0] == 13)
    	nTemp = 7;

    return nTemp;
}
/////////////////////////////////////
// 正確返回各個命令對應的值,
// 錯誤返回 -1
int ProcessUART1(char *pBuf,int nLen)
{
    int *pAtLen;
    int *pAtBuf1;
    int *pAtBuf2;
    int *pAtBuf3;
    int nTemp = -1;
    int i;
    
    if(nLen <= 2) return -1;
    if(nLen == 3)
    {
    	if((pBuf[0] == 'A') && (pBuf[1] == 'T') && (pBuf[2] == 13))
    	    return 0;
    }

    
    pAtLen = (int*)AT_LEN;
    pAtBuf1 = (int*)AT_BUFA1;
    pAtBuf2 = (int*)AT_BUFA2;
    pAtBuf3 = (int*)AT_BUFA3;
    for(i = 0;i < 3;i++)
    {
        nATlen = *(pAtLen + i);
    	if(nLen == nATlen)
    	{
    	    nBuf1 = *(pAtBuf1 + i);
    	    nBuf2 = *(pAtBuf2 + i);
    	    nBuf3 = *(pAtBuf3 + i);
    	    if((pBuf[3] == nBuf1) && (pBuf[4] == nBuf2) && (pBuf[5] == nBuf3))
    	    {
    	    	nTemp = i;
    	    }
    	}
    }
    return nTemp;
}
// 將結果由參數返回
char ReadPhoneNum(char strPhone[8])
{
    int *pFlash;
    int nTemp;
    int i;
    char chrRes;
    
    pFlash = (int*)PHONE_ADDR;
    
    
    // 第一個數用來確定號碼的位數
    chrRes = (char)(*pFlash - 0x30);
    // 第一個電話號碼
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[0] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[1] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[2] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[3] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[4] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[5] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[6] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    strPhone[7] = (char)(nTemp & 0x00ff);
    for(i = 0;i < 8;i++)
    {
    	if(strPhone[i] == 0xff) 
    	{
    	    chrRes = 2;
    	    break;
    	}    	
    }

    return chrRes;
}
// 正確返回 0,錯誤返回 1
char SetPhone(char UART1_RX_Temp[])
{
    int *pFlash;
    
    pFlash = (int*)PHONE_ADDR;
    
    FLASH_clr(pFlash);
    // 第一個電話號碼
    // 寫數據到FLASH里面
    if(UART1_RX_Temp[12] >= 0x30 && UART1_RX_Temp[12] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[12]);// 1 或者 0
    else 
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    
    pFlash += 1;
    if(UART1_RX_Temp[13] >= 0x30 && UART1_RX_Temp[13] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[13]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	   
    pFlash += 1;
    if(UART1_RX_Temp[14] >= 0x30 && UART1_RX_Temp[14] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[14]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[15] >= 0x30 && UART1_RX_Temp[15] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[15]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[16] >= 0x30 && UART1_RX_Temp[16] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[16]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[17] >= 0x30 && UART1_RX_Temp[17] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[17]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[18] >= 0x30 && UART1_RX_Temp[18] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[18]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[19] >= 0x30 && UART1_RX_Temp[19] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[19]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    	    	    
    pFlash += 1;
    if(UART1_RX_Temp[20] >= 0x30 && UART1_RX_Temp[20] <= 0x39) 
        FLASH_ww(pFlash,UART1_RX_Temp[20]);
    else
    {
    	FLASH_clr(pFlash);
    	return 1;
    }
    
    return 0;
}
void QueryPhone(char UART1_TX_BUF[],int *nLen)
{
    int *pFlash;
    int nTemp;
    
    pFlash = (int*)PHONE_ADDR;
    UART1_TX_BUF[0] = '+';
    UART1_TX_BUF[1] = 'P';
    UART1_TX_BUF[2] = 'H';
    UART1_TX_BUF[3] = 'O';
    UART1_TX_BUF[4] = 'N';
    UART1_TX_BUF[5] = 'E';
    UART1_TX_BUF[6] = 'N';
    UART1_TX_BUF[7] = 'U';
    UART1_TX_BUF[8] = 'M';
    UART1_TX_BUF[9] = '=';
    // 第一個電話號碼
    // 從FLASH里面讀出數據
    nTemp = *pFlash;
    UART1_TX_BUF[10] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[11] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[12] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[13] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[14] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[15] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[16] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[17] = (char)(nTemp & 0x00ff);
    pFlash += 1;
    nTemp = *pFlash;
    UART1_TX_BUF[18] = (char)(nTemp & 0x00ff);
    
    UART1_TX_BUF[19] = 13;
    
    *nLen = 20;
}
void SetOK(char UART1_TX_BUF[],int *nLen)
{
    UART1_TX_BUF[0] = 'O';
    UART1_TX_BUF[1] = 'K';
    UART1_TX_BUF[2] = 13;
    
    *nLen = 3;
}
void SetError(char UART1_TX_BUF[],int *nLen)
{
    UART1_TX_BUF[0] = 'E';
    UART1_TX_BUF[1] = 'R';
    UART1_TX_BUF[2] = 'R';
    UART1_TX_BUF[3] = 'O';
    UART1_TX_BUF[4] = 'R';
    UART1_TX_BUF[5] = 13;
    
    *nLen = 6;
}






?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合一区二区精品导航| 97国产一区二区| 欧美日韩一区在线观看| 亚洲美女在线一区| 欧美性大战久久久久久久| 日韩精品一级二级 | 在线视频国内自拍亚洲视频| 亚洲一区二区三区国产| 日韩一区二区在线观看视频播放| 天天操天天色综合| 精品久久久网站| 一本一道波多野结衣一区二区| 亚洲一区二区影院| 日韩欧美国产一二三区| 国产成人综合亚洲网站| 亚洲韩国一区二区三区| 精品国产免费人成电影在线观看四季 | 欧美午夜免费电影| 麻豆成人av在线| 国产精品亲子乱子伦xxxx裸| 91黄色激情网站| 日韩国产欧美视频| 国产拍揄自揄精品视频麻豆| 欧美日韩亚洲不卡| 成人综合婷婷国产精品久久| 日本免费在线视频不卡一不卡二 | 91视频在线看| 男女激情视频一区| 亚洲视频在线一区| 久久蜜桃av一区精品变态类天堂 | 欧美久久一二三四区| 国产大陆精品国产| 免费日韩伦理电影| 一区二区三区日韩欧美| 久久伊人中文字幕| 51精品久久久久久久蜜臀| eeuss影院一区二区三区| 蜜桃av一区二区三区| 亚洲成人高清在线| 亚洲欧洲av色图| 国产亚洲精品超碰| 日韩精品一区二区三区四区| 97se亚洲国产综合自在线不卡| 久久激情综合网| 午夜欧美在线一二页| 综合久久综合久久| 欧美激情一区二区在线| 久久久久国产精品麻豆ai换脸| 555夜色666亚洲国产免| 欧美午夜理伦三级在线观看| 99精品国产91久久久久久| 国产宾馆实践打屁股91| 国产一二三精品| 精品亚洲成av人在线观看| 视频在线观看国产精品| 天天操天天色综合| 青青草97国产精品免费观看| 天堂精品中文字幕在线| 婷婷成人激情在线网| 日韩中文欧美在线| 日韩电影免费在线观看网站| 亚洲永久精品大片| 亚洲香蕉伊在人在线观| 亚洲大片精品永久免费| 亚洲福利一二三区| 日韩二区三区四区| 美女mm1313爽爽久久久蜜臀| 久久99热99| 国产麻豆精品一区二区| 精品一区二区在线看| 国产精品自拍三区| 成人黄页在线观看| 91福利区一区二区三区| 7777精品伊人久久久大香线蕉 | 色播五月激情综合网| 91福利精品视频| 在线播放欧美女士性生活| 欧美精品一区二区久久久| 国产精品久久久久久久午夜片| 亚洲女女做受ⅹxx高潮| 蜜桃久久av一区| av日韩在线网站| 69久久夜色精品国产69蝌蚪网 | 成人开心网精品视频| 色综合久久久久| 日韩欧美中文字幕一区| 日韩伦理av电影| 麻豆一区二区三区| 99精品偷自拍| 欧美精品一区二区三区蜜桃视频| 最新不卡av在线| 久久国产精品色| 日本久久电影网| 欧美成人bangbros| 国产精品久久精品日日| 亚洲黄色av一区| 亚洲一区精品在线| 日本亚洲最大的色成网站www| 麻豆国产91在线播放| 顶级嫩模精品视频在线看| 99精品视频在线观看免费| 在线观看91精品国产入口| 欧美一区在线视频| 日本一二三四高清不卡| av在线一区二区三区| 欧美日韩国产另类不卡| 国产亚洲制服色| 夜夜嗨av一区二区三区四季av| 亚州成人在线电影| 国产精品一级片| 欧美在线你懂的| 欧美精品一区二区三区很污很色的 | 欧美精品日韩一区| 欧美精品一区二区三区蜜桃| 亚洲人吸女人奶水| 免费在线观看一区| fc2成人免费人成在线观看播放| 911国产精品| 中文字幕一区二区在线观看| 美女视频网站久久| 91久久精品一区二区三区| 精品人伦一区二区色婷婷| 久久久精品一品道一区| 日韩精品久久久久久| 色乱码一区二区三区88| 欧美精品一区二区三区蜜桃视频| 亚洲国产一二三| 久久99精品一区二区三区| 在线亚洲免费视频| 国产精品传媒视频| 黄页网站大全一区二区| 日韩一区二区三区观看| 亚洲制服丝袜av| 成人av电影在线观看| 欧美色偷偷大香| 亚洲女人的天堂| 99久久婷婷国产| 久久九九影视网| 久久精品国产精品亚洲精品| 欧美日韩国产免费一区二区| 一区二区三区在线免费播放| 国产成人av电影| 国产性天天综合网| 狠狠色丁香婷婷综合| 91精品国产综合久久蜜臀| 国产亚洲综合av| 美国十次综合导航| 久久综合久久久久88| 天天av天天翘天天综合网色鬼国产| 色婷婷香蕉在线一区二区| 国产精品久久久一本精品| 成人午夜电影小说| 亚洲va韩国va欧美va| 色美美综合视频| 一区二区三区成人| 精品视频在线免费看| 亚洲精品乱码久久久久久久久| 99久久综合99久久综合网站| 国产日韩精品一区二区浪潮av| av午夜一区麻豆| 一区二区三区欧美在线观看| 色丁香久综合在线久综合在线观看| 一区二区中文视频| 91蜜桃传媒精品久久久一区二区| 国产精品久久久久久户外露出 | 蜜臀av性久久久久蜜臀aⅴ | 亚洲区小说区图片区qvod| 91色porny| 久久九九久久九九| 91在线观看污| 一级女性全黄久久生活片免费| 欧美影院午夜播放| 午夜电影一区二区三区| 精品噜噜噜噜久久久久久久久试看 | 色悠悠久久综合| 亚洲国产精品麻豆| 欧美一级黄色大片| 成人永久免费视频| 五月综合激情婷婷六月色窝| 日韩欧美一区在线| 秋霞成人午夜伦在线观看| 久久久国产精华| 成人黄色小视频| 亚洲午夜久久久| 国产亚洲污的网站| 91玉足脚交白嫩脚丫在线播放| 日韩av电影天堂| 中文成人av在线| 精品视频1区2区| 丁香婷婷深情五月亚洲| 午夜亚洲国产au精品一区二区| 亚洲国产精品成人久久综合一区 | 一区二区三区中文字幕在线观看| 91精品国模一区二区三区| 不卡一区中文字幕| 日韩不卡一区二区三区| 亚洲精品在线观| 91精品福利视频| 丁香桃色午夜亚洲一区二区三区| 日产国产欧美视频一区精品|