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

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

?? 2410lib.c

?? 廣嵌GEC2410開發(fā)板學(xué)習(xí)教材源碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
            return RdURXH0();
        else
            return 0;
    }
    else if(whichUart==1)
    {
        if(rUTRSTAT1 & 0x1)    //Receive data ready
            return RdURXH1();
        else
            return 0;
    }
    else if(whichUart==2)
    {       
        if(rUTRSTAT2 & 0x1)    //Receive data ready
            return RdURXH2();
        else
            return 0;
    }    
}

//====================================================================
void Uart_GetString(char *string)
{
    char *string2 = string;
    char c;
    while((c = Uart_Getch())!='\r')
    {
        if(c=='\b')
        {
            if( (int)string2 < (int)string )
            {
                Uart_Printf("\b \b");
                string--;
            }
        }
        else 
        {
            *string++ = c;
            Uart_SendByte(c);
        }
    }
    *string='\0';
    Uart_SendByte('\n');
}

//=====================================================================
int Uart_GetIntNum(void)
{
    char str[30];
    char *string = str;
    int base     = 10;
    int minus    = 0;
    int result   = 0;
    int lastIndex;    
    int i;
    
    Uart_GetString(string);
    
    if(string[0]=='-')
    {
        minus = 1;
        string++;
    }
    
    if(string[0]=='0' && (string[1]=='x' || string[1]=='X'))
    {
        base    = 16;
        string += 2;
    }
    
    lastIndex = strlen(string) - 1;
    
    if(lastIndex<0)
        return -1;
    
    if(string[lastIndex]=='h' || string[lastIndex]=='H' )
    {
        base = 16;
        string[lastIndex] = 0;
        lastIndex--;
    }

    if(base==10)
    {
        result = atoi(string);
        result = minus ? (-1*result):result;
    }
    else
    {
        for(i=0;i<=lastIndex;i++)
        {
            if(isalpha(string[i]))
            {
                if(isupper(string[i]))
                    result = (result<<4) + string[i] - 'A' + 10;
                else
                    result = (result<<4) + string[i] - 'a' + 10;
            }
            else
                result = (result<<4) + string[i] - '0';
        }
        result = minus ? (-1*result):result;
    }
    return result;
}

//=====================================================================
void Uart_SendByte(int data)
{
    if(whichUart==0)
    {
        if(data=='\n')
        {
            while(!(rUTRSTAT0 & 0x2));
            Delay(10);                 //because the slow response of hyper_terminal 
            WrUTXH0('\r');
        }
        while(!(rUTRSTAT0 & 0x2));   //Wait until THR is empty.
        Delay(10);
        WrUTXH0(data);
    }
    else if(whichUart==1)
    {
        if(data=='\n')
        {
            while(!(rUTRSTAT1 & 0x2));
            Delay(10);                 //because the slow response of hyper_terminal 
            rUTXH1 = '\r';
        }
        while(!(rUTRSTAT1 & 0x2));   //Wait until THR is empty.
        Delay(10);
        rUTXH1 = data;
    }   
    else if(whichUart==2)
    {
        if(data=='\n')
        {
            while(!(rUTRSTAT2 & 0x2));
            Delay(10);                 //because the slow response of hyper_terminal 
            rUTXH2 = '\r';
        }
        while(!(rUTRSTAT2 & 0x2));   //Wait until THR is empty.
        Delay(10);
        rUTXH2 = data;
    }       
}               

//====================================================================
void Uart_SendString(char *pt)
{
    while(*pt)
        Uart_SendByte(*pt++);
}

//=====================================================================
//If you don't use vsprintf(), the code size is reduced very much.
void Uart_Printf(char *fmt,...)
{
    va_list ap;
    char string[256];

    va_start(ap,fmt);
    vsprintf(string,fmt,ap);
    Uart_SendString(string);
    va_end(ap);
}


//========================**[ BOARD LED ]=================================
void Led_Display(int data)
{
          //Active is low.(LED On)
          // GPF7  GPF6   GPF5   GPF4
          //nLED_8 nLED4 nLED_2 nLED_1
//    rGPFDAT = (rGPFDAT & 0xf) | !((data & 0xf)<<4);
    rGPFDAT = (rGPFDAT & ~(0xf<<4)) | ((~data & 0xf)<<4);    
}


//========================*[ Timer ]==============================**
void Timer_Start(int divider)  //0:16us,1:32us 2:64us 3:128us
{
    rWTCON = ((PCLK/1000000-1)<<8)|(divider<<3);  //Watch-dog timer control register
    rWTDAT = 0xffff;  //Watch-dog timer data register
    rWTCNT = 0xffff;  //Watch-dog count register

      //Watch-dog timer enable & interrupt  disable
//    rWTCON = rWTCON |(1<<5) & !(1<<2);  //?
    rWTCON = rWTCON | (1<<5) | ~(1<<2);  //May 06, 2002 SOP
}

//=================================================================
int Timer_Stop(void)
{
    rWTCON = ((PCLK/1000000-1)<<8);
    return (0xffff - rWTCNT);
}


//========================*[ MPLL ]==============================*
void ChangeMPllValue(int mdiv,int pdiv,int sdiv)
{
    rMPLLCON = (mdiv<<12) | (pdiv<<4) | sdiv;
}


//========================[ HCLK, PCLK ]===========================
void ChangeClockDivider(int hdivn,int pdivn)
{
     // hdivn,pdivn FCLK:HCLK:PCLK
     //     0,0         1:1:1 
     //     0,1         1:1:2 
     //     1,0         1:2:2
     //     1,1         1:2:4
    rCLKDIVN = (hdivn<<1) | pdivn;    
 }


//========================**[ UPLL ]==============================*
void ChangeUPllValue(int mdiv,int pdiv,int sdiv)
{
    rUPLLCON = (mdiv<<12) | (pdiv<<4) | sdiv;
}


//========================*[ General Library ]=====================*

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区中文字幕| 亚洲成人自拍偷拍| 亚洲国产日韩综合久久精品| 日一区二区三区| 成人丝袜18视频在线观看| 欧美精品乱码久久久久久按摩| 久久精品久久精品| 欧美午夜在线一二页| 国产亚洲人成网站| 久久品道一品道久久精品| 中文字幕中文字幕一区二区| 久久成人18免费观看| 免费精品视频在线| 91国在线观看| 中文字幕一区二区在线观看| 久久精品夜夜夜夜久久| 久久精品国产亚洲高清剧情介绍| 日本不卡一二三| 91国产免费观看| 自拍偷拍亚洲激情| 日本不卡在线视频| 欧美在线不卡视频| 日韩欧美区一区二| 国产喷白浆一区二区三区| 麻豆精品一区二区三区| 国产精品白丝jk黑袜喷水| 日韩免费在线观看| 九九热在线视频观看这里只有精品| 欧美丰满少妇xxxbbb| 午夜精品福利在线| 在线观看不卡视频| 一片黄亚洲嫩模| 欧美最猛黑人xxxxx猛交| 一区二区三区中文在线| 91蜜桃在线观看| 一二三区精品福利视频| 国产一区二区三区免费观看| 国产精品夜夜爽| 欧美亚洲高清一区| 久久久五月婷婷| 国产精品久久久一本精品 | 日韩一区二区电影| 亚洲乱码日产精品bd| 日韩av在线免费观看不卡| 福利电影一区二区三区| 91啦中文在线观看| 久久网站最新地址| 天堂成人国产精品一区| 欧美高清视频不卡网| 国产一区福利在线| 国产精品进线69影院| 欧美性生活一区| 国产精品福利一区| 欧美日韩久久久久久| 另类小说图片综合网| 国产精品欧美久久久久无广告| 91在线观看污| 欧美国产1区2区| 欧美亚洲图片小说| 亚洲欧洲制服丝袜| 欧美一区二区三区思思人| 国产主播一区二区三区| 日韩一卡二卡三卡| 不卡视频在线观看| 日韩精品久久久久久| 欧美视频第二页| 国精产品一区一区三区mba桃花| 国产精品国产三级国产aⅴ无密码| 国产一区二区久久| 久久香蕉国产线看观看99| 91丝袜美腿高跟国产极品老师 | 亚洲精品欧美激情| 精品日韩在线观看| 在线观看日韩国产| 国产乱子伦一区二区三区国色天香| 中文字幕视频一区二区三区久| 欧美另类一区二区三区| 成人黄色软件下载| 国产亚洲午夜高清国产拍精品| 老司机精品视频在线| 亚洲男人的天堂网| 在线视频国内自拍亚洲视频| 中文字幕制服丝袜一区二区三区| 日韩欧美黄色影院| 欧美色老头old∨ideo| 亚洲第四色夜色| 制服丝袜亚洲色图| 色狠狠一区二区| 日日摸夜夜添夜夜添国产精品| 国产精品国产三级国产三级人妇 | 欧美吻胸吃奶大尺度电影| 一区二区三区四区av| 日本一区二区免费在线观看视频| 粉嫩aⅴ一区二区三区四区五区| 中文字幕av一区 二区| 99精品欧美一区| 国产一区二区三区精品欧美日韩一区二区三区| 欧美成人aa大片| 欧美日韩一区三区| 91猫先生在线| 91色在线porny| 一本大道av伊人久久综合| 成人午夜碰碰视频| 色香色香欲天天天影视综合网| 亚洲国产日韩av| 久久久久久9999| 国产精品久久久久婷婷| 99精品久久久久久| 久久免费的精品国产v∧| 国产一区欧美二区| 日韩电影在线观看一区| 亚洲精品免费视频| 日韩免费看的电影| 5858s免费视频成人| 91.麻豆视频| 国产99久久精品| 亚瑟在线精品视频| 亚洲电影在线免费观看| 日韩欧美中文字幕精品| 日韩亚洲欧美综合| 精品日产卡一卡二卡麻豆| 91日韩在线专区| 免费观看日韩av| 精品中文av资源站在线观看| 一区二区不卡在线播放 | 亚洲一区二区三区不卡国产欧美 | 亚洲高清在线精品| 日韩一区二区免费在线观看| 欧美视频在线播放| 欧美日韩亚洲综合| 欧美变态凌虐bdsm| 91行情网站电视在线观看高清版| 黄一区二区三区| 国产精品中文字幕日韩精品 | 在线国产电影不卡| 欧美日韩国产小视频| 日韩三级伦理片妻子的秘密按摩| 黄网站免费久久| 日韩精品福利网| 国产剧情一区二区三区| 91免费观看在线| jlzzjlzz欧美大全| 东方aⅴ免费观看久久av| 成人免费毛片高清视频| 在线观看精品一区| 日韩欧美激情一区| 亚洲天堂免费在线观看视频| 一区二区三区国产| 国产精品久久久久久久岛一牛影视 | 欧美三区在线观看| 精品99久久久久久| 91伊人久久大香线蕉| 91精品国产丝袜白色高跟鞋| 欧美女孩性生活视频| 精品国产3级a| 26uuuu精品一区二区| 中文字幕不卡在线| 香港成人在线视频| 亚洲色图视频免费播放| 久久国产三级精品| 欧美亚州韩日在线看免费版国语版| 国产在线播放一区三区四| 色综合一个色综合| 91福利视频在线| 久久久精品欧美丰满| 亚洲成av人片一区二区梦乃 | 91久久精品一区二区| 亚洲精品一区二区三区精华液| 亚洲日本va在线观看| 国产综合久久久久影院| 欧美精品一级二级| 一区二区三区国产| 亚洲黄色在线视频| 一区二区三区在线看| 国产成人福利片| 国产成人在线看| 欧美日本乱大交xxxxx| 中文字幕一区二区视频| 久久久精品tv| 美国三级日本三级久久99| 国产精品18久久久久久vr| 欧美精品vⅰdeose4hd| 欧美一区二区视频免费观看| 欧美日韩精品三区| 亚洲天堂福利av| caoporm超碰国产精品| 中文成人综合网| 一区二区理论电影在线观看| 天天综合日日夜夜精品| 欧美色倩网站大全免费| 一区二区三区欧美激情| 白白色 亚洲乱淫| 欧美国产日韩一二三区| 亚洲日本乱码在线观看| 日韩成人伦理电影在线观看| 国产suv精品一区二区三区| 色婷婷综合激情| 亚洲午夜久久久久久久久电影院 | 欧美成人女星排名| 国产精品免费久久久久|