在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

CC2530 串口配置步驟

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2023-07-06 14:42 ? 次閱讀

一、并行通信與串行通信

微控制器與外設之間的數(shù)據(jù)通信,根據(jù)連線結構和傳送方式的不同,可以分為兩種:并行通信和串行通信。

并行通信:指數(shù)據(jù)的各位同時發(fā)送或接收,每個數(shù)據(jù)位使用單獨的一條導線。傳輸速度快、效率高,但需要的數(shù)據(jù)線較多,成本高。

串行通信:指數(shù)據(jù)一位接一位地順 序發(fā)送或接收。需要的數(shù)據(jù)線少,成本低,但傳輸速度慢,效率低。

二、CC2530的串口通信模塊

CC2530有兩個串行通信接口USART0和USART1,它們能夠分別運行于異步UART模式或者同步SPI模式。

兩個USART接口具有相同的功能,通過PERCFG寄存器可以設置兩個USART接口對應外部I/O引腳的映射關系:

位置1:RX0 --- P0_2 TX0 --- P0_3 RX1 --- P0_5 TX1 --- P0_4

位置2:RX0 --- P1_4 TX0 --- P1_5 RX1 --- P1_7 TX1 --- P1_6

對每個USART串口通信編程,本質(zhì)是設置相關的5個寄存器:

<1> UxCSR: USARTx的控制和狀態(tài)寄存器。

<2> UxUCR: USARTx的UART控制寄存器。

<3> UxGCR: USARTx的通用控制寄存器。

<4> UxDBUF:USARTx的接收/發(fā)送數(shù)據(jù)緩沖寄存器。

<4> UxBAUD:USARTx的波特率控制寄存器。

三、UART口與計算機的COM口連接

先認識兩種電平:TTL電平和RS232電平。

TTL電平: 邏輯0----小于0.8V 邏輯1----大于2.4V。

RS232電平: 邏輯0----5 15V 邏輯1---- -5 -15V。

計算機的串行通信接口是RS-232的標準接口,而CC2530單片機的UART接口則是TTL電平,兩者的電氣規(guī)范不一致,所以要完成兩者之間的數(shù)據(jù)通信,就需要借助接口芯片在兩者之間進行電平轉(zhuǎn)換,常用的有MAX232芯片。

img

注意:DB9接口中,公頭和母頭的排列順序是不同的。

四、原理圖數(shù)據(jù)手冊分析

img

img

img

img

配置串口的步驟

img

img

img

img

五、代碼示例

(1) 示例1: 編寫串口初始化函數(shù),實現(xiàn)串口字符串發(fā)送 (CPU頻率在32MHZ下,波特率的為115200)

#include < ioCC2530.h >
 #include < string.h >
 ?
 //定義LED燈的端口
 #define LED1 P1_2
 #define LED2 P1_3
 ?
 //定義KEY按鍵的端口
 #define KEY1 P1_0       //定義按鍵為P1_0口控制
 #define KEY2 P1_1       //定義按鍵為P1_1口控制
 ?
 /*
 函數(shù)功能:LED燈IO口初始化
 硬件連接:LED1-- >P1_2 , LED2-- >P1_3
 */
 void LED_Init(void)
 {
     P1DIR |=0x3< 2;  //配置P1_2、P1_3為輸出模式
     LED1 = 1;
     LED2 = 1;
 }
 ?
 /*
 函數(shù)功能:按鍵IO口初始化
 硬件連接:KEY1-- >P1_0  KEY2-- >P1_1  
 */
 void KEY_Init(void)
 {
     P1SEL&=~(0x3< 0); //配置P1_0,P1_1處于通用GPIO口模式
     P1DIR&=~(0x3< 0); //配置P1_0,P1_1為輸入模式
     P1INP|= 0x3< 0;   //上拉   
 }
 ?
 ?
 void delay10ms(void)   //誤差 0us
 {
     unsigned char a,b,c;
     for(c=193;c >0;c--)
         for(b=118;b >0;b--)
             for(a=2;a >0;a--);
 }
 ?
 ?
 /*
 函數(shù)功能:按鍵掃描
 返 回 值:按下的按鍵值
 */
 unsigned char Key_Scan(void)
 {
     static unsigned char stat=1;
     if((KEY1==0||KEY2==0)&&stat)
     {
        stat=0;
        delay10ms();
        if(KEY1==0)return 1;
        if(KEY2==0)return 2;
     }
     else
     {
         if(KEY1&&KEY2)stat=1;
     }
     return 0;
 }
 ?
 /*
 函數(shù)功能:串口0初始化
 */
 void Init_Uart0(void)
 {
   PERCFG&=~(1< 0);  //串口0的引腳映射到位置1,即P0_2和P0_3
   P0SEL|=0x3< 2;   //將P0_2和P0_3端口設置成外設功能
   U0BAUD = 216;     //32MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0GCR&=~(0x1F< 0);//清空波特率指數(shù)
   U0GCR|=11< 0;      //32MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0UCR |= 0x80;    //禁止流控,8位數(shù)據(jù),清除緩沖器
   U0CSR |= 0x3< 6;  //選擇UART模式,使能接收器
 }
 ?
 ?
 /*
 函數(shù)功能:UART0發(fā)送字符串函數(shù)
 */
 void UR0SendString(char *str,unsigned int len)
 {
   int j;
   for(j=0;j< len;j++)
   {
     U0DBUF = *str++;    //將要發(fā)送的1字節(jié)數(shù)據(jù)寫入U0DBUF
     while(UTX0IF == 0);//等待數(shù)據(jù)發(fā)送完成
     UTX0IF = 0;       //清除發(fā)送完成標志,準備下一次發(fā)送
   }
 }
 ?
 /****************************************** 
  * 函數(shù)描述:32M系統(tǒng)時鐘下的毫秒延時函數(shù) 
  ******************************************/  
 void Delay_ms(unsigned int ms)  
 {  
   unsigned int i,j;  
   for(i = 0; i < ms; i++)  
   {  
     for(j = 0;j < 1774; j++);  
   }  
 }  
 ?
 ?
 /*主函數(shù)*/
 void main(void)
 {
     char buff[]="-----萬邦易嵌嵌入式開發(fā)-----\\r\\n";
     unsigned char key;
     CLKCONCMD &= ~0x40;            //設置系統(tǒng)時鐘源為32MHz晶振  
     for(; CLKCONSTA & 0x40;);      //等待晶振穩(wěn)定  
     CLKCONCMD &= ~0X47;            //設置系統(tǒng)主時鐘頻率為32MHz  
   
     LED_Init();//初始化LED燈控制IO口
     KEY_Init();//按鍵初始化
     Init_Uart0();        //初始化串口0
     while(1)          
     {  
        key=Key_Scan();
        if(key)
        {
           //先發(fā)送一個字符串,測試串口0數(shù)據(jù)傳輸是否正確
           UR0SendString(buff,strlen(buff));     
           LED2 = !LED2;
        }       
     }
 }
 ?
 ?

(2)示例2: 編寫串口初始化函數(shù),實現(xiàn)串口字符串發(fā)送 (CPU頻率在16MHZ下,波特率為115200)

#include < ioCC2530.h >
 #include < string.h >
 ?
 //定義LED燈的端口
 #define LED1 P1_2
 #define LED2 P1_3
 ?
 //定義KEY按鍵的端口
 #define KEY1 P1_0       //定義按鍵為P1_0口控制
 #define KEY2 P1_1       //定義按鍵為P1_1口控制
 ?
 /*
 函數(shù)功能:LED燈IO口初始化
 硬件連接:LED1-- >P1_2 , LED2-- >P1_3
 */
 void LED_Init(void)
 {
     P1DIR |=0x3< 2;  //配置P1_2、P1_3為輸出模式
     LED1 = 1;
     LED2 = 1;
 }
 ?
 /*
 函數(shù)功能:按鍵IO口初始化
 硬件連接:KEY1-- >P1_0  KEY2-- >P1_1  
 */
 void KEY_Init(void)
 {
     P1SEL&=~(0x3< 0); //配置P1_0,P1_1處于通用GPIO口模式
     P1DIR&=~(0x3< 0); //配置P1_0,P1_1為輸入模式
     P1INP|= 0x3< 0;   //上拉   
 }
 ?
 ?
 void delay10ms(void)   //誤差 0us
 {
     unsigned char a,b,c;
     for(c=193;c >0;c--)
         for(b=118;b >0;b--)
             for(a=2;a >0;a--);
 }
 ?
 ?
 /*
 函數(shù)功能:按鍵掃描
 返 回 值:按下的按鍵值
 */
 unsigned char Key_Scan(void)
 {
     static unsigned char stat=1;
     if((KEY1==0||KEY2==0)&&stat)
     {
        stat=0;
        delay10ms();
        if(KEY1==0)return 1;
        if(KEY2==0)return 2;
     }
     else
     {
         if(KEY1&&KEY2)stat=1;
     }
     return 0;
 }
 ?
 /*
 函數(shù)功能:串口0初始化
 */
 void Init_Uart0(void)
 {
   PERCFG&=~(1< 0);  //串口0的引腳映射到位置1,即P0_2和P0_3
   P0SEL|=0x3< 2;   //將P0_2和P0_3端口設置成外設功能
   U0BAUD = 216;     //16MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0GCR&=~(0x1F< 0);//清空波特率指數(shù)
   U0GCR|=12< 0;      //16MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0UCR |= 0x80;    //禁止流控,8位數(shù)據(jù),清除緩沖器
   U0CSR |= 0x3< 6;  //選擇UART模式,使能接收器
 }
 ?
 ?
 /*
 函數(shù)功能:UART0發(fā)送字符串函數(shù)
 */
 void UR0SendString(char *str,unsigned int len)
 {
   int j;
   for(j=0;j< len;j++)
   {
     U0DBUF = *str++;    //將要發(fā)送的1字節(jié)數(shù)據(jù)寫入U0DBUF
     while(UTX0IF == 0);//等待數(shù)據(jù)發(fā)送完成
     UTX0IF = 0;       //清除發(fā)送完成標志,準備下一次發(fā)送
   }
 }
 ?
 /****************************************** 
  * 函數(shù)描述:32M系統(tǒng)時鐘下的毫秒延時函數(shù) 
  ******************************************/  
 void Delay_ms(unsigned int ms)  
 {  
   unsigned int i,j;  
   for(i = 0; i < ms; i++)  
   {  
     for(j = 0;j < 1774; j++);  
   }  
 }  
 ?
 ?
 /*主函數(shù)*/
 void main(void)
 {
     char buff[]="-----萬邦易嵌嵌入式開發(fā)-----\\r\\n";
     unsigned char key;
     LED_Init();//初始化LED燈控制IO口
     KEY_Init();//按鍵初始化
     Init_Uart0();        //初始化串口0
     while(1)          
     {  
        key=Key_Scan();
        if(key)
        {
           //先發(fā)送一個字符串,測試串口0數(shù)據(jù)傳輸是否正確
           UR0SendString(buff,strlen(buff));     
           LED2 = !LED2;
        }       
     }
 }
 ?
 ?

(3)示例3:中斷接收

#include < ioCC2530.h >
 #include < string.h >
 ?
 //定義LED燈的端口
 #define LED1 P1_2
 #define LED2 P1_3
 ?
 //定義KEY按鍵的端口
 #define KEY1 P1_0       //定義按鍵為P1_0口控制
 #define KEY2 P1_1       //定義按鍵為P1_1口控制
 ?
 unsigned char dataRecv;
 unsigned char Flag = 0;
 ?
 /*
 函數(shù)功能:LED燈IO口初始化
 硬件連接:LED1-- >P1_2 , LED2-- >P1_3
 */
 void LED_Init(void)
 {
     P1DIR |=0x3< 2;  //配置P1_2、P1_3為輸出模式
     LED1 = 1;
     LED2 = 1;
 }
 ?
 /*
 函數(shù)功能:按鍵IO口初始化
 硬件連接:KEY1-- >P1_0  KEY2-- >P1_1  
 */
 void KEY_Init(void)
 {
     P1SEL&=~(0x3< 0); //配置P1_0,P1_1處于通用GPIO口模式
     P1DIR&=~(0x3< 0); //配置P1_0,P1_1為輸入模式
     P1INP|= 0x3< 0;   //上拉   
 }
 ?
 ?
 void delay10ms(void)   //誤差 0us
 {
     unsigned char a,b,c;
     for(c=193;c >0;c--)
         for(b=118;b >0;b--)
             for(a=2;a >0;a--);
 }
 ?
 ?
 /*
 函數(shù)功能:按鍵掃描
 返 回 值:按下的按鍵值
 */
 unsigned char Key_Scan(void)
 {
     static unsigned char stat=1;
     if((KEY1==0||KEY2==0)&&stat)
     {
        stat=0;
        delay10ms();
        if(KEY1==0)return 1;
        if(KEY2==0)return 2;
     }
     else
     {
         if(KEY1&&KEY2)stat=1;
     }
     return 0;
 }
 ?
 /*
 函數(shù)功能:串口0初始化
 */
 void Init_Uart0(void)
 {
   PERCFG&=~(1< 0);  //串口0的引腳映射到位置1,即P0_2和P0_3
   P0SEL|=0x3< 2;   //將P0_2和P0_3端口設置成外設功能
   U0BAUD = 216;     //16MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0GCR&=~(0x1F< 0);//清空波特率指數(shù)
   U0GCR|=12< 0;      //16MHz的系統(tǒng)時鐘產(chǎn)生115200BPS的波特率
   U0UCR |= 0x80;    //禁止流控,8位數(shù)據(jù),清除緩沖器
   U0CSR |= 0x3< 6;  //選擇UART模式,使能接收器
   UTX0IF = 0;       //清除TX發(fā)送中斷標志
   URX0IF = 0;       //清除RX接收中斷標志
   URX0IE = 1;       //使能URAT0的接收中斷
   EA = 1;           //使能總中斷
 }
 ?
 ?
 ?
 /*
 函數(shù)功能:UART0發(fā)送字符串函數(shù)
 */
 void UR0SendString(char *str,unsigned int len)
 {
   int j;
   for(j=0;j< len;j++)
   {
     U0DBUF = *str++;    //將要發(fā)送的1字節(jié)數(shù)據(jù)寫入U0DBUF
     while(UTX0IF == 0);//等待數(shù)據(jù)發(fā)送完成
     UTX0IF = 0;       //清除發(fā)送完成標志,準備下一次發(fā)送
   }
 }
 ?
 /*================UR0接收中斷服務函數(shù)================*/
 #pragma vector = URX0_VECTOR
 __interrupt void UART0_RecvInterrupt()
 {
   URX0IF = 0;           //清除RX接收中斷標志
   dataRecv =  U0DBUF;   //將數(shù)據(jù)從接收緩沖區(qū)讀出
   Flag = 1;             //設置接收指令標志
 }
 ?
 ?
 /*================執(zhí)行上位機的指令=================*/
 void ExecuteTheOrder()
 {
   Flag = 0 ;            //清除接收指令標志
   switch(dataRecv)
   {
     case 'A':
       UR0SendString("選擇1!\\r\\n",9);
       break;
     case 'B':
       UR0SendString("選擇2!\\r\\n",9);
       break;
     case 'C':
       UR0SendString("選擇3!\\r\\n",9);
       break;
     case 'D':
       UR0SendString("選擇4!\\r\\n",9);
       break;
   }
 }
 ?
 ?
 /*主函數(shù)*/
 void main(void)
 {
     char buff[]="-----嵌入式開發(fā)-----\\r\\n";
     unsigned char key;
     LED_Init();//初始化LED燈控制IO口
     KEY_Init();//按鍵初始化
     Init_Uart0();        //初始化串口0
     while(1)          
     {
        key=Key_Scan();
        if(key)
        {
           //先發(fā)送一個字符串,測試串口0數(shù)據(jù)傳輸是否正確
           UR0SendString(buff,strlen(buff));     
           LED2 = !LED2;
        }
       
       if(Flag == 1)      //查詢是否收到上位機指令
       {
         ExecuteTheOrder();
       }
     }
 }
 ?
 ?
 ?

六、波特率計算

計算波特率

CC2530的波特率由BAUD_E和BAUD_M共同決定:

img

F為微控制器的系統(tǒng)時鐘頻率:16MHz或32MHz。

TI公司提供的數(shù)據(jù)手冊中,給出了32MHz系統(tǒng)時鐘下各常用波特率的參數(shù)值,由計算公式亦不難得出16MHz系統(tǒng)時鐘下對應的參數(shù)值。

img

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7840

    瀏覽量

    153305
  • 串口通信
    +關注

    關注

    34

    文章

    1633

    瀏覽量

    56344
  • CC2530
    +關注

    關注

    19

    文章

    221

    瀏覽量

    58604
  • 串口配置
    +關注

    關注

    0

    文章

    5

    瀏覽量

    1697
收藏 0人收藏

    評論

    相關推薦

    CC2530 GPIO口輸入配置配置步驟

    介紹CC2530 GPIO口輸入配置配置
    的頭像 發(fā)表于 07-06 14:40 ?3270次閱讀
    <b class='flag-5'>CC2530</b> GPIO口輸入<b class='flag-5'>配置</b><b class='flag-5'>配置</b><b class='flag-5'>步驟</b>

    CC2530 外部中斷配置步驟

    介紹CC2530 外部中斷配置步驟
    的頭像 發(fā)表于 07-06 14:41 ?3716次閱讀
    <b class='flag-5'>CC2530</b> 外部中斷<b class='flag-5'>配置</b><b class='flag-5'>步驟</b>

    Cc2530

    CC2530
    三分溫柔
    發(fā)布于 :2022年05月31日 21:12:52

    CC2530的時鐘配置概述

    二、CC2530的時鐘配置概述CC2530同樣也有兩個時鐘,一個是高頻時鐘信號給CPU使用,另一個低頻時鐘信號給看門狗,睡眠定時器等使用;相對應的高速時鐘CC2530片內(nèi)有一個16MH
    發(fā)表于 01-19 07:01

    基于CC2530的SDHC卡讀寫設計

    提出了將SDHC卡作為CC2530的外部存儲設備實現(xiàn)數(shù)據(jù)存儲的方法。SDHC卡具有體積小、存儲容量大的特點,通過CC2530組建的無線傳感網(wǎng)絡適用于工業(yè)監(jiān)測,而將SDHC卡與CC2530相結合
    發(fā)表于 05-02 14:28 ?3729次閱讀
    基于<b class='flag-5'>CC2530</b>的SDHC卡讀寫設計

    cc2530底板

    CC2530的核心板原理圖和詳細底板的PCB,包括重要外設的PCB
    發(fā)表于 06-20 17:48 ?0次下載

    cc2530的PWM實現(xiàn)

    CC2530 結合了領先的RF 收發(fā)器的優(yōu)良性能,業(yè)界標準的增強型8051 CPU,系統(tǒng)內(nèi)可編程閃存,8-KB RAM 和許多其它強大的功能。CC2530 有四種不同的閃存版本:CC2530F32/64/128/256,分別具有
    發(fā)表于 11-07 18:43 ?4111次閱讀
    <b class='flag-5'>cc2530</b>的PWM實現(xiàn)

    CC2530英文數(shù)據(jù)手冊

    CC2530英文數(shù)據(jù)手冊
    發(fā)表于 12-02 11:06 ?29次下載
    <b class='flag-5'>CC2530</b>英文數(shù)據(jù)手冊

    cc2530程序設計實例之CC2530 RF部分使用—實現(xiàn)點對點收發(fā)

    本文主要介紹了cc2530程序設計實例之CC2530 RF部分使用—實現(xiàn)點對點收發(fā),通過串口調(diào)試助手發(fā)送字節(jié)數(shù)據(jù)。例如通過串口向設備A發(fā)送HelloCC
    發(fā)表于 12-09 12:22 ?2.2w次閱讀
    <b class='flag-5'>cc2530</b>程序設計實例之<b class='flag-5'>CC2530</b> RF部分使用—實現(xiàn)點對點收發(fā)

    關于12.AD采集cc2530溫度串口顯示

    通過實驗掌握CC2530芯片串口配置與使用;采集內(nèi)部溫度傳感器信息通過串口發(fā)送到上位機;觀察TX指示燈。
    發(fā)表于 08-06 08:00 ?10次下載
    關于12.AD采集<b class='flag-5'>cc2530</b>溫度<b class='flag-5'>串口</b>顯示

    如何利用CC2530實現(xiàn)無線串口

    CC2530是符合802.15.4標準的無線收發(fā)芯片,但是本文并沒有遵守802.15.4協(xié)議規(guī)則,在發(fā)送過程中忽略了網(wǎng)絡ID、源地址和目標地址等參數(shù),在接收的過程中禁止了幀過濾。通過發(fā)送和接收過程的處理使得CC2530無線部分的使用盡可能的簡單清晰,通過最少的代碼說明問題
    發(fā)表于 11-16 16:06 ?6770次閱讀

    CC2530芯片的基本特性和CC2530無線模塊的設計

    本文介紹了CC2530芯片的基本特性,論述了以CC2530芯片為核心的無線通信模塊的硬件設計和調(diào)試軟件設計,在介紹設計規(guī)范和模塊結構的基礎上,采用TI公司的CC2530芯片作為主控制芯片設計出具
    發(fā)表于 02-11 08:00 ?97次下載
    <b class='flag-5'>CC2530</b>芯片的基本特性和<b class='flag-5'>CC2530</b>無線模塊的設計

    CC2530控制LED閃爍

    CC2530控制LED閃爍CC2530 控制LED閃爍電路圖知識點CC2530有兩個高頻時鐘輸入輸出配置程序及注釋CC2530 控制LED閃
    發(fā)表于 11-29 18:51 ?15次下載
    <b class='flag-5'>CC2530</b>控制LED閃爍

    Zstack3.0.2 CC2530官方DMA串口0位置的移植

    Zstack3.0.2 CC2530官方DMA串口0位置的移植
    發(fā)表于 11-30 10:21 ?7次下載
    Zstack3.0.2 <b class='flag-5'>CC2530</b>官方DMA<b class='flag-5'>串口</b>0位置的移植

    CC2530無線通信模塊使用串口通信參考方法

    CC2530無線通信模塊使用串口通信參考方法
    發(fā)表于 04-24 17:20 ?13次下載

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品
    主站蜘蛛池模板: 欧美一级片在线免费观看 | 天天看天天摸色天天综合网 | h视频欧美| 成人看的午夜免费毛片 | 香港三澳门三日本三级 | 久碰香蕉精品视频在线观看 | 国产黄色在线 | 日本一区二区三区四区视频 | 色涩在线观看 | 日本h片在线观看 | 欧美视频a | 岛国片欧美一级毛片 | 婷婷久久综合九色综合98 | 久久精品乱子伦免费 | 天天操天天操天天 | 2023av网站| 成年视频xxxxx免费播放软件 | 亚洲网站免费看 | 看视频免费网址 | 狼色影院| 欧美激情综合 | 无内丝袜透明在线播放 | 亚洲欧美日韩在线精品2021 | 么公的好大好硬好深好爽在线视频 | 午夜五月天 | 日韩高清特级特黄毛片 | 五月婷婷视频在线 | 又粗又长又爽又长黄免费视频 | 免费国产成高清人在线视频 | 四虎现在的网址入口 | 男人都懂得网址 | 国产va | 色综合天天综合中文网 | 一级毛片真人免费播放视频 | a亚洲 | 你懂的网址免费国产 | 亚洲一区免费观看 | 亚洲黄网站wwwwww | 久久天天丁香婷婷中文字幕 | 国产亚洲精品成人a在线 | 老熟女毛片 |