<samp id="eu6yy"><tfoot id="eu6yy"></tfoot></samp>
  • <tr id="eu6yy"></tr>
  • <strike id="eu6yy"></strike>
    
    
  • <strike id="eu6yy"></strike>
    東莞市德峰智能科技有限公司

    聯系我們Contact

    您的位置: 首頁 ->  技術支持 -> 關于ZIGBEE技術

    關于ZIGBEE技術



    Zigbee的由來

    在藍牙技術的使用過程中,人們發現藍牙技術盡管有許多優點,但仍存在許多缺陷。對工業,家庭自動化控制和遙測遙控領域而言,藍牙技術顯得太復雜,功耗大,距離近,組網規模太小等,而工業自動化對無線通信的需求越來越強烈。正因此,經過人們長期努力,Zigbee協議在2003年中通過后,于2004正式問世了。

    Zigbee是什么

    Zigbee是一個由可多到65000個無線數傳模塊組成的一個無線數傳網絡平臺,十分類似現有的移動通信的CDMA網或GSM網,每一個Zigbee網絡數傳模塊類似移動網絡的一個基站,在整個網絡范圍內,它們之間可以進行相互通信;每個網絡節點間的距離可以從標準的75米,到擴展后的幾百米,甚至幾公里;另外整個Zigbee網絡還可以與現有的其它的各種網絡連接。例如,你可以通過互聯網在北京監控云南某地的一個Zigbee控制網絡。

    不同的是,Zigbee網絡主要是為自動化控制數據傳輸而建立,而移動通信網主要是為語音通信而建立;每個移動基站價值一般都在百萬元人民幣以上,而每個Zigbee“基站”卻不到1000元人民幣;每個Zigbee 網絡節點不僅本身可以與監控對對象,例如傳感器連接直接進行數據采集和監控,它還可以自動中轉別的網絡節點傳過來的數據資料; 除此之外,每一個Zigbee網絡節點(FFD)還可在自己信號覆蓋的范圍內,和多個不承擔網絡信息中轉任務的孤立的子節點(RFD)無線連接。

    每個Zigbee網絡節點(FFD和RFD)可以可支持多到31個的傳感器和受控設備,每一個傳感器和受控設備終可以有8種不同的接口方式??梢圆杉蛡鬏敂底至亢湍M量。

    Zigbee技術的應用領域

    Zigbee技術的目標就是針對工業,家庭自動化,遙測遙控,汽車自動化、農業自動化和醫療護理等,例如燈光自動化控制,傳感器的無線數據采集和監控,油田,電力,礦山和物流管理等應用領域。另外它還可以對局部區域內移動目標例如城市中的車輛進行定位.

    通常,符合如下條件之一的應用,就可以考慮采用Zigbee技術做無線傳輸:

    1.需要數據采集或監控的網點多;

    2.要求傳輸的數據量不大,而要求設備成本低;

    3.要求數據傳輸可性高,安全性高;

    4.設備體積很小,不便放置較大的充電電池或者電源模塊;

    5.電池供電;

    6.地形復雜,監測點多,需要較大的網絡覆蓋;

    7.現有移動網絡的覆蓋盲區;

    8.使用現存移動網絡進行低數據量傳輸的遙測遙控系統。

    9.使用GPS效果差,或成本太高的局部區域移動目標的定位應用。

    Zigbee 技術的特點

    省電:兩節五號電池支持長達6個月到2年左右的使用時間。

    可靠:采用了碰撞避免機制,同時為需要固定帶寬的通信業務預留了專用時隙,避免了發送數據時的競爭和沖突;節點模塊之間具有自動動態組網的功能,信息在整個Zigbee網絡中通過自動路由的方式進行傳輸,從而保證了信息傳輸的可靠性。

    時延短:針對時延敏感的應用做了優化,通信時延和從休眠狀態激活的時延都非常短。

    網絡容量大:可支持達65000個節點。

    安全:ZigBee提供了數據完整性檢查和鑒權功能,加密算法采用通用的AES-128。

    高保密性:64位出廠編號和支持AES-128加密。

    Zigbee的發展前景

    Zigbee技術和RFID 技術在2004年就被列為當今世界發展最快,市場前景最廣闊的十大最新技術中的兩個。關于這方面的報道,你只需在百度,或GOOGLE搜索欄中鍵入“Zigbee”,你就會看到大量的有關報道??傊窈笕舾赡?,都將是Zigbee技術飛速發展的時期。

    Zigbee技術在我國的應用情況

    盡管,國內不少人已經開始關注Zigbee這們新技術,而且也有不少單位開始涉足Zigbee技術的開發工作,然而,由于Zigbee 本身是一種新的系統集成技術,應用軟件的開發必須和網絡傳輸,射頻技術和底層軟硬件控制技術結合在一起。因而深入理解這個來自國外的新技術,再組織一個在這幾個方面都有豐富經驗的配套的隊伍,本身就不是一件容易的事情,因而,到目前為止,國內目前除了成都西谷曙光數字技術有限公司,真正將Zigbee技術開發成產品,并成功地用于解決幾個領域的實際生產問題而外,尚未見到其它報道。

    Zigbee 和現有移動網(GPRS,CDMA-1X)的比較

    1.無網絡使用費:使用移動網需要長期支付網絡使用費,而且是按節點終端的數量計算的,而Zigbee沒有這筆費用;

    2.設備投入低:使用移動網需要購買移動終端設備,每個終端的價格在人民幣1000元上下,而使用Zigbee 網絡,不僅Zigbee網絡節點模塊(相當于基站)費用每只人民幣不到1000元,而且,主要使用的網絡子節點(相當于手機)的價格還要低得多;

    3.通信更可靠:由于現有移動網主要是為手機通信而設計的,盡管CDMA-1X和GPRS可以進行數據通信,但實踐發現,不僅通信數率比設計速率低很多,而且數據通信的可靠信也存在一定的問題。而Zigbee網絡則是專門為控制數據的傳輸而設計的,因而控制數據的傳輸具有相當的保證。
        4.高度的靈活性和低成本:首先,通過使用覆蓋距離不同,功能不同的Zigbee網絡節點,以及其它非Zigbee系統的低成本的無線收發模塊,建立起一個Zigbee局部自動化控制網,(這個網絡可以是星型,樹狀,網狀及其共同組成的復合網結構)再通過互聯網或移動網與遠端的計算機相連,從而實現低成本,高效率的工業自動化遙測遙控;

    5.比起現有的移動網來,盡管Zigbee僅僅只是一個局域網,覆蓋區域有限,但它卻可以與現有的移動網,互聯網和其它通信網絡相連接,將許多Zigbee局域網相互連成為一個整體。有效的解決移動網的盲區覆蓋問題:我們知道,現有移動網絡在許多地方存在盲區,特別是鐵路,公路,油田,礦山等野外,更是如此。而增加一個移動基站或直放站的費用是相當可觀的,此時使用Zigbee網絡進行盲區覆蓋不僅經濟有效,而且往往是現在唯一可行手段。

    Zigbee與現有數傳電臺的比較

    1.可靠性高:由于Zigbee模塊的集成度遠比一般數傳電臺高,分離元器件少,因而可靠性更高;

    2.使用方便安全:因為集成度高,比起一般數傳電臺來,Zigbee收法模塊體積可以做得很小,而且功耗低,例如成都西谷公司遠距離傳輸模塊(2-5公里),最大發射電流比一個CDMA手機還要小許多,因而很容易集成或直接安放在到設備之中,不僅使用方便,而且在戶外使用時,不容易受到破壞;

    3.抗干擾力強,保密性好,誤碼率低:Zigbee收發模塊使用的是2.4G直序擴頻技術,比起一般FSK, ASK和跳頻的數傳電臺來,具有更好的抗干擾能力,和更遠的傳輸距離;參閱我們網站中有關CDMA直序擴頻技術的優越性討論,和Cypress公司有關實驗報道。

    4.免費頻段:Zigbee使用的是免費頻段,而許多數傳電臺所使用的頻段不僅需要申請,而且每年都需要向國家無委會交納相當的頻率使用費。

    5.價格低: Zigbee數傳模塊的價格只有具有類似功能的數傳電臺的幾分之一;(2.4G,250kps,3-5公里距離DSSS 數傳模塊每只不到200元人民幣)

    提供低成本,高可靠性的無線數傳互聯網平臺(包括軟件和硬件),以及相關技術支持,以滿足不同客戶的具體需要,就是我們的服務宗旨。

     

     

     

     

    學習Zstack1

    Zstack情況:

    本人采用的是TI的Zstack1.4.3協議,據說這個需要IAR7.30B及以上版本,而目前市面上又沒有破解,所以用的人很少,這也是我的機會!呵呵?。ㄉ敌τ悬c多,關鍵是WORD里沒有表情符號,不能正常表達我此時的心情?。?/span>

    正式開始:

    開始之前在說一句:從TI網站上下載的Zstack的方法就不介紹了。否則就是從-1開始了而不是從0開始了-----------------我是這么覺得的!

    第一步:安裝Zstack

    從TI官方網站上下載的Zstack為:swrc072c.zip,我想這個壓縮包大家都認識。解壓之后為:ZStack-CC2430-1.4.3.exe文件。這個安裝文件大家都會了。默認安裝路徑為:C:\Texas Instruments\ZStack-1.4.3。安裝之后在C:\Texas Instruments\ZStack-1.4.3目錄下有各PDF文檔為:Getting Started Guide CC2430.pdf,不用多說,這個肯定是要看的。既然把它放到這么前面,說明它是入門中的入門文檔。下面就簡單介紹下這個文檔:
    1、介紹了安裝ZStack-CC2430-1.4.3.exe需要的硬件軟件條件:需要電腦、操作系統為Windows 2000或 Windows XP。至于更高或更低版本的本人沒有嘗試。
    2、講了安裝流程。這個有點多余了,這年月哪個有電腦的沒有安裝上百上千次的軟件?。康切枰獜娬{的是安裝路徑----默認就好!
    3、接下來就是讓我們看的第一個文檔為:
    Start->Programs->Texas Instruments->ZStack-1.4.3->Z-Stack User’s Guide,
    既然讓我看我就來看看這個文檔??!

    第二步:Z-Stack 用戶指導

    這個文檔的更新時間為:2007年12月21日----應該還是比較新的版本。由于本人英文的卻有限,就不翻譯了,瀏覽一遍,把大概意思說下就可以了:
    1、介紹
    1.1、適用范圍
    本文檔適用于CC2430ZigBee開發板----CC2430ZDK。
    2、產品包描述(TI提供的CC2430ZDK工具包)
    2.1、安裝包內容
    這個就是上面提到的的ZStack-CC2430-1.4.3.exe安裝之后的所有內容了。說白了就是包含Zstack開發所需要的所有軟件和文檔資料等。
    2.2、開發板介紹
    兩塊 SmartRF04EB 評估版,每個都可以用于CC2430EM評估模塊。如圖1-1所示:
     

    個人認為要求已經相當低了,如果你的電腦沒有這配置,個人強烈建議馬上扔掉!不過如今筆記本電腦很少有串口的,所以建議使用臺式電腦,而且裝機的時候一定要把串口引出,否則就比較麻煩了!
    3.2、目標板需求

    其實也是開發環境需求--- IAR EW8051。目前需要的版本為7.30B及以上。要求還是比較高的,因為目前這個版本沒有破解的。但是在http://www.iar.com/上有30天評估版下載。這個版本使用一定要小心,因為如果30天之后僅僅是卸載IAR重新安裝是沒有用的,一般最笨的辦法是重新安裝操作系統。解決這個問題最好的辦法就是買正版,呵呵,我想絕大多數像我這樣的中國人都不會買的。除此之外最好的辦法就是破解,但是目前這個破解極少,都是需要收費的,而且都是國外網站才有,所以我們就只好期望中國的高人抓緊破解并公開了!當然其他解決辦法就相對來說很多了,比如安裝后弄個還原點什么的;或者安裝后我不停地使用(每天24小時),30天之后我覺得你也學會了,就不用IAR這個版本了,說不定就移植到低版本上去了;等等類似之法我覺得都可以的。本人采用的是本辦法中相對比較聰明的,也是一位高人告訴我的:裝個虛擬操作系統,在虛擬操作系統下時間可以隨時更改,讓它一直停留在某個時間,主要30天的試用就比較慢長了,只要你不要忘記改那時間。
    4、產品安裝過程
    4.1、安裝Z-Stack

    這個也就是安裝ZStack-CC2430-1.4.3.exe的過程。
    4.2、IAR安裝

    一般來說安裝選擇默認路徑,但是自定義路徑也不會出問題的。注意IAR版本7.30B及以上版本才可以運行1.4.3協議。
    4.3、設備IEEE地址

    每個 CC2430DB, CC2430EM,和 CC2431EM都已經排列了一個唯一的64位物理地址(IEEE地址),這個地址已經寫到了CC2430內部FLASH里面,在CC2430DB, CC2430EM,和 CC2431EM板的底部有這個地址標簽。

    這個地址被寫入到FLASH的0x1FFF8地址中,注意這個地址也可以更改的,通過些FLASH軟件,一般0xFFFFFFFFFFFFFFFF地址被認為是無效地址。
    5、配置并試用Z-Stack
    5.1、配置Z-Stack

    這個詳見5.3節。
    5.2、邏輯類型

    這里主要是介紹了ZIGBEE協議中的三種設備類型:
    ZigBee 協調者(ZC):這個設備被配置為初始化并建立一個PAN網絡
    ZigBee 路由器(ZR):該設備被配置為加入一個存在的網絡,可以加入一個協調求或路由器,然后允許其他設備加入它,在網絡中路有數據信息。
    ZigBee 終端節點 (ZED):該設備被配置為加入一個存在的網絡,可以加入一個協調求或路由器。
    5.3、建立樣品應用設備:SampleApp
    基本上就是采用SampleApp應用中的Demo例子來演示整個流程,就是采用一個協調器和一個或多個路由器來形成一個ZigBee網絡演示。在該例子中主要通過SmartRF04EB板上的某些跳線來完成設備類型的選型,當然這個方法在程序中是需要判斷哪個按鍵被拉低或拉高,對于做個設計的來說應該是相當好理解的。

    申明:由于本人很窮,所以沒錢買TI原裝開發包,當然也就沒有上面提到的硬件,本人采用的是某家公司(為了避免廣告,這里就不說明了)的硬件系統。
    5.4、建立一個SampleLight協調器設備

    至于提到的硬件連接這里一律省略。

    無疑:首先要打開對應工程,如圖1-4所示:
    圖1-4
    在工作窗口中選擇DemoEB,如圖1-5所示:
     
    圖1-5
    然后選擇工程菜單(Project)下的全部編譯(Rebuild All)選項,如圖1-6所示:
     
    圖1-6
    然后選擇工程菜單(Project)下的調試(Debug)選項,如圖1-7所示:
     
    圖1-7
    下載完之后就可以退出調試狀態,通過選中調試菜單下的停止調試選項,如圖1-8所示:
     

    圖1-8
    按照此種方法下載至少兩個CC2430EM模塊,就可以進行Demo演示了。
    6、 Z-Stack 示范

    至于詳細的示范流程,這里先不說了,因為本人采用的硬件與原裝有點差異,即使按照這個方法下載仍然不能演示,因為我這個不能用跳線來選擇設備類型。

    所以我必須進入程序把跳線判斷程序進行簡單必要的修改才能演示。

    該文檔介紹的演示結果及現象都是基于CHIPCON原廠評估板。

    7.PanID和通道(Channel)選擇

    ZigBee協議規范規定,一個14位的個域網標志符(PAN ID)來標識唯一的一個網絡。Z-Stack可以用兩種方式由用戶自己選擇其PAN ID,當ZDAPP_CONFIG_PAN_ID值設置不為0xFFFF時,那么設備建立或加入網絡的PAN ID由ZDAPP_CONFIG_PAN_ID指定;如果設置ZDAPP_CONFIG_PAN_ID為0xFFFF;那么設備就將建立或加入它發現網絡中的“最好”的網絡。關于這里提到的“最好”的網絡,我覺得可能是有些參數評估,只不過這里沒有詳細的介紹,在后續文檔中應該有介紹的。

    在2.4G頻段上,IEEE 802.15.4/ZIGBEE規范規定了16各頻道。用戶可以通過選擇DEFAULT_CHANLIST不同的值可以選擇不同的頻道,其頻道如圖1-9所示。改協議默認頻道為0xB及0x00000800。


    圖1-9
    DEFAULT_CHANLIST 和 ZDAPP_CONFIG_PAN_ID都作為IAR IDE中的編譯選項可以進行設置,在應用文件中的…\Projects\Tools\CC2430DB目錄下的f8wConfig.cfg文件中有相應設置,如圖1-10所示。

    圖1-10

     

     

     

     

     

     

     

     

     

     

    學習Zstack之2

    上節基本上初步認識了Zstack的一些情況,今天繼續我的學習,打開Sample例子看看,究竟ZIGBEE是怎么回事。

    毫無疑問:如果是第一次打開這個例子工程,肯定很迷糊,因為此時我迷糊了。對圖2-1我簡直是相當迷糊。
     
    圖2-1

    這么多文件夾,打開之后又有那么多文件,從何看起?不要著急,特別是有些人拿到之后,啥都不知道的人第一個問題就是:我要實現XXX,在哪修改或者在哪添加我的函數呢?凡是我遇到這樣的客戶,我就可以肯定他技術部咋的。就連我這個外行都知道,不把這些弄明白,就是實現XXX只需要修改一個字母,那也不知道在哪改???所以我不急,但是我也理解很多客戶,因為有時候項目催的比較急,畢竟老板都是外行嘛!

    兩條路:1就是先看主函數,2就是看看TI提供例子說明文檔沒有。

    我這里先看看主函數再說哈!因為我就知道從主函數看起.

    沒辦法大概每個文件夾找啊,主函數的特征還是比較明明顯的,見圖2-2所示:
     
    圖2-2
    下面把主函數復制過來簡單看下:
    ZSEG int main( void )
    {
    // Turn off interrupts------------關閉中斷
    osal_int_disable( INTS_ALL );
    // Initialize HAL-----------初始化HAL,關于HAL是什么我想后面會有介紹的。
    HAL_BOARD_INIT();
    // Make sure supply voltage is high enough to run----電壓檢測,最好是能保證芯片能正常工作的電壓
    zmain_vdd_check();
    // Initialize stack memory-------------初始化stack存儲區
    zmain_ram_init();
    // Initialize board I/O------------初始化板載IO
    InitBoard( OB_COLD );
    // Initialze HAL drivers-------------初始化HAL驅動
    HalDriverInit();
    // Initialize NV System--------------初始化NV系統,NV是什么后面我想也會有介紹的
    osal_nv_init( NULL );
    // Determine the extended address------------確定擴展地址(64位IEEE/物理地址)
    zmain_ext_addr();
    // Initialize basic NV items----------------初始化基本NV條目
    zgInit();
    // Initialize the MAC----------------初始化MAC
    ZMacInit();
    #ifndef NONWK
    // Since the AF isn't a task, call it's initialization routine
    afInit();
    #endif
    // Initialize the operating system----------初始化操作系統,看樣子這里面還有OS,麻煩了……..!
    osal_init_system();

    // Allow interrupts-------------允許中斷
    osal_int_enable( INTS_ALL );
    // Final board initialization------------------最后的版在初始化
    InitBoard( OB_READY );
    // Display information about this device---------------顯示設備信息
    zmain_dev_info();
    /* Display the device info on the LCD */------------液晶支持顯示
    #ifdef LCD_SUPPORTED
    zmain_lcd_init();
    #endif
    osal_start_system(); // No Return from here-------------------這里沒有返回,大概是進入OS了。
    } // main()

    可以看到基本上都是初始化函數,因為函數名稱都基本上帶了init字樣的,呵呵,個人覺得TI的變成習慣比我好,一看名稱就知道大概功能了。所以這里也奉勸各位像我這樣菜鳥級的初學者,一開始一定就要養成規范化編程的習慣,據說這樣維護以及以后升級或者移植兼容性都比較好。我就先不管各個初始化函數是怎么實現的,我先看看各個功能是什么,現掌握整體功能在細化,我覺得這樣的學習方法比較好,因為代碼是在太多了,從一開始就逐句看,我敢保證沒幾個人有耐心看完看明白!

    幸好每個初始化函數都有一句說明,雖然是英文的,但是理解起來一點都不難的。關于每個函數的功能我就直接寫在上面的程序里面,節省紙張哈!

    一句話:主函數的功能就是初始化!

    主函數看完了又開始模糊了,又從何看起呢?在無從下手之際,只有去尋求TI說明文檔的幫助了。上節不是漏掉了內容,是關于演示結果的,這里做上補充,怕因為缺調一點后面遇到什么不理解的就慘了!

    Sample例子演示演示現象:
    1、認識硬件------------按鍵和LED

    上節提到了EM和DB兩個板子,其硬件是不一樣的。按鍵EM就有5各SW1~SW5,而DB只有1各方向鍵,但是他們有個對應關系,如圖2-3所示.

    圖2-3

    LED數量和顏色也不一樣,EM有四個LED,如圖2-4;而DB只有兩個,如圖2-5。
    如圖2-4

    如圖2-5

    關于上面幾個圖2-4/5中出現的LEDx實際上是程序中出現的關鍵字。
    2、初始化64位IEEE地址

    實際上在主函數中有這么個初始化函數的:zmain_ext_addr()。這里說如果地址復位為0xFFFFFFFFFFFFFFFF的話,那么就會不停的閃爍LED1,一直等到按鍵SW5按下后程序才能繼續運行,意思就是說按下SW5后就把無效的地址初始化為有效地物理地址了,這個應該是程序上實現的,那么就來看看對應的程序zmain_ext_addr。
    /*********************************************************************
    * @fn   zmain_ext_addr
    * @brief   Makes extended address if none exists.確定擴展地址是有效的
    * @return  none
     *********************************************************************/
    static ZSEG void zmain_ext_addr( void )
    {
    uint8 i;
    uint8 led;
    uint8 tmp;
    uint8 *xad;
    uint16 AtoD;
    // Initialize extended address in NV初始化NV里的擴載地址
    osal_nv_item_init(ZCD_NV_EXTADDR,Z_EXTADDR_LEN, NULL );
    osal_nv_read( ZCD_NV_EXTADDR, 0, Z_EXTADDR_LEN, &aExtendedAddress );
    // Check for uninitialized value (erased EEPROM = 0xFF)檢查是否為無效值(地址)
    xad = (uint8*)&aExtendedAddress;
    for (i =0;i < Z_EXTADDR_LEN; i++ )
    if(*xad++ != 0xFF ) return;-----如果有一個字節不為0xFF,那么該地址有效返回
    #ifdef ZDO_COORDINATOR
    tmp = 0x10;
    #else
    tmp = 0x20;
    #endif
    // Initialize with a simple pattern----------------簡單初始化擴展地址
    xad = (uint8*)&aExtendedAddress;
    for ( i = 0; i < Z_EXTADDR_LEN; i++ )
    *xad++ = tmp++;
    // Flash LED1 until user hits SW5 ---------閃爍LED1直到SW5按下
    led = HAL_LED_MODE_OFF;
    while ( HAL_KEY_SW_5 != HalKeyRead() )---------------------SW5循環檢測
    {
    MicroWait( 62500 );
    HalLedSet( HAL_LED_1, led^=HAL_LED_MODE_ON );//Toggle the LED
    MicroWait( 62500 );
    }
    HalLedSet( HAL_LED_1, HAL_LED_MODE_OFF );
    // Plug AtoD data into lower bytes
    AtoD = HalAdcRead (HAL_ADC_CHANNEL_7, HAL_ADC_RESOLUTION_10);
    xad = (uint8*)&aExtendedAddress;
    *xad++ = LO_UINT16( AtoD );
    *xad = HI_UINT16( AtoD );
    #if !defined( ZTOOL_PORT ) || defined( ZPORT ) || defined( NV_RESTORE )
    // If no support for Z-Tool serial I/O,
    // Write temporary 64-bit address to NV些臨時的64位物理地址進入NV
    osal_nv_write( ZCD_NV_EXTADDR, 0, Z_EXTADDR_LEN, &aExtendedAddress );
    #endif
    }

    從程序中可以看出,一開始就檢測FLASH中的物理地址,因為這個地址在FLASH中是固定的存儲空間,一旦為有效地址就退出函數,一旦為無效地址(0xFFFFFFFFFFFFFFFF),那么就對其物理地址進行簡單的初始化并檢測SW5按鍵。還是比較好理解的!
    3、運行例子

    在這里提到了跳線,由于本人采用的非TI原裝硬件,沒有該跳線,所以必須對程序進行修改,否則檢測不到跳線,連ZIGBEE的設備類型都不能確定,肯定不能正常運行了。所以這里就先暫時不說了,這里要說的是一切都正常的情況下,例子的驗尸結果。小小跳躍一下。不然學習一直沒有進展很麻煩的!

    協調器:上電運行,地址檢測如上面介紹的情況,通過之后呢-------就進行通道掃描,此時LED1閃爍,一旦協調器成功建立網絡,此時LED1停止閃爍,而LED3被點亮。

    路由器:上電運行,仍然是地址檢測在前。之后就是通道掃描尋求是否又存在的網絡,此時LED1閃爍,一旦檢測到存在網絡并成功加入該網絡,LED1將停止閃爍,被替換的是LED3別點亮,也就表明路由器成功加入了網絡。

    那么此時能進行的操作控制是什么呢,也是最簡單的表現手法---按鍵無線控制LED:

    周期(5S)發送信息到網絡中每個設備

    SW1按下,發送一個信息到組1的設備

    SW2按下,退出/加入組1

    這個我是經過驗證的。如:

    按下協調器SW1,路由器的LED1狂閃幾下;按下路由器的SW1,那么協調器的LED1也就狂閃幾下;當然我是只有兩個節點。

    如果按1下協調器的SW2,在按下路由器的SW1,此時協調器就沒有反應,表明協調器已經退出組1;但是再按下協調器SW2在按路由器的SW1就與上一步類似了。路由器與此類似可以通過SW2退出/加入組1.

    終于把演示弄完了,接下來就來看看程序。在此之前還是來看看TI提供的Sample指導文檔。這個文檔個人覺得寫的不錯,要是沒看之前就看程序的卻很郁悶的!

    但是本人英文很差,所以需要慢慢看,等點時間放上來!

    Z-Stack3
    Sample Application
    分析(上)

    1、Z-Stack CC2430DB and CC2430EB Sample Application
    1.1、介紹

    該文檔時介紹TI協議入門的一個例子SampleApp的,適用EM和DB開發板。
    1.1.1、描述

    這個例子是非常簡單的演示,每個設備都可以發送和接收兩個信息

    周期信息-----加入該網絡的所有設備每隔10S(可能會加上一個隨機數的mS)都發送一個周期信息,該信息的數據載荷為發送信息次數的計數。

    閃爍控制信息---------通過按下SW1可以發送一個控制燈閃爍的廣播信息,該廣播信息只針對組1的所有設備。

    所有設備初始化為加入組1,所以網絡一旦成功建立/加入就可以進行閃爍控制??梢酝ㄟ^按下設備的SW2退出組1,所以可以通過退出組1可以不接受閃燈信息。通過按下SW2也可以讓不在組1的設備加入近組1,從而又可以接受閃燈信息了。

    這個理解應該不困難的,反正我理解沒有什么障礙!
    1.1.1.1、按鍵

    SW1:發送閃爍信息到組1所有設備

    SW2:轉換推出/加入組1狀態
    1.1.2、用戶應用開發

    這里我基本上能看明白是什么,但是我不打算寫出來,因為涉及到一些ZIGBEE的關鍵術語,不是很明白。

    大概就是簡單介紹了下用戶怎么利用例子做自己的應用,但是實用價值不高,說的太籠統,全是概念性的說明。
    1.2、OSAL任務
    1.2.1、初始化

    因為Z-Stack是在OS下運行的,所以在之前必須調用osalAddTasks()初始化任務。
    1.2.2、組織

    關于OS的API函數介紹請看文檔:Z-Stack OSAL API (F8W-2003-0002),應該說協議棧的每層或者說每部分都有相關的API說明文檔。osalAddTasks()初始化任務,osalTaskAdd()函數添加任務,都可以到API文檔或程序中詳細分析函數功能。
    1.2.3、系統服務

    OSAL和APL系統服務是唯一的,因為比如按鍵和串口類似事件處罰就只能用唯一的一個任務標識。這兩個硬件都留給了用戶自己定義使用。
    1.2.4、應用設計

    用戶可能為每一個應用對象都創建一個任務,或者為所有的應用對象只創建一個任務。當選擇上述的設計的時候,下面是一些設計思路:
    1.2.4.1、為許多應用對象創建一個OSAL任務

    下面是正面和反面(pros & cons)的一些敘述:

    - Pro:接受一個互斥任務事件(開關按下或串口)時,動作是單一的。

    - Pro:需要堆??臻g保存一些OSAL任務結構。

    - Con:接收一個AF信息或一個AF數據確認時,動作是復雜的-----在一個用戶任務上,分支多路處理應用對象的信息事件。

    - Con:通過匹配描述符(如:自動匹配)去發現服務的處理過程更復雜-----為了適當的對ZDO_NEW_DSTADDR信息起作用,一個靜態標志必須被維持。
    1.2.4.2、為一個應用對象創建一個OSAL任務

    一對一設計的反面和正面(pros & cons)是與上面一對多設計相反的:

    - Pro:在應用對象試圖自動匹配時,僅僅一個ZDO_NEW_DSTADDR被接收。

    - Pro:已經被協議棧下層多元處理后的一個AF輸入信息或一個AF數據確認。

    - Con:需要堆??臻g保存一些OSAL任務結構。

    - Con:如果兩個或更多應用對象用同一個唯一的資源,接收一個互斥任務事件的動作就更復雜。
    1.2.5、強制方法

    任何一個OSAL任務必須用兩種方法執行:一個是初始化,另一個是處理任務事件。
    1.2.5.1、任務初始化

    在例子中調用如下函數執行任務初始化:

    “Application Name”_Init(如SAPI_Init)。該任務初始化函數應該完成如下功能:

    變量或相應應用對象特征初始化,為了使OSAL內存管理更有效,在這里應該分配永久堆棧存儲區。

    在AF層登記相應應用對象(如:afRegister())。

    登記可用的OSAL或HAL系統服務(如:RegisterForKeys())
    1.2.5.2、任務事件處理

    調用如下函數處理任務事件:

    “Application Name”_ProcessEvent (e.g. SAPI_ProcessEvent()).除了強制的事件之外,任一OSAL任務能被定義多達15個任務事件。
    1.2.6、強制事件

    一個任務事件SYS_EVENT_MSG (0x8000), 被保留必須通過OSAL任務設計。
    2.2.6.1、SYS_EVENT_MSG (0x8000)

    任務事件管理者應該處理如下的系統信息子集,下面只列出了部分信息,但是是最常用的幾個信息處理,推薦根據例子復制到自己項目中使用。
    1.2.6.1.1、AF_DATA_CONFIRM_CMD

    調用AF_DataRequest()函數數據請求成功的指示。Zsuccess確認數據請求傳輸成功,如果數據請求設置AF_ACK_REQUEST標志位,那么,只有最終目的地址成功接收后,Zsuccess確認才返回。如果如果數據請求沒有設置AF_ACK_REQUEST標志位,那么,數據請求只要成功傳輸到下跳節點就返回Zsuccess確認信息。
    1.2.6.1.2、AF_INCOMING_MSG_CMD

    AF信息輸入指示
    1.2.6.1.3、KEY_CHANGE

    鍵盤動作指示
    1.2.6.1.4、ZDO_NEW_DSTADDR

    匹配描述符請求(Match Deor Request)響應指示。(例如:自動匹配)
    1.2.6.1.5、ZDO_STATE_CHANGE

    網絡狀態改變指示
    1.3、網絡格式化

    示例應用程序編譯為協調器的在default_chanlist指定的通道上形成一個網絡,協調器將建立一個隨機編號源于自身的IEEE地址或由zdapp_config_pan_id指定的網絡PAN ID(如果zdapp_config_pan_id不為0xFFFF)。

    示例應用程序編譯為路由器或結束設備的將嘗試加入網絡在default_chanlist指定的通道上,如果zdapp_config_pan_id沒有定義為0 xFFFF ,路由器將受到限制,只有加入參數zdapp_config_pan_id規定的網絡PAN ID。
    1.3.1、自動啟動

    設備自動開始嘗試組建或加入網絡。如果設備設置為等待計時器或其他外部事件發生后才啟動,那么HOLD_AUTO_START必須被定義。為了稍后以手動啟動方式啟動設備,那么需要調用ZDApp_StartUpFromApp(函數

    1.3.2、軟件啟動

    為了在形成網絡過程中節省所需的設備類型,那么所有的路由器設備可以被通過soft_star定義作為一個協調器。如果自動啟動是需要的話,那么auto_soft_start必須被定義。
    1.3.3、網絡恢復

    通過設置NV_RESTORE和/或NV_INIT,可以讓設備斷電或者意外掉電重新啟動后重新回復網絡。
    1.3.4、加入通告

    當設備形成或加入網絡后會發通報到ZDO_STATE_CHANGE信息事件。

     

    Z-Stack4
    Sample Application
    分析(下)

    上節介紹了建立一個應用需要做的幾個必須的事情,現在就來通過分析Sample Application來具體看看需要做哪些事情,才能建立一個ZIGBEE應用功能。當然這里只是做點簡單的必須的工作。
    The Sample Application (SampleApp)
    1、介紹

    主要是介紹一個應用建立的結構及需要進行的程序流程。
    1.1、程序流程
    1.1.1、初始化

    首先需要調用初始化函數SampleApp_Init()。

    SampleApp_TaskID = task_id;

    初始化應用建立的任務ID號,其實用過OS的人都應該曉得這個是干啥的,我沒用過,不是很理解,但是我知道是必須的,就相當于一個任務的標識,這樣才能區分運行過程中不同任務中的不同事件。我是這么認為的,ID說白了就是給該任務取了各名字,就向人名字一樣,區分不同的人,就是一個代號。人名可以重復,重復了有時候叫起來就容易混淆;所以才程序中為了避免這種混淆,就強制性的規定任務ID不能重復。要是哪天國家或者聯合國姓名管理委員會規定,人民不能重復,那么這個人名就需要全球統一管理了。那給娃取個名字就要向聯合國姓名管理委員會申請了。呵呵!

    SampleApp_NwkState = DEV_INIT;

    初始化應用設備的網絡狀態。怎么說呢,據說是設備類型的改變都要產生一個事件,叫ZDO_STATE_CHANGE,從字面理解為ZDO狀態發生了改變。所以在設備初始化的時候一定要把它初始化為什么狀態都沒有。那么它就要去檢測整個環境,看是否能重新建立或者加入存在的網絡。但是有一種情況例外,就是當NV_RESTORE被設置的時候(NV_RESTORE是把信息保存在非易失存儲器中),那么當設備斷電或者某種意外重啟時,由于網絡狀態存儲在非易失存儲器中,那么此時就只需要恢復其網絡狀態,而不需要重新建立或者加入網絡了。我也是從文檔中這么理解的,至于為什么只有有待進一步考證。

    SampleApp_DstAddr.addrMode = (afAddrMode_t)AddrNotPresent;

    SampleApp_DstAddr.endPoint = 0;

    SampleApp_DstAddr.addr.shortAddr = 0;

    看見這幾句話從字面理解為:初始化不標設備地址模式及目標設備EP號和網絡地址。從代碼可以看出,這些地址或EP均為0。也就是說目標設備為協調者的ZDO,這個意義就很明顯了,就是設備建立后可以直接與協調器的ZDO交互信息。
    SampleApp_epDesc.endPoint = SAMPLEAPP_ENDPOINT;
    ----- SampleApp EP描述符的EP號
    SampleApp_epDesc.task_id = &SampleApp_TaskID;------ SampleApp EP描述符的任務ID
    SampleApp_epDesc.simpleDesc =------------------ SampleApp EP簡單描述符
    SimpleDeionFormat_t *)&SampleApp_SimpleDesc;
    SampleApp_epDesc.latencyReq = noLatencyReqs;
    //在AF層中登記注冊改應用EP
    afRegister( &SampleApp_epDesc );

    這里其實是對SampleApp的EP描述符進行初始化。

    本人理解:要對改應用進行初始化并在AF進行登記,告訴應用層有這么一個EP已經可以使用,那么下層要是有關于改應用的信息或者應用要對下層做哪些操作,就自動得到下層的配合,至于這個配合是怎么回事,那么就需要好好研究下層的協議了。當然在這里肯定是沒那時間精力和能力研究了!

    其實在這個應用中,只是讓AF配合SAMPLEAPP_PROFID / SAMPLEAPP_ENDPOINT這兩個應用。那么通過什么呢,通過發送OSAL SYS_EVENT_MSG消息中的(AF_INCOMING_MSG_CMD)事件到SampleApp任務ID。

    RegisterForKeys( SampleApp_TaskID );

    登記按鍵事件到SampleApp_TaskID,在前面已經說了按鍵這個是唯一的,也就是所有任務中有且只有各任務能登記鍵盤事件。前面還說了還有一個也是唯一,你猜是什么?

    SampleApp_Group.ID = 0x0001;

    osal_memcpy( SampleApp_Group.name, “Group1”);

    aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );

    閃燈信息被發送到組1,同樣也只有在組1的設備才能接收這個信息。設備啟動時已經被設定為組1設備了,但是可以通過按SW1推出/加入組1。這里提到了組的概念,我反正暫時不是很清楚這個是什么東西,在程序中怎么實現也很模糊,但是應用中的好處還是不難想象的,不外呼是就是想控制誰可以事先規定好,還可以動態更改。
    1.2、事件處理

    玩過OS的人都知道,OS中最重要的概念不外呼就是任務啦,消息啦,事件啦等。從我們自己平時的工作中也不難想象,如果老板安排了某項工作,那么我們就需要做的,這個工作可能是預先計劃好的,也有可能是臨時的,那么這些預先定好或者臨時的工作可以稱之為事件。而老板讓您做的方式,比如通過文件下達,或者叫:某某你把XXX做下。那么讓老板下達的文件內容或者說的內容我這里可以稱之為消息。老板給了你不同的消息那么就需要干不同的事件,至于任務可以理解為公司的不同的員工,呵呵!我簡直是理解的天才,這樣舉例居然也能忽悠通過?。。(∩_∩)o…哈哈

    在Z-Stack中,每個應用任務都通過SampleApp_ProcessEvent()函數來處理任務中的事件。一旦SampleApp_TaskID任務的某個OSAL事件發生,那么就可以通過調用SampleApp_ProcessEvent()函數來處理。在SampleApp_ProcessEvent()中有一個事件處理循環,循環檢測是哪個事件發生。
    if ( events & SYS_EVENT_MSG )
    {
    MSGpkt = (afIncomingMSGPacket_t*)osal_msg_receive( SampleApp_TaskID );
    while ( MSGpkt )
    {

    可以看到是通過檢測SYS_EVENT_MSG是否有事件信息發生。

    switch ( MSGpkt->hdr.event )

    這里是判斷SYS_EVENT_MSG事件類型,不同的SYS_EVENT_MSG類型需要不同的處理。
    case KEY_CHANGE:
    SampleApp_HandleKeys( ((keyChange_t *)MSGpkt)->state,
    ((keyChange_t *)MSGpkt)->keys );
    break;

    比如這里判斷是否是鍵盤事件,如果鍵盤事件就調用鍵盤處理函數。

    如果一個OSAL任務已經被登記組側,那么任何鍵盤事件都將接受一個KEY_CHANGE事件信息??赡苡腥缦聨追N方式得到鍵盤事件信息

    1)、HAL檢測到鍵盤按下(中斷或者查詢檢測)

    2)、HAL的OSAL任務檢測到一個鍵盤狀態改變調用回叫函數產生

    3)、OSAL鍵盤改變回叫函數發送一個OSAL系統事件信息(KEY_CHANGE)。

    case AF_DATA_CONFIRM_CMD:
    // The status is of ZStatus_t type [defined in ZComDef.h]
    // The message fields are defined in AF.h
    afDataConfirm = (afDataConfirm_t *)MSGpkt;
    sentEP = afDataConfirm->endpoint;
    sentStatus = afDataConfirm->hdr.status;
    sentTransID = afDataConfirm->transID;
    任何AF_DataRequest()數據請求函數調用后,都通過AF_DATA_CONFIRM_CMD系統事件信息回叫返回成功Zsuccess。
    case ZDO_STATE_CHANGE:
    SampleApp_NwkState = (devStates_t)(MSGpkt->hdr.status);
    if ( (SampleApp_NwkState == DEV_ZB_COORD)
    ||(SampleApp_NwkState == DEV_ROUTER)
    ||(SampleApp_NwkState == DEV_END_DEVICE) )
    {
    // Update the LCD’s network indicator
    // Start sending "the" message in a regular interval.
    osal_start_timer( SAMPLEAPP_SEND_PERIODIC_MSG_EVT,
    SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT );
    }
    break;

    這里就是前面介紹的設備狀態改變事件處理了。

    只要網絡狀態發生改變,那么通過ZDO_STATE_CHANGE事件通知所有的任務。注意:在這個例子中,一旦設備成功加入網絡,是通過定時運行的方式運行的。一旦網絡狀態為加入”JOINED”,那么它可能不需要任何的認為操作就能綁定其他設備,因為設置為自動發現并綁定的。
    // Release the memory
    osal_msg_deallocate( (uint8 *)MSGpkt );
    釋放存儲空間。
    if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT )
    {
    // Send "the" message
    SampleApp_SendPeriodicMessage();
    // Setup to send message again
    osal_start_timer( SAMPLEAPP_SEND_PERIODIC_MSG_EVT,
    SAMPLEAPP_SEND_MSG_TIMEOUT );
    // return unprocessed events
    return (events ^ SAMPLEAPP_SEND_PERIODIC_MSG_EVT);
    }
    這里檢測事件是否為周期發送信息事件。

    在SampleApp.h中定義了:

    #define SAMPLEAPP_SEND_PERIODIC_MSG_EVT 0x0001
    在這個應用中,調用了osal_start_timer()函數來定時產生發送周期信息事件。而定時器的運行是設備一旦加入網絡就不停的在運行。從上面可以看到,用函數SampleApp_SendPeriodicMessage()發送周期信息,而用函數osal_start_timer( SAMPLEAPP_SEND_PERIODIC_MSG_EVT,SAMPLEAPP_SEND_MSG_TIMEOUT )來繼續運行定時器定時發送這個周期信息。關于這個osal_start_timer可以多了解下,第一個參數SAMPLEAPP_SEND_PERIODIC_MSG_EVT四信息時間,也就是事件到了產生一個什么事件。第二各參數SAMPLEAPP_SEND_MSG_TIMEOUT是需要定時的時間,這里就是發送周期信息的時間周期。
    1.3、消息流程

    通過OSAL定時器,這個應用定時發送一個周期信息:
    void SampleApp_SendPeriodicMessage( void )
    {
    afAddrType_t dstAddr;
    dstAddr. addrMode = afAddrBroadcast;
    dstAddr.addr.shortAddr = 0xFFFF; // 廣播發送
    dstAddr. endpoint = SAMPLEAPP_ENDPOINT;
    if ( AF_DataRequest( & dstAddr, &SampleApp_epDesc,
    SAMPLEAPP_PERIODIC_CLUSTERID,
    (uint8)sampleAppPeriodicCounter++,
    (uint8 *)&sampleAppPeriodCounter,
    &SampleApp_TransID,
    AF_DISCV_ROUTE,
    AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
    {
    // Successfully requested to be sent.----發送成功處理
    }
    else
    {
    // Error occurred in request to send.---發送失敗處理
    }
    }

    在這里調用了AF_DataRequest()函數用來發送數據。關于發送數據的具體過程這里就不做深入研究,不外乎就是把數據從應用層傳到網絡層,在傳到MAC,在傳到無力層,最后通過OTA發送出去。接收數據就是相反的過程了,那么接收之后,在應用層有什么反應呢,最直觀的反應就是會發送一個AF_INCOMING_MSG_CMD消息事件。
    case AF_INCOMING_MSG_CMD:
    SampleApp_MessageMSGCB( MSGpkt );
    break;
    這里表示收到某個信息,然后在里面調用了收到信息的信息處理函數SampleApp_MessageMSGCB( MSGpkt )。
    void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
    {
    switch ( pkt->clusterId )
    {
    case SAMPLEAPP_PERIODIC_CLUSTERID:
    // Display and increment a counter on the LCD in the periodic space
    break;
    case SAMPLEAPP_FLASH_CLUSTERID:
    flashTime = BUILD_UINT16(pkt->cmd.Data[1], pkt->cmd.Data[2] );
    HalLedBlink( HAL_LED_4, 4, 50, (flashTime / 4) );
    break;
    }
    }

    這里判斷了兩種信息:

    周期信息

    閃燈信息

    不同的信息就相當于收到了不同的命令,然后根據不同的命令做出了不同的處理。是個會寫程序都明白?。。。?/span>

    到這里,我就基本上把這個應用文檔看完了,至于理解了多少我迷糊,理解正確了多少我更加迷糊,反正我按照我自己的方式理解了!

     

    Z-Stack5

    前面雖然寫了不少,但是回頭看看大多都是廢話,不過也沒辦法,沒有廢話的潤色就太枯燥了,太技術化了,這個不是我的本意。不知道前面寫的怎么樣,技術含量肯定是不高的。這個本人是相當清楚,但是我最大的期望就是錯誤不要太多!

    突然想起來前面有個問題沒有解決,我想很多人看到那里都很郁悶的。就是設備類型的選擇,在TI原裝系統上是通過板載跳線來選擇的,但是我這里不是采用原裝,那么就需要通過程序來修改其設備類型,然后編譯下載。具體程序段如下:
    #if defined ( SOFT_START )
    if ( readCoordinatorJumper() )
     zgDeviceLogicalType = ZG_DEVICETYPE_COORDINATOR;
    else
     zgDeviceLogicalType = ZG_DEVICETYPE_ROUTER;
    #endif // SOFT_START
    這里有個條件編譯,其條件編譯設置如圖5-1。
     
    圖5-1
    既然這里設置了SOFT_START,那么上段程序就要被編譯。那么第一句程序
    if ( readCoordinatorJumper() )
    就是檢測跳線,其實稍微知道編程的都了解怎么修改了,哈哈!
    屏蔽:
    if ( readCoordinatorJumper() )
      zgDeviceLogicalType = ZG_DEVICETYPE_COORDINATOR;
    else

    這3句,那么就只剩下:zgDeviceLogicalType = ZG_DEVICETYPE_ROUTER;了

    那么編譯自然該設備就為路由器了。簡單吧!?。。???!

    協調器我就不想多說怎么做了哈?。。。。。。。。。。。?/span>

    還有一個問題需要說下,就是Ti原裝的EM板子用到了LCD,所以在程序中可能在某個地方要對LCD初始化,那么如果沒有液晶的板子或者與TI那個不完全一樣的LCD就有可能運行不走,通俗的解決辦法是禁止LCD初始化等操作,Ti在這個方面做的很人性化,禁止LCD功能沒有必要在程序中找到LCD相關程序刪除,而是僅僅需要通過條件編譯來禁止。顯得相當簡單,如5-2圖就是禁止LCD的條件編譯。
     
    圖5-2

    解決這個問題后一般都能夠運行程序了。也就是說到這里如果還把Demo程序運行不起來的話,那就證明我所有的東西都白寫了,反正我到這里我的Demo程序已經運行如飛了。

    那么接下來就是來看看Z-Stack具體的一些東西了,我打算先這樣看起:

    1、Z-Stack的結構,因為打開Z-Stack的目錄可以看出還是比較復雜的,只有比較清楚了解其結構之后呢,在程序運行或者修改中才能順利的找到自己想要的部分。

    2、Z-Stack的應用建立。就是怎么在TI提供的協議(裸協議)上建立一個應用。這個層次要求就比較高了,我初步的設想是希望能分析完SAMPLE例子的應用就能自己建立,而不需要太多的去了解下層的協議。但是往往希望與現實是有偏差的,走一步算一步了。

    3、了解硬件相關設定、驅動。也就是說把例子跑通了,畢竟是基于TI的硬件,或者說基于開發系統的硬件,如果要做自己的應用,那么必須要開發自己的硬件。怎么把自己的硬件驅動加入協議,這個我想也是需要解決的問題。

    4、接下來可能就要深入分析協議了,這個目前我還不清楚從什么地方看起,因為畢竟對ZIGBEE這個協議本身就不太了解,但是在學習過程中應該會慢慢對它有認識。所以到了這一步的時候說不定我就已經摸索出一條方法了---畢竟俺是相當的聰明嘛!

    5、需要解決的問題,需要了解的東西很多,對于不太了解這個東西的我來說,不可能非常有計劃并統籌安排這些事,走彎路是必然的,但是我一致認為走彎路才是經驗的積累!

    學習Z-Stack6
    --------------Z-Stack指導

    首先來看看Z-Stack的結構。

    第一次打開工程印象最深刻的就是左邊一排文件夾,如圖6-1所示。
     
    其實這個還是很容易理解的:

    APPApplication Programming):應用層目錄,這是用戶創建各種不同工程的區域,在這個目錄中包含了應用層的內容和這個項目的主要內容,在協議棧里面一般是以操作系統的任務實現的。

    HALHardware (H/W) Abstraction Layer):硬件層目錄,包含有與硬件相關的配置和驅動及操作函數。

    MACMAC 層目錄,包含了MAC 層的參數配置文件及其MAC LIB 庫的函數接口文件。

    MTMonitor Test):實現通過串口可控各層,于各層進行直接交互。

    NWKZigBee Network Layer):網絡層目錄,含網絡層配置參數文件及網絡層庫的函數接口文件,APS層庫的函數接口

    OSALOperating System (OS) Abstraction Layer):協議棧的操作系統。

    ProfileAFApplication work)層目錄,包含AF層處理函數文件。

    Security:安全層目錄,安全層處理函數,比如加密函數等。

    Services:地址處理函數目錄,包括著地址模式的定義及地址處理函數。

    Tools:工程配置目錄,包括空間劃分及ZStack 相關配置信息。

    ZDOZigBee Device Objects):ZDO 目錄。

    ZMac MAC 層目錄,包括MAC 層參數配置及MAC LIB 庫函數回調處理函數。

    ZMain:主函數目錄,包括入口函數及硬件配置文件。

    Output:輸出文件目錄,這個EW8051 IDE 自動生成的。

    那么知道各個文件夾大概是什么功能,分布在ZIGBEE的哪一層,那么在以后的工作中無論是查詢某些功能函數還是修改某些功能函數,甚至是添加或刪除某些功能函數就能順利的找到在什么地方了,當然要想真的順利還需要花更多的時間熟悉這個協議棧了!

    了解Z-Stack結構后那么就能看看它的功能。

    不用問,這個是針對ZIGBEE無線網絡寫的協議棧,呵呵!那么就要先大概了解下ZIGBEE這個技術。我這里就不介紹理論了,就從Z-Stack實際的角度介紹些實用的概念。
    1、Zigbee網絡中的節點

    ZB網絡中,每個節點都有指定的配置參數,從而確定其設備類型,不同的設備類型,在網絡中有著不一樣網絡任務。在屬于多跳網絡的ZB網絡中,兩個節點需要完成數據傳輸,可能需要經過其他中間節點的協助,所以節點的類型參數配置是非常必要的。
    對每個節點有兩個任務:
    i)執行指定的網絡功能函數
    ii)配置確定的參數到指定的值。
    網絡功能的設置確定了該節點的類型,參數配置和指定的值確定了堆棧的模式。
    節點類型

    ZB中,設備類型分為三類:協調器,路由器和終端設備。

    6-2就是這三種設備類型組成的一個典型網絡。


    其中黑色節點為協調器
    紅色節點為路由器
    白色節點為終端設備
    那么這個就是一個典型的網狀網絡MESH。

    協調器

    協調器是一個ZB網絡的第一個開始的設備,或者是一個ZB網絡的啟動或建立網絡的設備。協調器節點選擇一個信道和網絡標志符(也叫PAN ID),然后開始建立一個網絡。協調器設備在網絡中還可以有其他作用,比如建立安全機制、網絡中的綁定的建立等等。
    注意:協調器主要的作用是建立一個網絡和配置該網絡的性質參數。一旦這些完成,該協調器就如同一個路由器,網絡中的其他操作并不依賴該協調器,因為ZB是分布式網絡。
    路由器

    一個路由器的功能有(1)作為普通設備加入網絡(2)多跳路由(3)輔助其它的子節點完成通信。

    一般來說,路由器需要一直處于工作狀態,所以需要主干線供電(區別于電池供電)。但是在某指定的網絡結構中可以采用電池供電,如串樹型網絡模式中,允許路由器周期的運行操作,所以可以采用電池供電。
    終端設備

    為了維持網絡最基本的運行,對于終端設備沒有指定的責任。也就是說,在一個基本網絡中,終端設備沒有必不可缺少性。所以它可以根據自己功能需要休眠或喚醒,因此為電池供電設備。一般來說,該設備需要的內存較少(特別是內部RAM
    堆棧模式(Stack Profile

    需要被配置為指定值的堆棧參數,連同這些值被稱為堆棧模式。這些堆棧模式參數被ZB聯盟定義指定。在同一個網絡中的設備必須符合同一個堆棧模式(同一個網絡中所有設備的堆棧模式配置參數必須一致)。

    為了互操作性,ZB聯盟為06協議棧定義了一個堆棧模式,所有的設備只要遵循該模式的參數配置,即使在不同廠商買的不同設備同樣可以形成網絡。

    如果應用開發者改變了這些參數配置,那么他的產品將不能與遵循ZB聯盟定義模式的產品組成網絡,也就是說該開發者開發的產品具有特殊性,我們稱之為關閉的網絡,也就是說它的設備只有在自己的產品中使用,不能與其他產品通信。

    該協議模式標志符在設備通信的信標傳輸中被匹配,如果不匹配,那么該設備將不能加入網絡。關閉網絡的堆棧模式有一個0ID,而06協議棧模式有一個1ID。該堆棧模式被配置在nwk_globals.h文件中的STACK_PROFILE_ID參數。如:

    #define STACK_PROFILE_ID   HOME_CONTROLS。
    2、Zigbee網絡中的地址
    地址類型

    ZB設備有兩種地址類型,一個是64IEEE地址(也可以叫MAC地址或擴展地址),一個是16位網絡地址(也可以叫邏輯地址或短地址)。

    64位地址是全球唯一的,作為設備(產品)的終生地址被分配。它通常被開發商或安裝的時候被指定。該地址由IEEE分配指定,該地址的信息和獲得該地址的方法見:http://standards.ieee.org/regauth/oui/index.shtml

    16位地址在設備加入網絡的時候被分配,由這個網絡自動分配。該地址只能用與本網絡中,標志不同的設備間傳遞信息。
    網絡地址分配

    ZB分布式網絡中地址分配是唯一的。為了不使網絡中設備混亂,為每個設備指定確定的地址是非常必要的。

    在分配地址之前,一些參數必須被設置:MAX_DEPTH, MAX_ROUTERS MAX_CHILDREN

    這些參數都是ZB協議模式的一部分,在06ZS模式中這些參數設置為: (MAX_DEPTH = 5, MAX_CHILDREN = 20, MAX_ROUTERS = 6).
    參數設置

    MAX_DEPTH決定了網絡的最大深度。協調器的深度是0,它的子設備的深度是1,他們的子設備的深度是2,依次類推。所以MAX_DEPTH參數限制了網絡物理上的長度

    MAX_CHILDREN參數決定了一個路由器(或一個協調器)能承載子設備的最大數目。

    MAX_ROUTERS參數決定了一個路由器(或一個協調器)能承載路由器的最大數目。這個參數實際上是MAX_CHILDREN參數的一個子集,剩下的(MAX_CHILDREN-MAX_ROUTERS)地址空間屬于終端設備。
    開發者自定義

    如果開發者想改變這些值,那么需要做如下幾步:

    首先得保證這些參數新的值是合法的。既然整個地址空間被限制在2-16內,那么這些參數的大小就已經有了限制。分布在release(在文件夾Projects\zstack\Tools中)的Cskip.xls文件能校驗這些參數是否合法。在鍵入這些參數的值后大概這個電子表格,如果非法,一個錯誤信息將給出。

    之后選擇合法的值,開發者需要確保不使用標準的協議棧模式,而用指定的協議棧模式代替(用NETWORK_SPECIFIC替換STACK_PROFILE_ID當前的值)。然后在“nwk_globals.h”文件中的MAX_DEPTH參數根據需要設置為適當的值。

    另外,nwk_globals.c文件中排列的CskipChldrnCskipRtrs必須被設置,這些排列是
    z-stack中的尋址

    為了在網絡中發送數據到一個設備,應用層一般用AF_DataRequest()函數。而被發送的目的設備的地址類型afAddrType_t被定義在“ZComDef.h”中:
    typedef struct
    {
    union
    {
    uint16   shortAddr;
    ZLongAddr_t extAddr;
    } addr;
    byte addrMode;
    } zAddrType_t;
    地址模式參數
    注意:除這個網絡地址之外,地址模式參數也需要被指定。目的地址模式可能是如下值之一(AF地址模式被定義在“AF.h”中):
    typedef enum
    {
     afAddrNotPresent = AddrNotPresent,
     afAddr16Bit = Addr16Bit,
     afAddrGroup = AddrGroup,
     afAddrBroadcast = AddrBroadcast
    } afAddrMode_t;

    地址模式參數是需要的,因為在ZB中,數據包能被點傳輸、多點傳輸或者廣播傳輸。點傳輸被發送到單個設備,多點傳輸一定發送到一組設備,廣播傳輸一般被發送到網絡中的所有設備。如下是更詳細的說明。
    點到傳輸 Unicast

    這是標準地址模式,被用于發送一個數據包到網絡中單個已知地址的設備。這個addrMode參數被設置為Addr16Bit,目的網絡地址在數據包中一同被發送。
    間接尋址

    數據包中的最終目的地址不識別的時候使用。該模式被AddrNotPresent設置,而且目的地址沒有被指定。代替目的地址的是:一個存儲在發送設備協議棧的綁定表格,該表格中有被綁定設備的地址。這個特性被調用是源于綁定。(看后面關于綁定部分)
    當被發送的信息包下載到協議棧時,從這個綁定表格中尋找使用的目的地址。然后該信息包被有規則的處理為點對點數據包。如果有多個(大于1)目的地址在綁定表格中被發現,那么該數據包將被拷貝成對應的份數分別發送給他們。

    (ZigBee04)版本之前,在協調器中有一個存儲綁定表格的選項。因此,發送設備發送數據包到這個協調器,然后協調器在它的綁定表格中查找最終的目的地址,對數據包進行在一次發送。該選項特性在協調器綁定被調用
    廣播傳輸

    該模式在應用層想發送一個數據包到所有網絡中的所有設備時被使用。該地址模式被AddrBroadcast被設置,目的地址被設置為下列值之一:
    NWK_BROADCAST_SHORTADDR_DEVALL (0xFFFF)-
    信息將被發送到網絡中的所有設備(包括休眠的設備)。對于休眠的設備,這個信息將被保持在它的父節點,直到該休眠設備獲得該信息或者該信息時間溢出(在f8wConfig.cfg 中的NWK_INDIRECT_MSG_TIMEOUT選項)。
    NWK_BROADCAST_SHORTADDR_DEVRXON (0xFFFD) –
    該信息將被發送到網絡中有接收器并處于IDLE(RXONWHENIDLE)狀態下的所有設備。也就是說,除了休眠模式設備的所有設備。
    NWK_BROADCAST_SHORTADDR_DEVZCZR (0xFFFC) –
    該信息被發送到所有路由器(包括協調器)。
    組地址

    該模式用于應用層想發送一個數據包到一個設備組的時候。該地址模式被afAddrGroup設置這個組標志符。

    用該特性之前,在網絡中,組不得不被定義[ZStack API文檔中的] aps_AddGroup()
    注意:組能與間接尋址一起結合使用。該目的地址在綁定表格中發現,可以作為點對點或一個組地址。也要注意廣播地址可以當作是組被提前設置,一個簡單的組尋址的特例,。
    例子代碼對于一個設備添加它自己到一個組標志符1
    aps_Group_t group;
    // Assign yourself to group 1
    group.ID = 0x0001;
    group.name[0] = 0; // This could be a human readable string
    aps_AddGroup( SAMPLEAPP_ENDPOINT, &group );
    重要設備地址

    一個應用可以能想知道它自身和父節點的地址,用下面的函數可以得到設備的地址(被定義在ZStack API文檔中):
    NLME_GetShortAddr() –
    返回該設備的 16 位網絡地址
     NLME_GetExtAddr() –
    返回該設備的64 位擴展地址.
    用下面的函數可以得到該設備的父節點的地址(被定義在ZStack API文檔中)。注意該函數在協調器中不被涉及到,但是被設備父節點代替(MAC協調器):
     NLME_GetCoordShortAddr() – returns this device’s parent’s 16 bit short address.
      NLME_GetCoordExtAddr() – returns this device’s parent’s 64 bit extended address.
    先介紹這兩個概念:節點和地址。其余的就改天繼續!

    學習Z-Stack7
    --------------Z-Stack
    指導2

    上節介紹了很大一部分Z-Stack的基礎知識,這里接著忽悠。雖然說的不是很專業也不是很通俗,但是我盡力了,希望有人能看明白!本人英文水平有限,翻譯的不好請諒解!
    3、綁定

    綁定是控制信息從一個應用層到另一個應用層流動的一種機制。在ZB06版本中,綁定機制在所有的設備中被執行。

    綁定允許應用層發送信息不需要帶目的地址,APS層確定目的地址從他的綁定表格中,然后在信息前端加上這個目的地址或組。

    注意:在ZB1.0版本中,所有綁定條目存儲在協調器中?,F在所有綁定條目存儲在發送數據的設備中。
    3.1綁定一個綁定表格

    有三種方式建立一個綁定表格:

    ZDO 綁定請求 – 一個試運轉工具能告訴這個設備制作一個綁定報告。

    ZDO 終端設備綁定請求 – 2設備能告訴協調器他們想建立綁定表格報告。該協調器將使協調并在這兩個設備上創建綁定表格條目

    設備應用 – 在設備上的應用能建立或管理一個綁定表格 。

    任何一個設備或應用能在網絡中發送一個ZDO信息到另一個設備()建立一個綁定報告。這是調用綁定幫助并且它將建立一個綁定條目為發送設備。
    3.1.1 ZDO 綁定請求

    通過調用函數ZDP_BindReq()發送一個綁定請求。第一個參數(dstAddr)是綁定的源地址的短地址。這之前應該確定允許綁定,在ZDConfig.h 文件中有參數[ZDO_BIND_UNBIND_REQUEST]允許綁定。能用同樣的參數調用函數ZDP_UnbindReq()移除綁定。

    目標設備將調用函數ZDApp_BindRsp()或 ZDApp_UnbindRsp(),反饋綁定或移除綁定的響應,返回其操作狀態為ZDP_SUCCESS, ZDP_TABLE_FULL或ZDP_NOT_SUPPORTED.
    3.1.2 ZDO 終端設備綁定請求

    該機制是用一個按鈕按下或其他類似的動作來選擇設備在指定時間內被綁定。在規定時間內,該終端設備綁定請求信息被收集到協調器,并創建一個基于模式(profile) ID 和串(cluster) ID的規定的綁定表格條目。默認的終端設備綁定超時時間(APS_DEFAULT_MAXBINDING_TIME)為16S(定義在nwk_globals.h中),但是能被改變
    發送綁定請求

    在所有的應用例子中有一個處理鍵盤事件的函數[例如在TransmitApp.c文件中的TransmitApp_HandleKeys()函數]。在該函數中,調用了函數ZDApp_SendEndDeviceBindReq()[在ZDApp.c中],它將收集應用的終端設備的所有信息并調用函數ZDP_EndDeviceBindReq() [ZDProfile.c],發送一個綁定信息到協調器?;蛘?,在SampleLight 和 SampleSwitch例子中,直接調用ZDP_EndDeviceBindReq()函數就實現點亮/關閉燈的功能。
    接收綁定請求

    協調器將接收[ZDP_IncomingData() 在 ZDProfile.c]這些信息并分析處理[ZDO_ProcessEndDeviceBindReq() 在 ZDObject.c]這些信息并調用函數ZDApp_EndDeviceBindReqCB() [in ZDApp.c],它將調用ZDO_MatchEndDeviceBind() [ZDObject.c]處理這個請求

    當協調器接收到2個匹配終端色后備的綁定請求時,它將啟動在綁定設備上創建源綁定條目的處理過程。該協調器有如下處理過程:
    解除綁定

    1. 發送一個ZDO解除綁定請求到第一個設備。終端設備綁定切換處理,所以解除綁定首先被發送到移除一個存在的綁定條目。

    2. 等待ZDO解除綁定響應,如果響應狀態為ZDP_NO_ENTRY, 發送一個ZDO綁定請求,在源設備上制作一個綁定條目 。如果該響應為ZDP_SUCCESS, 為第一個設備繼續到move on to the cluster ID for the first device (the unbind removed the entry – toggle).

    3. 等待ZDO綁定響應. When received, move on to the next cluster ID for the first device.

    4. 當第一個設備完成時,對第二個設備做同樣的處理。

    5. 當第二個設備完成時,發送ZDO 終端設備綁定響應信息到第一個和第二個設備
    3.1.3設備應用綁定管理

    在設備上其他進入綁定條目的方式是應用層管理綁定表格。

    意思是說,應用層將調用下列函數進入和移除綁定表格條目:
    bindAddEntry() –增加綁定表格條目
    bindRemoveEntry() – 從綁定表格中移除條目
    bindRemoveClusterIdFromList() – 從一個存在的綁定表格項目中移除一個串 ID 。
    bindAddClusterIdToList()——向一個已經存在的綁定記錄中增加一個群ID
    bindRemoveDev()——刪除所有地址引用的記錄
    bindRemoveSrcDev()——刪除所有源地址引用的記錄
    bindUpdateAddr()——將記錄更新為另一個地址
    bindFindExisting()——查找一個綁定表記錄
    bindIsClusterIdInList()——在表記錄中檢查一個已經存在的群ID
    bindNumBoundTo()——擁有相同地址(源或者目的)的記錄的個數
    bindNumEntries()——表中記錄的個數
    bindCapacity()——最多允許的記錄個數
    bindWriteNV()——在NV中更新表
    3.2 配置源綁定

    允許綁定源的編譯選項REFLECTOR在f8wConfig.cfg文件中。在文件f8wConfig.cfg,中查看這兩個綁定配置參數(NWK_MAX_BINDING_ENTRIES & MAX_BINDING_CLUSTER_IDS)。NWK_MAX_BINDING_ENTRIES綁定表格中最大的綁定實體數量參數;MAX_BINDING_CLUSTER_IDS 是在每個綁定實體中最大的串ID數量。

    綁定表在靜態RAM中(未分配),因此綁定表中記錄的個數,每條記錄中群ID的個數都實際影響著使用RAM的數量。每一條綁定記錄是8字節多(MAX_BINDING_CLUSTER_IDS * 2字節)。除了綁定表使用的靜態RAM的數量,綁定配置項目也影響地址管理器中的記錄的個數。
    4、路由
    4.1 預覽

    在MESH網絡中,為了使分布的節點間能夠很好的通信,路由是非常重要的一個環節。

    在應用層上路由是完全透明的。一個簡單的應用數據發送到任意設備,下至協議棧,協議棧將負責發現一個路由路線。這個方式,應用層是不知道該操作在多跳網絡中完成的事實。

    路由使ZB網絡具有“自動復原”的特性。如果一個無線連接斷了,路由功能將自動的發現一個新的路由路線,該路線是避開(繞過)壞了的那個連接節點。這就提高了無線網絡的可靠性,這也是ZB關鍵特點之一。
    4.2 路由協議

    ZB執行的路由協議是基于AODV(Ad hoc On demand Distance Vector)的路由協議。作為一個簡單的應用---傳感器網絡,ZB路由協議支持環境中的移動節點,連接失敗和丟包功能。

    當一個路由器接收到一個點對點信息包時,從他的應用或者從其他設備,NWK層將繼續向前依照下面的進程。如果目的是路由器鄰節點(包括它的子設備)之一,該信息包將直接傳輸到目的設備。另外的就是,路由器將檢查它的路由表格,檢查相應的信息包目的條目。如果在路由表格中有一個活躍的路由路線到該目的設備,那么該信息包將被轉播到下一跳節點地址存儲依照路由條目。如果沒有活躍的條目發現,那么一個路由發現被啟動并且該信息被緩存直到該過程完成。
    ZB終端設備路由

    ZB終端設備不能執行任何路由功能。一個終端設備想發送一個信息包到任何設備都要向前到它的父設備,然后在由其父設備進行路由操作。類似的,任何設備想發送信息包到終端設備,都將發起一個路由發現操作,當然該操作都由終端設備的父設備響應。

    注意:ZB地址分配方案使基于它的地址發起一個路由到任何目的成為可能。在Z-Sstack,這個機制被用于萬一正規的路由程序不能被啟動,作為一個自動退卻(一般情況是由于路由表格空間不夠)。
    z-stack路由

    在z-stack,執行的路由是已經被優化的路由存儲表格。一般情況,對于每一個目的設備路由表格條目是需要的。但是通過綜合攜帶父節點所有條目的特定父節點的終端設備的所有條目,沒有任何功能丟失的存儲已經被優化。

    ZB路由器,包括協調器,執行如下路由功能 (i)路由發現和選擇 (ii) 路由維護(iii)
    4.2.1路由發現和選擇

    路由發現是網絡設備協作發現和建立路由的一個過程。一個路由操作總是針對某個目的,通過任何一個路由器啟動。該路由發現機制在源設備和目的設備間搜尋所有可能的路由并試圖選擇最好的路由路線。
    ? 路由選擇通過選擇最小消耗的路由路線。每個設備在連接到鄰節點幾乎保持不變的“連接消耗”。該連接消耗是接收信號的強度的一個典型功能。沿著路由路線加起所有的連接消耗,就是整個路由的“連接消耗”。路由算法試圖選擇這個路由最小的“路由消耗”。
    路由請求

    路由通過請求/響應信息包被發現。一個源設備為了一個目的地址,通過發送一個廣播路由請求(RREQ)信息到它的鄰設備請求一個路由。當一個節點接收到一個RREQ信息時,它將依次轉播這個RREQ信息。但是在做這個之前,它更新RREQ信息的消耗域,通過增加連接消耗為了最后的連接。這樣,RREQ信息將攜帶向前傳輸的所有的連接消耗。這個重復過程直到RREQ到達這個目的設備。RREQ的一些復制可能經過不同的路徑重復到達目的設備。該目的設備選擇最好的RREQ信息并發送一個路由答復(RREP)返回到源設備。
    路由響應

    RREP是沿著唯一的相反的路徑返回到最初的請求節點。

    作為RREP信息傳播回源節點,中間的節點更新他們的路由表格,指出路由路線到目的設備。

    一旦一個路由被創建,數據包能被發送。當一個節點丟失到它下一個節點的連通性時(發送數據包時,它不能接收一個MAC應答ACK),這個節點通過發送一個RERR到所有潛在的接收它RREP的節點,使該路由無效。在接收一個RREQ,RREP或RERR之上,這些節點都將更新他們的路由表格
    4.2.2路由維護

    MESH網絡提供路由維護和自動修復。中間節點保持沿著連接傳輸失效的路徑。如故一個連接被確定壞了,逆流的節點將啟動路由修復那些連接的所有路由路線。這些工作通過啟動路由重新發送被做,為了路由下一次數據包接收。如果路由重新發現不能啟動,或者由于某些原因失敗了,一個路由錯誤(RERR)信息被發送到這個數據包的源設備,然后重新啟動新的路由發現。任意方式都使得該路由得到重新自動建立。
    4.2.3路由終結

    為了建立路由,路由表格條目要被維護。如果一段時間沒有數據包沿著路由路線發送,該路由將被做終結記號。終止路由不是刪除直到空間需要時。因此沒有被刪除直到它完全需要時。自動路由終結時間能被配置“在f8wconfig.cfg"文件中”。設置ROUTE_EXPIRY_TIME參數為終結時間(秒)。設置0為了關閉路由終結。
    4.3 表格存儲

    路由功能需要路由器維護一些表格:

    路由表格

    路由發現表格
    4.3.1路由表格

    每一個路由器包括協調器都包含一個路由表。設備在路由表中保存數據包參與路由所需的信息。每一條路由表記錄都包含有目的地址,下一級節點和連接狀態。所有的數據包都通過相鄰的一級節點發送到目的地址。同樣,為了回收路由表空間,可以終止路由表中的那些已經無用的路徑記錄。

    路由表的容量表明一個設備路由表擁有一個自由路由表記錄或者說它已經有一個與目標地址相關的路由表記錄。在文件“f8wConfig.cfg”文件中配置路由表的大小。將MAX_RTG_ENTRIES設置為表的大小(不能小于4)。
    4.3.2路由發現表格

    路由器設備致力于路徑發現,保持維護路徑發現表。這個表用來保存路徑發現過程中的臨時信息。這些記錄只在路徑發現操作期間存在。一旦某個記錄到期,則它可以被另一個路徑發現使用。這個值決定了在一個網絡中,可以同時并發執行的路徑發現的最大個數。這個可以在f8wConfig.cfg文件中配置MAX_ RREQ_ENTRIES。
    4.4、路徑設置快速參考

    設置路由表大小MAX_RTG_ENTRIES,這個值不能小于4 (f8wConfig.cfg文件)
    設置路徑期滿時間ROUTE_EXPIRY_TIME,單位秒。設置為零則關閉路徑期滿(f8wConfig.cfg文件)

    設置路徑發現表大小 MAX_RREQ_ENTRIES,網絡中可以同時執行的路徑發現操作的個數

     

     

     

    學習ZStack8

    近段時間比較忙,幾乎都快荒廢了Z-Stack的學習了,把以前學的都快忘記了,這就是非專業技術的痛苦?。?!學習剛好有點眉目,突然意外中斷停下,當再一次學習的時候突然發現:以前學的都忘了8成了!郁悶??!今天真不知道從什么地方下手學習了,所以就針對最近客戶比較關心的問題做點介紹,這樣有針對性、有目的性的學習可能最適合現在的我了,不然從頭把以前那些所謂的筆記看一遍,可能今天晚上又沒了,指不定明晚以及后晚以及后后晚…都沒時間,不然老是看以前的筆記沒有進展就麻煩了!呵呵!

    今天只解決1個問題:TI提供的例子程序的表演及功能介紹。

    因為最近問這些的客戶比較多,特別又是剛入手的朋友,對Z-Stack非常迷糊的時期,如果能夠跑通幾個例子、看幾個演示,那么可以大大提高學習興趣;另外如果知道某個例子的大致功能及實現,那么在去看具體實現過程目的性就非常明確。
    首先來看看TI究竟有哪些例子:
     
    可以看出其例子是非常豐富的。
    GenericApp,Location,SampleApp,SimpleApp,HomeAutomation,SerialApp,Transmit,
    ZLOAD。這樣看來還是不少的。其中SampleApp例子已經在前面的學習中有所涉及,可以說前面的所有學習都是基于這個例子的,所以這里就不測試它了。Location是定位的測試例子,這里我的硬件是不夠的,所以也不做測試。其他我都做點測試,能成功的就成功,不能成功的就失敗,這個我也沒辦法,呵呵?。。。。。。?!
    1、GenericApp

    工程打開等我就不多說了,自己去找,如果連這些我都還說,那么我以前的東西是白學了。硬件連接中

    當我用兩個節點分別燒寫入DB的協調器和路由器,從我的經驗看來,他們分別能建立網絡和加入網絡,但是從表象上幾乎看不見數傳現象,盡管我按了每個節點的按鍵,也僅僅是本節點的LED在改變。唯獨有點數傳感覺的是:按鍵右鍵對方有反應就是了,至于具體什么反映我覺得沒必要說明白,大家試試就知道了。

    所以還決定看看程序來判斷這個例子的功能。

    大約瀏覽了下,這個例子似乎還與設備的綁定有關系,因為在按建處理程序中發現:
    if ( keys & HAL_KEY_SW_2 )
        {
          HalLedSet ( HAL_LED_4, HAL_LED_MODE_OFF );

          // Initiate an End Device Bind Request for the mandatory endpoint
          dstAddr.addrMode = Addr16Bit;
          dstAddr.addr.shortAddr = 0x0000; // Coordinator
          ZDP_EndDeviceBindReq( &dstAddr, NLME_GetShortAddr(),
                                GenericApp_epDesc.endPoint,
                                GENERICAPP_PROFID,
                                GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList,
                                GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList,
                                FALSE );
    }
    很明顯這里按鍵2(右鍵)是發送綁定請求的命令。
    if ( keys & HAL_KEY_SW_4 )
        {
          HalLedSet ( HAL_LED_4, HAL_LED_MODE_OFF );

          // Initiate a Match Deion Request (Service Discovery)
          dstAddr.addrMode = AddrBroadcast;
          dstAddr.addr.shortAddr = NWK_BROADCAST_SHORTADDR;
          ZDP_MatchDescReq( &dstAddr, NWK_BROADCAST_SHORTADDR,
                            GENERICAPP_PROFID,
                            GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList,
                            GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList,
                            FALSE );
        }
    顯然按鍵4(左)是初始化一個匹配描述符請求,也就是發現服務,或者叫自動尋求匹配設備。
    這就不怪我按鍵有反映了!
    而且在發送數據和接收數據處理函數發現:
    void GenericApp_SendTheMessage( void )
    {
      char theMessageData[] = "Hello World";

      if ( AF_DataRequest( &GenericApp_DstAddr, &GenericApp_epDesc,
                           GENERICAPP_CLUSTERID,
                           (byte)osal_strlen( theMessageData ) + 1,
                           (byte *)&theMessageData,
                           &GenericApp_TransID,
                           AF_DISCV_ROUTE, AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
      {
        // Successfully requested to be sent.
      }
      else
      {
        // Error occurred in request to send.
      }
    }
    居然發送的是一個字符串“Hello World”。
    void GenericApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
    {
      switch ( pkt->clusterId )
      {
        case GENERICAPP_CLUSTERID:
          // "the" message
    #if defined( LCD_SUPPORTED )
          HalLcdWriteScreen( (char*)pkt->cmd.Data, "rcvd" );
    #elif defined( WIN32 )
          WPRINTSTR( pkt->cmd.Data );
    #endif
          break;
      }
    }
    接收數據處理函數里居然要通過液晶顯示,本人這里的液晶暫時沒有移植過來,因為暫時還不具備那個實力,怪不得看不到發送數據的狀況!
    這里本人就自作聰明的把以前SampleApp例子里面的一句話加過來了:
    void GenericApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
    {
      switch ( pkt->clusterId )
      {
        case GENERICAPP_CLUSTERID:
          // "the" message
          HalLedBlink( HAL_LED_4, 4, 50, (500) );
    #if defined( LCD_SUPPORTED )
          HalLcdWriteScreen( (char*)pkt->cmd.Data, "rcvd" );
    #elif defined( WIN32 )
          WPRINTSTR( pkt->cmd.Data );
    #endif
          break;
      }
    }
    麼想到啊,這么一加居然就有反應了,o(∩_∩)o…!我不愧是天才的接班人?。?/span>
    其實這里很簡單的了,就是接收到數據后閃爍4下燈,間隔0.5S。因為從:
    if ( events & GENERICAPP_SEND_MSG_EVT )
      {
        // Send "the" message
        GenericApp_SendTheMessage();
        // Setup to send message again
        osal_start_timerEx( GenericApp_TaskID,
                            GENERICAPP_SEND_MSG_EVT,
                            GENERICAPP_SEND_MSG_TIMEOUT );
        // return unprocessed events
        return (events ^ GENERICAPP_SEND_MSG_EVT);
      }
    這里可以看出,這個例子很明顯僅僅是個發送周期信息的例子。所以LED4就周期性的閃爍4下,當然是協調器發送,路由器閃爍,路由器發送,協調器閃爍。
    但是這例子里體現了綁定的概念,應該說是從基本功能上很齊全的一個例子,而且在ZSTACK上實現無線網絡數傳,沒有任何多余的功能。所以該例子是一個典型的ZSTACK模板,也就是為用戶提供了一個通用模板可以通過這個建立自己的應用。關于如何在這個例子上建立、修改成自己的工程和應用項目詳細見文檔:
    Create New Application For The CC2430DB_F8W-2005-0033_.pdf
    這個例子就到此結束了,否則不然就很難把下面的弄玩了!
    2、SimpleApp
    這個例子我基本跑通了,可是鑒于時間的關系,沒有來得及打字了,所以就留到下一次了,時間真是如流水啊-------------------快!

     

     

    學習Z-Stack9


    接到昨天的繼續忽悠,話說:
    2、SimpleApp
    “這個例子我基本跑通了,可是鑒于時間的關系,沒有來得及打字了,所以就留到下一次了,時間真是如流水啊-------------------快!….”
    這個例子里面有兩個演示:一個是燈與開關的控制實驗,一個溫度傳感器實驗。咱一個個來,不忙。
    燈與開關實驗

    在這個例子中燈對應的工程名字為:SimpleControllerDB;開關對應:SimpleSwitchDB。嚴重需要注意的地方,這里選用的是DB。因為從從零開始學習Z-Stack之1上可以看到DB與EB的區別,而這里用DB的硬件就足以應付。
    編譯下載我就不繼續羅嗦了。

    咱關心的幾個問題不外乎就是表演過程和表演結果,以及初步看看為什么會有這樣的結果產生,當然就得從程序上簡單了解下。

    首先打開Controller(也就是燈設備)的電源,那么LED2就會不停的閃爍,這個時候是設備正在初始化,讓您選擇設備以哪種類型啟動,從程序可以看出:
       if ( keys & HAL_KEY_SW_1 )
        {
          if ( myAppState == APP_INIT  )
          {
            // In the init state, keys are used to indicate the logical mode.
            // Key 1 starts device as a coordinator
            zb_ReadConfiguration( ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType );
            if ( logicalType != ZG_DEVICETYPE_ENDDEVICE )
            {
              logicalType = ZG_DEVICETYPE_COORDINATOR;
              zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
            }

            // Do more configuration if necessary and then restart device with auto-start bit set
            // write endpoint to simple desc...dont pass it in start req..then reset
            zb_ReadConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            startOptions = ZCD_STARTOPT_AUTO_START;
            zb_WriteConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            zb_SystemReset();
          }
    如果按下S1(UP),那么作為協調器啟動。
       if ( keys & HAL_KEY_SW_2 )
        {
          if ( myAppState == APP_INIT )
          {
            // In the init state, keys are used to indicate the logical mode.
            // Key 2 starts device as a router
            zb_ReadConfiguration( ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType );
            if ( logicalType != ZG_DEVICETYPE_ENDDEVICE )
            {
              logicalType = ZG_DEVICETYPE_ROUTER;
              zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
            }
            zb_ReadConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            startOptions = ZCD_STARTOPT_AUTO_START;
            zb_WriteConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            zb_SystemReset();
          }
    如果按下S2(RIGHT),設備作為路由器啟動。

    這里由于是第一個啟動的設備,所以作為協調器啟動,就按下UP,此時燈會有狀態變化,最終結果是:LED2常亮,標示建立網絡成功。如果您還有另外的燈設備就可以按下RIGHT讓他們都作為路由器啟動,由于本人這里只有兩個節點,所以就只能有個協調器。

    現在就來啟動開關設備的電源,同樣LED2會閃爍讓您選擇設備,但是在ZIGBEE中除了協調器和路由器就剩下終端設備了,所以開關就只能作為終端被啟動,但是也需要通過按鍵來控制,從程序中可以看出:
    if ( keys & HAL_KEY_SW_1 )
        {
          if ( myAppState == APP_INIT )
          {
            // In the init state, keys are used to indicate the logical mode.
            // The Switch device is always an end-device
           logicalType = ZG_DEVICETYPE_ENDDEVICE;
            zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
            // Do more configuration if necessary and then restart device with auto-start bit set
            zb_ReadConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            startOptions = ZCD_STARTOPT_AUTO_START;
            zb_WriteConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            zb_SystemReset();
          }
          else
          {
            // Initiate a binding with null destination
            zb_BindDevice(TRUE, TOGGLE_LIGHT_CMD_ID, NULL);
          }
        }
        if ( keys & HAL_KEY_SW_2 )
        {
          if ( myAppState == APP_INIT )
          {
            // In the init state, keys are used to indicate the logical mode.
            // The Switch device is always an end-device
            logicalType = ZG_DEVICETYPE_ENDDEVICE;
            zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
            zb_ReadConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            startOptions = ZCD_STARTOPT_AUTO_START;
            zb_WriteConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
            zb_SystemReset();
          }
          else
          {
            // Send the command to toggle light
            zb_SendDataRequest( 0xFFFE, TOGGLE_LIGHT_CMD_ID, 0,
                            (uint8 *)NULL, myAppSeqNumber, 0, 0 );
          }
        }

    無論是按下S1還是S2(UP或者RIGHT),開關設備均作為終端設備啟動。
    啟動之后呢,燈的狀態同樣會發生一些變化,最終結果是:LED2快速閃爍,表明此時開關已經成功加入剛才燈設備建立的那個網絡了。

    那么接下來就要看這個例子的核心部分----------綁定!

    首先按下燈設備(這里為協調器,如果有路由器也可以)的UP,那么程序中調用了:
            zb_AllowBind( myAllowBindTimeout );

    函數,允許綁定,這個允許的時間據說只有10S,當然這個時間是可以調整的,因為這里的參數為:static uint8 myAllowBindTimeout = 10;至于這個時間怎么計算的就需要到某個函數zb_AllowBind里去分析了。zb_AllowBind規定這個參數為1~64,如果為0,表示為假,就是不允許綁定的意思。如果大于64的話,就一直為真,就是一直都允許綁定。好像似乎是這個意思。至于這個10S是怎么制定的呢,在這個函數內部調用了:
    osal_start_timerEx(sapi_TaskID, ZB_ALLOW_BIND_TIMER, timeout*1000);
    因為osal_start_timerEx定時函數最小單位為mS,所以*1000就表示S了。
    而在SAPI_ProcessEvent事件處理函數中ZB_ALLOW_BIND_TIMER事件處理如下:
      if ( events & ZB_ALLOW_BIND_TIMER )
      {
        afSetMatch(sapi_epDesc.simpleDesc->EndPoint, FALSE);
        return (events ^ ZB_ALLOW_BIND_TIMER);
      }

    也就是定時取消綁定狀態?。?!

    如果有人看著這些看不明白,那就把這個例子多看幾遍,多跑幾遍。一般如果您每天花費4個小時看這個例子,那么只需要一周事件,我想到時比我還精通明白的!

    所以在10S之內,開關必須發起綁定,此時同樣按下開關設備的UP,那么開關設備就調用了函數:zb_BindDevice(TRUE, TOGGLE_LIGHT_CMD_ID, NULL);發送一個綁定請求去尋求綁定設備。

    一個設備允許綁定,一個設備發起綁定請求,兩個是您情我愿的,所以就一拍即合,相當的登對!當然沒有這么簡單的哈,就如同兩個人談戀愛,至少也需要是一男一女啊,兩個都是男或女那就太不正常了,ZIGBEE是個國際化的標準,當然不能有這種變態行為,所以也需要兩個命令的屬性是相反的,就例如這里的控制燈開關的命令,對于燈來說這個命令為輸入,而對于開關來說這個命令是輸出。所以一入一出剛好就登對。呵呵!!
    綁定成功的表象是:開關設備的LED1快速閃爍。
    void zb_AllowBindConfirm( uint16 source )
    {
      // Flash LED
      HalLedSet( HAL_LED_1, HAL_LED_MODE_BLINK );
    }
    綁定成功了就可以發送燈控制命令了。按下RIGHT,調用了函數:
    zb_SendDataRequest( 0xFFFE, TOGGLE_LIGHT_CMD_ID, 0,
                            (uint8 *)NULL, myAppSeqNumber, 0, 0 );
    可以看出發送了一個數據請求,顯然是廣播發送的,而命令為切換燈狀態的TOGGLE_LIGHT_CMD_ID。當燈收到這命令,就有處理函數了:
    void zb_ReceiveDataIndication( uint16 source, uint16 command, uint16 len, uint8 *pData  )
    {
      if (command == TOGGLE_LIGHT_CMD_ID)
      {
        // Received application command to toggle the LED
        HalLedSet(HAL_LED_1, HAL_LED_MODE_TOGGLE);
      }
    }
    所以LED1顯示狀態發生改變。
    此時這個例子已經接近尾聲了,因為綁定成功開關能夠控制燈了,但是既然可以綁定那么也可以接觸綁定的,如果按下開關的DOWN,那么同樣調用了發送綁定請求函數:
    zb_BindDevice(FALSE, TOGGLE_LIGHT_CMD_ID, NULL);
    只是這里第一個參數為FALSE,所以就能解除綁定。如果某個開關被解除了綁定,那么此時就不能控制燈了。
    在這個例子最后做個小結------綁定的好處。
    綁定了之后,發送數據或者命令,就不需要設備的地址,因為這個命令只能在建立綁定間的設備中傳輸。------------絕對是我的理解!

    還有,一個開關可以綁定多個燈,同樣,一個燈可以同時與多個開關發生綁定。這個不代表本人觀點,本人強力反對腳踏N只船?。。。。。?/span>

    現在來簡單分析下傳感器的例子,由于前面燈的例子說的比較多,這里我就說少點。

    中心節點對應SimpleCollectorEB ,傳感器節點對應SimpleSensorEB。這里用到了EB,主要是因為DB沒有串口硬件,而EB有,這個例子需要用到串口。
    傳感器的例子效果是:協調器可以收集傳感器節點的溫度信息并通過串口傳輸到PC機,如下圖所示:
     
    可以看到能夠看到節點的溫度和電源電壓。
    具體實現與燈的例子稍區別,但是本質的原理是一樣的,先選擇設備類型,然后建立綁定,最后收集信息。這里建立綁定的區別在于,只要中心節點允許綁定(與前面操作一樣),然后傳感器節點是自動發送綁定請求的:
      osal_start_timerEx( sapi_TaskID, MY_FIND_COLLECTOR_EVT, myBindRetryDelay );
    定時去產生發MY_FIND_COLLECTOR_EVT事件:
    if ( event & MY_FIND_COLLECTOR_EVT )
      {
        // Find and bind to a collector device
        zb_BindDevice( TRUE, SENSOR_REPORT_CMD_ID, (uint8 *)NULL );
      }
    這個事件就是發送綁定請求的。
    至于綁定后的現象與前面一樣了。
    最后通過串口調試工具就能看到前面那個圖的效果了?。。。。。。。。。。。?!
    這里的溫度為42,這個肯定不可能的,不然我就被蒸發掉了哈!因為采用的是芯片內部集成的溫度傳感器,這個傳感器做實驗還可以,因為可以看見溫度的變化,但是其準確性是在不敢恭維。TI也是的,做了溫度傳感器,還超級不準確,還不如不做,只有還可以降低硬件成本,幾乎沒有任何使用價值?。?!

     

     

     

     

     

     

     

     

     

     

     

     

     

     


    東莞市德峰智能科技有限公司 版權所有 @ Copyright 2013 【百度統計】 【網站管理
    服務熱線:0769-87507060 地址:東莞市塘廈鎮環市西路258號信達商務大廈B502 訪問量: [網站地圖] [sitemap]
    *本站相關網頁素材及相關資源均來源互聯網,如有侵權請速告知,我們將會在24小時內刪除 技術支持:東莞網站建設粵ICP備2022123063號
    關鍵詞:藍牙耳機、防水電視 、教學會議一體機、氮化鎵電源、PD快充電源?
    久久亚洲第一区,又硬又粗又爽的视频,国产区二区三区在线观看,国产香蕉美片在线观看,三级乱淫狂欲爱慈禧,成人午夜免费观看,97久久久久人妻碰碰碰碰,一区二区三区国产av毛片,欧美国产一级二级三级,最新2019中文字幕第一页视频
    久久久久国产午夜 国产日本欧美三级在线 www.国产成人av在线播放 九九视频精品免费精品 国产全部视频在线观看地址 精品一区三区成人 老女人牲交视频大全 久久九九免费精品一区二区三区 日韩在线播放一区二区三区 日本在线观看1 国产精品高清三级 一个人电影在线看 一个人看的www片在线高清 一个人看的www片在线高清 欧美激情精品久久久久久小说 移动29元孝心卡 中文字幕在线观看永久免费 国产精品成人一区二区网站软件 人妻熟女一区二区在线视频 大香蕉精品视频免费 人妻的诱惑波多野结衣 极品色影院国产 久久亚洲第一区 日韩欧美性一区二区三区 亚洲欧美精品久久久久久久不卡 美女视频黄是免费视频 久久久久久久特黄毛片免费看 亚洲av日韩aⅴ欧美av国内 91日韩欧美一级 午夜高清国产拍精品福利 国产精品丝袜久久久久久igao 亚洲影院成人在线 久久九九免费精品一区二区三区 国产午夜在线视频不卡 久久精品国产99精品女同 99re在线视频观看免费 女性乳头真人视频 最新亚洲av免费在线观看 中文字幕亚洲欧美日韩专区 日本在线观看1 免费黄国产视频 青青草视频网在线观看 欧美成人综合色区小说 久久一本热色99国产 猫咪色av在线香蕉国产 18美女视频黄是免费 亚洲成av人在线免费观看 给我免费黄片高清在线观看 啦啦啦在线免费看视频 免费无遮挡黄h漫画在线观看 超碰精品99久久久久久宅男av 久久综合精品免费视频 亚洲激情视频一区二区三区 黄色不卡视频免费看 亚洲精品中文字幕三区 欧美色黄网站 鲁大师av免费高清在线观看视频 午夜福利片最新在线观看 av 在线 蜜桃 在线看片 52dy.me 国产伦理电影一区二区三区 伊人久久成人av 三浦理惠子中文字幕在线看 欧美性猛少妇色xxxx猛叫 看看美女的奶头 毛片a级毛片免费看 欧美成人综合色区小说 午夜福利在线不卡 欧美人与性动交a欧美人 久久就是精品 av天堂2014手机在线 av成人不卡在线 十八女人毛片在线看 美女视频黄是免费视频 99热这里只有精品国产在线 在线观看一区二区欧美日韩 亚洲 欧美激情 一区 二区 精品久久久大香蕉 国产96在线av中文 亚洲国产精品成人久久久久久 麻豆午夜福利电影网 精品视频午夜福利 国产麻豆乱视频av 午夜精品福利小视频 久精品在线观看 少妇裸体淫交视频免费看 国产免费的又黄又爽又色视频 国产亚洲欧美日韩综合一区 日韩高清av影视大全 永久免费视频成人福利 久久综合中文字幕一区二区三区 18女人小正毛片 日本一区二区视频在线看 麻豆国产视频av免费 亚洲自拍自偷 越南xxxxx性视频 男人j进入女人p无遮挡 国产一级二级三级精品一级在线 中文官网天堂在线看 a级毛片免费观看的网站 久久成人精品在线视频 中文字幕久久激情亚洲精品 国产av免费. 久久精品久久精品久久精品久久 精品人妻一区二区三区在 福利 午夜99 欧美国产日韩精品一区二区三区 精华cemoy 精品久久久大香蕉 欧美黄色小说网站在线观看 精品欧美aⅴ一区二区三区在线看 99精品国产三级在线观看 www.色国产精品 亚洲黄片av在线免费观看 男人和女人黄色 最近av中文字幕2019免费版 小说区视频区图片区 av一区二区人妻 www.中文字幕有码 精品国产老女人 秋霞精品欧洲亚洲大片在线视频 18女人小正毛片 国产精品福利影视 成人精品资源在线观看 一个人在线观看免费高清视频www 大香蕉eedd8899.com 欧美一级高清精品电影 福利一区二区久久 69精品久久久久人妻 终极教师高清免费观看全集 亚洲日本欧洲色噜噜粉嫩av 国产午夜精品视频一区 亚洲av二区三区 久久国产精品人妻aⅴ麻豆网址 又硬又粗又爽的视频 亚洲人精品av 99全黄视频 欧美黄色小说网站在线观看 爱看色黄色大片网站 国产老熟女老太aⅴ在线 欧美激情在线精品一 婷婷亚洲综合网 内射少妇19p 精品国产乱码久久久妇女最新章节 琪琪影院一区二区 成a人片在线观看网址 性天堂字幕网 久久国产婷婷精品 亚洲人精品av 欧美人与动交精品 牲刺激久久久久久久久免费看 美女双飞高潮直喷水在线播放 国产日本欧美三级在线 青青草原在线一二区 午夜精品一区二区三区视频 成人性生交大片免费网站 在线观看国产内射自拍 男人的天堂国产av 别揉我奶头嗯~啊视频 九一香蕉在线观看 国产精品国产自产拍高清av 一级a级毛片免费观看 人妻少妇偷人精品av 色哟哟在线观看精品一区 色欧美在线视频 全国最大成人网久久 国产乱x入x对白视频 精品99免费视频 欧美国产精品一区 国产 欧美 一区 日韩 69网页黄色免费国产视频 婷婷99精品国产97久久综合 久久精品久久精品久久精品久久 久久热精品. 日韩高潮喷水在线观看 国国产精品免费 av爱爱一区av 白嫩少妇视频在线 国产美女久久久久久久99 黄山网站在线观看 亚洲最大av色 国产老熟女老太aⅴ在线 亚洲 欧美激情 一区 二区 欧美一区二精品 一本色道久久88精品综合 国产亚洲精品xxxx 久久综合精品免费视频 欧美精品日韩一区二区三区 亚洲伦视频在线观看 琪琪影院一区二区 久久zyz中文字幕 在线性感美女视频 国产在线播放一区二区三区 久久综合狼人社区 日本高清一区二区三区在线 熟女av视频网站 男人搞女人视频免费 亚洲日本欧美精品视频 日韩亚洲国产欧美精品 东京热av男人天堂 欧美性av在线 亚洲乱码中文字幕精品久久 不卡的高清av 国产av乱xxx 粗大的内捧猛烈进出爽av 在线观看av永久免费 久久精品中文 日本性感黄片 日韩国产欧美在线免费 久久精品国产蜜臀av 蜜桃午夜精品视频 亚洲欧美v日韩色国产v 国产乱x入x对白视频 国内精品在线免费视频 超级教师在线观看全集 国产麻豆剧传媒精品国产av蜜桃 国产久久久久毛片 久久久久国产午夜 有夫之妇日本伦理 色哟哟精品久久 国内精品视频一区二区三区在线免费观看 亚洲欧美 国产 男人喜欢女生高潮 国产久色视频在线 黄色不卡视频免费看 亚洲看av片在线 大片视频观看免费 久久热精品. 美女视频在线看 亚洲一级av片免费在线观看 那种网站在线观看 久久日日摸夜夜摸夜夜五月天 亚洲欧美激情va 亚洲欧美一区二区… 国内精品久久毛片一区二区 亚洲另类欧美综合日韩精品 又长又粗又硬又爽免费观看视频 国产美女福利视频专区一二三 片在线观看免费观看大全 黑丝高跟空姐 有免费看的黄色大片吗 黄色app在在线观看 老司机啪啪黄色视频 日本特黄特色aaa大片 天天视频午夜片 少妇高潮av免费看 伊人久久av不卡网 又黄又爽又视频 偷拍另类亚洲欧美 日韩欧美在线aⅴ 69精品久久久久人妻 少妇熟女 亚洲 欧美在线一区二区三区四区 亚洲福利视频不卡 免费黄色av免费看 寡妇一边摸一边爽一边叫床小说 国产成人黄色视频 欧美有码一区二区三区 亚洲男女自偷自拍图片另类 羞羞色国产精品 亚洲精品高清av 国产乱x入x对白视频 欧美最新成人精品一区 丝袜人妻熟女中文字幕资源 久久久熟妇熟女ⅹxxx国产 国产91人妻av 全国最大成人网久久 亚洲在线中文字幕在线观看 久久人妻少妇精品 99,久久精品国产一区二区三区 午夜福利在线看免费 国产精品一区二区三区直播 免费毛片一级在线观看 亚洲欧美最大中文字幕网 十八女人毛片在线看 国产免费又色又爽又黄的ship 日韩电影一区二区免费 扒开双腿疯狂进出爽爽动态图 免费又黄又高wwww 免费观看黄色的网站 最近的2019中文字幕视频 成人在线电影日韩 女生三级毛片 又长又粗又硬又爽免费观看视频 亚洲人精品av 久久久久国产精品一 亚洲你懂得在线播放 黄片在在线免费观看 亚洲av精彩在线观看 在线观看国产区视频 丰满成熟的女人片aaa久久久 成人真人黄色视频 一区二区三区乱码国产在线播放 我要看一级黄色片 日韩在线播放一区二区三区 www.久久久久久精品 亚洲av一区麻豆 十八女人毛片在线看 国产精神在线观看一区二区三区 超黄超色的免费黄片 三级av国产 久久伊人热99 精品久久久久久中文字国产 非洲黑人粗长大战亚洲女 久久久久av入口 日韩在线成人免费 丁香花成人色区 奶头露出视频无遮 国产a毛片一区二区 亚洲av一区麻豆 亚洲欧美 国产 国产全部视频在线观看地址 亚洲国产精品久久蜜桃 日韩欧美精品一区二区三区经典 欧美啪啪啪黑人巨大 国产精品福利久久电影 在线中文字幕精品第一页 懂色日韩欧美国产亚洲 无遮挡刺激的网站在线观看 啦啦啦在线免费看视频 亚洲在线日韩精品 国产亚洲福利精品一区二区 亚洲av一区麻豆 成人午夜免费观看 国产91激情视频在线观看 国产极品尤物粉嫩在线观看 wwwxxxsex 亚洲一卡二卡3卡国产精品 欧美一区二精品视频 日本高清特黄刺激大片 男女嘿咻视频在线观看 国产精品久久久久久亚洲av瑜伽 欧美国产亚洲精品伦理 一区二区在线精品亚洲 精品久久另类 午夜福利在线不卡 亚洲成人另类激情专区动态 久久才是精品国产 100黄片视频 免费在线观看亚洲av电影网站 天堂网在线资源网站 国产精品久久久久久亚洲av瑜伽 亚洲国产精品一区二区a 成人精品久久久午夜福利 久久青青草原精品 日韩 亚洲 欧美 在线 免费观看性生交大片为什么 在线观看免费看黄色视频 久久天天躁狠狠躁夜夜躁 亚洲三级视频在线观看 wwwxxx日本老妇人 国产黑丝高跟在线 在线播放量国产精品欧美区 精品国产欧美一区二区日韩 日本特黄特色aaa大片 午夜高清国产拍精品福利 边吃奶边扎下面动态 亚洲国产精品成人久久久久久 中文字幕在线观看永久免费 久久日日摸夜夜摸夜夜五月天 一个人www在线视频 黑人巨茎精品欧美一区二区三区 欧美日韩在线网站免费观看 国产综合成人精品一区二区三区 国产一级二级三级精品一级在线 极品粉嫩尤物在线播放 国产日韩欧美精品激情 狠狠久久噜噜噜久久久 欧美国产日本免费观看 亚洲 欧美激情 一区 二区 亚洲伦视频在线观看 免费观看av视频在线网站 免费无遮挡看黄h的网站 人成免费视频观看在线 亚洲.欧洲.国产 欧美国产一级二级三级 欧洲少妇av毛片 免费下载看黄色片 亚洲国产日韩精品 熟女少妇av不卡 最近av中文字幕2019免费版 日本一区二区视频在线看 欧美视频精品一区二区在线播放 下体在线免费看视频 成人二区二区久久亚洲 国产在线精品免费 国产小呦泬泬99精品 中文官网天堂在线看 午夜高清福利视频 亚洲av高清一区 裸体裸乳被免费看视 天堂网av在线播放 av在线免费香蕉 少妇裸体淫交视频免费看 又粗又硬又爽又黄视频 国产精品一区二区三区成人毛片 99精品中文字幕 全国最大成人网久久 日本黄色dt电影一区二区三区 一女多夫夜夜销魂 国内精品视频一区二区三区在线免费观看 日韩高清av影视大全 亚洲另类欧美综合日韩精品 一个人电影在线看 午夜一区二区免费看 欧美 日韩 国产1区 99,久久精品国产一区二区三区 女人成黑免费观看完整版 又硬又粗又爽的视频 男人抱摸边吃奶边视频 极品粉嫩尤物在线播放 久久蜜精品国产亚洲av不卡 午夜18禁在线免费观看 欧美妇乱xxxxx视频 男女av片在线观看视频 欧美乱码片一区二区三区 日本电影一区二区在线看 手机av亚洲 超黄超色无遮挡网站 国产91激情视频在线观看 成人激情视频网站 国产激情一区二区三区午夜 欧美亚洲精品综合国产 欧美性猛少妇xxx 亚洲国产日韩精品 亚洲精品久久蜜臀av 中国老妇欧美熟女 91av高潮喷水 一个人在线观看免费高清视频www 两个人的视频完整 久久才是精品国产 丁香激情五月天在线观看 一区二区三区激情片 亚洲欧美图区偷拍 欧美国产成人激情视频在线观看 亚洲444kkkk 黑人巨茎精品欧美一区二区三区 国产在线 一区二区 特黄特色大片免费播放器图片 久久久三级久久久精品 三浦理惠子中文字幕在线看 成人精品资源在线观看 欧美性精品xxxxx 青青草原青青 欧美精品日韩一区二区三区 国产成人综合在线亚洲 中文字幕一区二区三区人妻四季 欧美性猛少妇色xxxx猛叫 色吧在线免费观看 久久久三级久久久精品 色哟哟免费播放 成人日韩在线中文字幕有码 天躁日日躁夜夜狠狠躁 亚洲国产精品一区亚洲国产 国产美女久久久网站 超黄超色的免费黄片 久久亚洲av片毛片成人软件 亚洲av黄片在线观看 丰满的熟女乱又伦 亚洲中文字幕在线三级 国产美女久久久久久久99 老司机午夜精品99久久免 国产久色视频在线 久久r久久精品国产99热 亚洲精品久久久久精品aⅴ 人妻少妇精品版 日本爽快禁片18禁免费观看 av情色天堂 女生高潮被爽呻吟视频在线观看 一二三四免费观看在线视频中文版 精品精品自在自线 欧美激情精品久久久久久小说 久久成人免费视频播放 aⅴ免费中文字幕 亚洲精品国产大片在线观看 亚洲精品国产三级 aⅴ免费中文字幕 欧美色黄网站 亚洲444kkkk 一卡二卡三卡四卡国产在线 国产伦理电影一区二区三区 亚洲国产成人一区二区 伊人久久av不卡网 中文有码日韩 天天日日夜夜av 久久人人爽人人爽人人片av密臀 欧美最新一区另类 男插女下面啪啪免费观看视频 啦啦啦啦高清在线观看 精品乱码无人区一区二区 一二三区日本亚洲视频 成人欧美大片网站 国内a级毛片免费 在线观看国产内射自拍 波多野结衣一区二区在线观看 国产美女久久久网站 午夜性视频专区 性感美女脱光内裤让人捅视频 蜜桃精品一区二区三区 欧美熟另类久久久久精品 亚洲精华国产精华液的福利 人人妻人人澡人人爽精品曰本 可以看黄片的免费视频 两个人的视频完整 成人午夜视频免费在线 黑丝高跟空姐 18禁无遮挡网站 亚洲少妇熟女专区hd 欧美乱码片一区二区三区 嫩草影院一区二区三区 国产精品一区二区三区直播 欧美顶级xxxxbbbb 一级做a爰片久久毛日本 特黄特色大片免费播放器图片 午夜福利ww 成人另类免费在线视频 亚洲精品自拍aⅴ在线 国产高清国产av 国产高清国产av 成人av激情解说在线观看 国产精品一区二区三区直播 精品国产18久久久久久二百 黑人做爰高潮视频 中文官网天堂在线看 av黄网站免费永久在线观看 国产av麻豆1 日本一本二本三区中文高清 一边脱一边做 内射少妇19p 久久久久国产精品一 日韩中文字幕视频免费 日韩精品一区二区三区蜜桃 国产一区二区在线在线 av高清日韩在线 sao虎视频在线观看网站主页 成年女人v片 av情色天堂 新版天堂中文资源官网 日韩精品中文字幕乱码 国产精品久久久久久亚洲av瑜伽 两个人看的视频免费高清 欧美另类wwwxx 亚洲欧美一区二区… av一区二区人妻 国产又粗又猛又爽又黄的美女视频 狠狠久久噜噜噜久久久 亚洲最大av色 嫩草影院一区二区三区 最近av中文字幕2019免费版 国产av亚洲精品久久久久久小说 男人抱摸边吃奶边视频 在线天堂8资源在线 国产精品欧美激情在线播放30 av久久www 97毛片免费视频 亚洲国产精品香蕉视频 在线视频 欧美 亚洲 国产 被黑人女人30分钟视 www国产精品精华液 搞j视频免费又黄又爽 亚洲av加勒比久久 精品视频区图片区小说区 国产免费美女日b视频 国产香蕉美片在线观看 国产香蕉美片在线观看 成人av亚洲一区二区三区 91av高潮喷水 女人一级生活片 老女人牲交视频大全 久久综合狼人社区 色哟哟视频在线观看 亚洲少妇熟女专区hd 亚洲视频免费二区 一级做a爰片久久毛日本 国产精品国产自产拍高清av 久久久久久伊人影院 国产成人精品一区二区免费 女人高潮在线观看视频 成年女人的十五个视频在线观看 免费人成网址在线看 亚洲看av片在线 免费黄色片中文字幕 100黄片视频 一区二区三区四区国产视频 久久精品国产亚洲av果冻传 亚洲欧美激情va 日韩高清av影视大全 成人午夜视频免费在线 99久久re6热精品首页 久久就是精品 午夜高清福利视频 寡妇一边摸一边爽一边叫床小说 黄片视频免费的 免费观看av视频在线网站 少妇高潮av免费看 久久精品久久精品久久精品久久 黑人做爰高潮视频 а√天堂www在线а√天堂 国产一区二区三区九九视频 浪潮av久久久久精品国产小说 久久热精品. 在线视频一二三四 黑人巨茎精品欧美一区二区三区 亚洲精品乱码久久久久久久app 国产日批精品视频免费观看 午夜性视频专区 亚洲欧美中文日韩手机在线 猫咪色av在线香蕉国产 久久精品熟女丰满人妻 免费观看又色又爽又黄动态 日本av色影院 色国产精品久久久久精品 欧美国产日本免费观看 av狼日韩在线 日本一级特黄大片在线观看 极品色影院国产 伊人久久av不卡网 午夜福利在线看免费 在线播放成人av 漂亮少妇啪啪高潮大叫动态图 日韩欧美精品一区二区三区经典 www国产精品精华液 av天堂吧在线 人妻少妇91精品 女人成黑免费观看完整版 男女成人av免费高清在线播放 黄片视频在线观看免费观看 精品国产av电影久久久久久 亚洲国产精品第二在线播放 欧美日韩亚洲综合国产人 欧美成人com 久精品在线观看 青青草原亚洲精品 超黄超色无遮挡网站 午夜精品电影一区二区在线 欧美一级高清精品电影 亚洲中文第一字幕欧美一区 三级av国产 毛片av亚洲 丝瓜视频黄片免费 国产三p一区二区视频 精品人人妻人人澡人人爽牛牛 特级毛片18级毛片免费播放 久久精品国产99精品亚洲蜜桃费 色欧美在线视频 黄色1级毛片 国产伦精品一区二区三 精品视频国内精品视频 亚洲熟妇av一区二区三区色堂 女人18岁免费看黄片 国产精品一区二区三区电影 奈斯精品主题酒店 freesexvideos性欧美一 被黑人猛操十次高潮 午夜高清国产拍精品福利 日本一区二区三区乱码 青青草原avcom 日日摸摸夜夜添添 国产自拍福利视频在线观看 在线夫妻生活片 熟女av视频网站 啦啦啦视频在线观看日本 日韩精品一区二区三区蜜桃 女人15毛片a级16女人水真多 欧美av艳星裸体图片 国产真实夫妇4p交换在线视频 国产aa级毛片久久久精品 日韩av在线免费观看网 国产精品一区二区三区成人毛片 与亲女洗澡时伦了毛片 成年人网站视频播放 成人在线午夜免费视频 99婷婷精品国产亚洲av在 日韩高清av影视大全 国产乱子伦刺激在线观看 日本,18禁电影 国产免费观看精品av 全网免费黄色片毛 黑人巨茎精品欧美一区二区三区 久久精品国产99精品亚洲蜜桃费 老司机电影院av 在线看日本熟妇相奸 日本欧美一区二区三区成人 西瓜大片免费在线观看 免费又黄又高wwww 欧美刺激乱对白视频 男女性午夜视频 亚洲另类欧美综合日韩精品 精品国产av电影久久久久久 久久热精品. 亚洲av永久精品 桃花岛国产乱码精品一区二区三区 久久久精品一 日本一区二区三区乱码 男女性午夜视频 久久久久免费看片 久久久综合国产精品久久久久78 中文字幕一区二区人妻免费不卡 欧美日韩国产一卡2卡3卡4卡新区 欧美多人乱大交xxxxx3 亚洲青青草原国产 久久久亚洲熟妇熟女22p 国产日产欧产精品精品推荐 男生射精女生有感觉嘛 美女视频在线看 国模av在线免费 久久精品中文 蜜桃午夜精品视频 亚洲av激情专区在线播放 一级a级毛片免费观看 亚洲av永久精品 亚洲伊人网址 老司机午夜福利视频一区二区 国产免费又色又爽又黄的ship 国产午夜在线视频不卡 中年妇女精品 黄色三级插逼片 日产精品卡2卡三卡四卡 亚洲激情视频一区二区三区 啦啦啦在线视频免费观看下载 96久久精品人人妻人人搡 成人午夜免费观看 日韩在线播放一区二区三区 啦啦啦视频在线观看日本 国产毛片不卡野外视频 亚洲bt中文字幕 白嫩少妇视频在线 尤物欧美在线观看 日本在线在线亚洲 99re这里只有精品99精品 色偷偷人人爽 色哟哟视频在线观看 亚洲乱码中文字幕精品久久 www.99riav日韩国产 激情欧美日韩一区二区 精华霜 精华 精品人妻少妇丰满久久久免 最近av中文字幕2019免费版 青春草在线播放视频在线观看 高清毛片免费播放 91精品国产自产在线观看永久 精品国产人妻人伦一区 97在线视频. 亚洲.欧洲.国产 久久久久国产午夜 18女人小正毛片 最新版在线天堂资源 a毛片免费全部播放 两个人看的www免费高清日本 天躁日日躁夜夜狠狠躁 97在线视频. 亚洲国产精品香蕉视频 人妻少妇91精品 电影专区一区二区另类 女人高潮在线观看视频 久久精品国产99精品亚洲蜜桃费 日本淫秽色视频在线播放 亚洲男女自偷自拍图片另类 欧美电影精品888 亚洲欧美图区偷拍 西瓜大片免费在线观看 日本高清特黄刺激大片 琪琪影院一区二区 国产久色视频在线 久色精品国产亚洲av麻豆一 在线av播放 日本性感黄片 a级毛片免费观看的网站 久久人人玩人妻潮内射人人 亚洲福利av片中文字幕 中年妇女精品 国产—级久久久久精夜 av永久天堂一区亚洲av 国产 精品 成人 噜噜噜精品欧美成人av 精品久久久久久中文字国产 毛片免费全部播放完整版 日本av视频免费播放 亚洲一区av二区三区在线观看 eeee亚洲综合 久久久久麻豆精品国产 欧美有码一区二区三区 国产精品丝袜久久久久久igao 3070ti矿卡 亚洲国产成人一区二区 不卡的高清av 美女被日视频网站在线观看 欧美最新成人精品一区 日本影院午夜伦 av网站在线永久观看 91高清国产在线观看 久久久91精品国产一区二区精品 女人15毛片a级16女人水真多 国产午夜在线视频不卡 五月深爱婷婷丁香 国产乱肥老妇 2000xxx激情文学 香港三级x88av av天堂2014手机在线 久久才是精品国产 国产精品久久黄妖精 日韩中文字幕有码在线观看 国产 精品 成人 欧美国产精品一区 一级做a爰片性色毛片侧宿 久久久久免费看片 欧美狂野视频网站 亚洲国产精品美女久久久av 亚洲影院成人在线 大香蕉精品视频免费 欧美亚洲精选精品av大片 欧美精品一卡二卡 成年女人毛片免费观看线外看视频 日本特黄色视频网址 不卡的高清的极品av在线免费播放 毛片免费全部播放完整版 www..av在线 嫩草影院一区二区三区 又硬又粗又爽的视频 国产91在线丝袜 色吧在线免费观看 欧美午夜精品久久久久久绿 在线观看一区二区精品国产入口 日韩 亚洲 欧美 在线 男女上下一进一出抽搐视频 精品视频午夜福利 午夜久久久久亚洲欧美 国产麻豆乱视频av 大香蕉eedd8899.com 嫩草影院在线观看123 日本在线观看1 国产亚洲精品sese在线 欧美成人精品免费看 婷婷亚洲综合网 欧美日韩亚洲中文字幕 亚洲欧美最大中文字幕网 99伊人久久大香线蕉成人网 美女高潮xxoo深夜福利 欧美色噜噜激情一区二区三区 丝袜高跟网站 久久精品中文 国产 精品 成人 99草这里只有精品 av首页在线播放 日韩国产一区二区在线观看 中文有码日韩 91精品国产自产在线观看永久 综合丁香激情五月 片在线观看免费观看大全 免费观看又色又爽又黄动态 亚洲精品蜜臀av久久久 国产精华液一区二区 9999国产精品欧美久久久 美女被日高潮国产 爱看色黄色大片网站 国产18精品福利视频 www.久久大香蕉 一级做a爰片久久毛日本 银魂永远的万事屋免费观看 久久r久久精品国产99热 国产精品福利影视 成人av亚洲一区二区三区 在线观看一区二区欧美日韩 天堂а√在线最新版在线天堂 日韩免费高清大片在线 天堂а√在线一二三区 亚洲成人免费影院 又大又黄又免费的视频 免费观看黄色的网站 久久电影网蜜臀 欧美电影精品888 爱看色黄色大片网站 只有久久免费精品 亚洲精品国产三级 国产免观看色视频 亚州一区二区三区在线观看 亚洲日本中文字幕乱码 丰满人妻狠狠后入av二区 非洲黑人粗长大战亚洲女 奈斯精品主题酒店 色哟哟免费播放 国产精品乱码一区二区三区不卡 一级大片久久 亚洲欧美日韩国产成 91视频亚洲欧美 久久精品国产清自在天天线 大香蕉精品视频免费 av手机在线亚洲 久久久久久国产精品嫩模综合 在线视频 欧美 亚洲 国产 亚洲黄色av一级片 久久久久久久国产精品亚洲 蜜桃午夜精品视频 国产精华液一区二区 成人精品资源在线观看 a级免费毛片在线观看 欧美日韩国产一卡2卡3卡4卡新区 永远的忠诚免费播放 国产激情在线视频首页 国产成人精品一区二区免费 亚洲欧美中文日韩手机在线 欧美视频在线观看免费不卡 久久香蕉狠狠 欧美亚洲国产色吧 国产a∨精品一区二区三区仙踪林 九九热精品视频在线观看免费 国产精品福利久久电影 裸体裸乳被免费看视 在线观看一区二区精品国产入口 最新加勒比av在线 久久人人爽人人爽人人av超碰 特黄特色的大片在线观看 美女露胸无遮挡动漫 成年人免费网站久久 100黄片视频 亚洲黄片av在线免费观看 国产精神在线观看一区二区三区 啦啦啦在线视频免费观看下载 久久99精品久久久久久不卡 99re6热在线视频精品 一级做a爰片久久毛日本 亚洲成人av噜噜噜 欧美一区二区午夜福利在线 精品99免费视频 久久天天躁狠狠躁夜夜躁 亚洲欧洲国产在线 国内精品视频一区二区三区在线免费观看 国产三p一区二区视频 欧美激情精品久久久久久小说 日本av 在线观看 一卡二卡三卡4卡 有免费看的黄色大片吗 奈斯精品主题酒店 亚洲在线中文字幕在线观看 最近日本精品一卡2卡3卡4卡 欧美国产亚洲自拍另类图片 午夜高清国产拍精品福利 全网免费黄色片毛 国产激情在线视频首页 午夜性视频专区 亚洲影院成人在线 97久久精品人人爽人人爽 与亲女洗澡时伦了毛片 中文字幕久久综合久久 av黄网站免费永久在线观看 中文字幕人妻系列人妻有码中文 久久久久性免费视频 精品久久人人爽综合 免费伦理电影视频 婷婷亚洲综合网 国产精品一三级久久久 中美日韩av在线 av在久久精品 老司机在线免费午夜福利 在线看片 日韩 久久九九免费精品一区二区三区 黄色三级插逼片 一区二区三区国产av毛片 99精品国产三级在线观看 成人av激情解说在线观看 久久国产婷婷精品 91久久精品电影 五月深爱婷婷丁香 国产美女福利视频专区一二三 天天想夜夜想夜夜爽 在线观看av网站大全 国产主播在线喷水 久久免费成人av 人妻少妇91精品 国产黑丝高跟在线 精品人妻少妇丰满久久久免 日韩视频一区二区三区四区 在线天堂8资源在线 好男人免费观看完整版电影 欧美性猛少妇xxx av狼日韩在线 国产精品伊人久久久久www久久久 日韩欧美性一区二区三区 日本av涩情 国产乱肥老妇 老司机电影院av 美女被狂操到喷水 免费亚洲a级毛片 亚洲国产高清电影 在线观看成人av天堂不卡 亚洲成人一区久久 wwwxxxsex 国产91激情视频在线观看 亚洲另类欧美综合日韩精品 日韩不卡在线观看 国产原创麻豆av 蜜桃av精品少妇人妻天 欧美视频一区二区精品在线观看 老女人牲交视频大全 日韩中文字幕有码在线观看 久久久久性免费视频 又粗又硬又爽又黄视频 91精品啪av在线观看国产网站 人成免费视频观看在线 牲刺激久久久久久久久免费看 日本18禁电影推荐 又粗又硬又爽又黄视频 亚洲天堂免费精品
    中文熟妇人妻又伦精品视频| 男人操女人逼的视频免费看的 | 亚洲产国偷自拍| www.18porn.sex| 好男人官网在线观看高清| av在线播放欧美| 久久久精品人妻一区二区三区色秀| 中文字幕日本在线乱码| 久久久亚洲精品中| 中文字幕人妻av| 国产蜜桃久久| 国产午夜精品一区理论片2022| 亚洲精品一区国产欧美黄| 国国产精品免费| 97在线观看视频不卡| 美女视频很黄免费| 码高清av一区二区| 欧美日韩久久精品免费| 成人啪视频免费欧美观看| 国产性熟妇精品老妇| 成人情色免费视频| 牛人盗摄一区二区三区视频| 久久久久久精品喂奶视频| 在线观看野战视频| 亚洲.欧洲.国产| 新版天堂资源在线中文8| 快播黄色毛片| 亚洲精品人成网线在线播放| 欧美黄色三级a| 免费久久99精品一二三区| 国产精品人妻久久久久| 亚洲毛片av在线播放| 国产露出精品一区二区三区91| 久久午夜一级片| 亚洲aⅴ国产av综合av| 在线视频精品乱网址| 久久久久久亚洲精品av| 成人av电影网 久久爱| 日韩不卡av在线| 成人有码日韩| 国产69精品久久久久熟女| 色综合久久香蕉| 国产探花精品| 92午夜福利国产精品| 91av激情网在线观看| 性感美女被强视频免费观看网站| av片日韩精品| 披荆斩棘的哥哥高清在线观看| 国产精品久久久久一级精品app| 欧美日韩国产人成在线播放| 男女啪啪嘿咻gif动态图| 天堂网资源中文最新版www| 丁香色婷婷激情五月| 精品日韩欧美国产一区二区三区| 黄色av在线看| 精品国产乱码久久久久久蜜桃a| 国产成人99久久亚洲综合精品| 国产在线不卡av精片观看| 亚洲av日韩av高潮潮喷| 国产在线看色| 免费不卡毛片在线直接观看| 精品久久久久久久久久久久av| 国产最爽男女视频| 天堂av色婷婷| 国产av巨版色婷婷| 日韩不卡av在线| 午夜精品久久久久久久第一页下载| 精品国产乱码久久久久久aaaa | 一个人看www的高清视频| 欧美成人一区二区在线看| 日本电影中文字幕一区久久久久久久看| 羞羞视频蜜桃| 国产不卡亚洲av午夜网站| 淫阴视频在线观看| 美女性生活黄色片| av最新黄色网址| 性少妇videoxxⅹ欧美18| 亚洲风情怡红院| 亚洲琪琪av天堂| 一边吃奶一边进去好爽| 又粗又爽又长黄色视频| 伦强视频在线免费观看| 五月综合色丁香| 在线观看亚洲av影视| 国产aa级毛片久久久精品| 饥渴少妇高潮喷水在线观看| 美女免费黄频视频| 国产又爽又黄码无遮挡| 三级黄色视频在线看| 亚洲精品久久久久国产网站 | 成年人黄片在线免费看| 牛人盗摄一区二区三区视频| 免费午夜福利视频一区二区三区| 午夜激情视频在线观看网址免费| 国产精品亚洲手机在线| 免费又黄又高wwww| 在线观看国产999av| 免费一级一片在线观看| 国产熟女高潮久久| 91视频亚洲欧美| 亚洲精品 国产成人| 青青国产视频在线观看播放| 婷婷精品久久天天狠狠| 亚洲精品一二三伦理中文| 99久久国产综合精品网成人影院 | 男人舔女人逼高潮视频| 岛国大片在线免费视频| 成人中文字幕免费在线观看| 深夜a级毛片免费视频| 国语对白一区二区三区视频在线看| 少女视频在线观看| 国产精品电影久久久| 最新免费av| 欧美情色国产精品| 欧美激情 图片一区 视频专区| 老汉色在线理伦伦片| 欧美日本精品一区二区三区| 天堂资源新版在线天堂| 电影在线观看一区二区日韩| 又长又粗又硬又爽免费观看视频| 搡老女人老妇女老熟女o| 国产精品亚洲四库影院| 国产精品久久久久久精品闺蜜| 久久精品国产亚洲av麻豆秋霞| 日本免费观看网址| 男女无遮挡18禁| 国产美女足控丝袜黑色高跟鞋| 黄色a级黄色毛片视频| 大黑吊伦理在线播放| 欧美国产精品日韩在线| 亚洲人成网高清在线观看| 中文字幕被侵犯的人妻| 日本国产亚洲精品| 精品国产av色一区二区深夜久久| 久久久久久精品免费免费s| 在线看美女视频| 日本极品大片| 男人和女人交配黄色视频| 年轻人爱看大片| 女人抽搐喷水娇喘视频| 18年必看大片在线免费观看| 色网站大全在线观看| 99re在线版精品视频| 女生同房出白浆| 日韩精品在线观看免费视频福利| 最新国产av,最新| 久久影院网址| 成人av亚洲第一区二区| 在线av播放| 免费在线大片欧美观看| 免费一级片播放| 麻豆国产在线| 亚洲人成电影一区| a免费网站在线观看| 国产精品毛片久久久久久久久| 国产欧洲亚洲精品| 在线免费观看性视频| 国产亚洲精品av在线播放| 久久久久久97精品| 桃花综合在线观看| 一本色道久久88精品综合| 亚洲另类欧美综合日韩精品| 99精品国产乱码久久久| 国产高清视频自在线看| 九九九久久免费精品视频| 亚洲午夜福利视频嘛| 国产精品片av在线观看| 国产水蜜桃水蜜桃| 久久天天躁狠狠躁夜夜躁| 亚洲国产熟女一区二区| 久久精品国产亚洲av麻豆.| 久久久免费精品国产一区二区| 欧美日韩久久精品| 超薄肉色丝袜足| 国产老熟女精品一区二区91| 电销卡购买平台推荐| 国产精品99久久一区免费| 欧美激情成人一区二区| 亚洲欧洲精品91| 亚洲人成网站在线播放942| 国产成人久久久久av| 亚洲 一区二区精品| 老司机亚洲精选影院| 国产精品久久久久久2021欧美| 日韩中文无线码在线视频| 亚洲精品中文字幕a| 午夜福利ww| 日本熟妇与中国少妇| 舔丝袜美脚网站| 桃花岛国产乱码精品一区二区三区| 丝袜久久在线| 高清成人爽a毛片免费看一级| 欧美免费黄色三级视频| 国内精品自在自线视频| 亚洲国产精品看片在线观看| 69中文字幕在线观看| av天堂久久久久久久精品成人热| 明星扒开腿露出小视频| 美女 国产精品 久久99| 少妇多人做爰在线观看| 免费观看亚洲小视频| 成人午夜黄色片| 日本岛国18禁v片免费网站| 午夜影院一二| 日日摸日日碰夜夜爽暖暖视频| 中国老妇欧美熟女| 伊人亚洲中文字幕在线观看| 久久草久久色| 精品欧美无人区乱码毛片| 久久精品无阅读弹窗| 午夜久久久久亚洲欧美| 亚洲人妻高清久久中文字幕| 亚洲国产综合99久久久精品| 青青草视频在线观看精品视频| 成人乱码一区二区三区四区| 五月天色婷婷亚洲| 亚洲欧美中文精品久久久久| 电影天堂亚洲av| 国产精品嫩草影院一区二区| 欧美精品一区二区三区在线日韩| av的网站在线免费观看| 亚洲av免费视一区| 欧美情色国产精品| 欧美人x人视频在线观看| 人妻熟女影院| 久久婷人人澡人人爽人人| 成人黄色视频动态图| 婷婷色国产影院| av嗨片国产在线观看| 国产精品第44页| 黑人ooxx亚洲女在线观看| 大香蕉国产在线播放| 狠狠:久久综合av一区| 日本岛国大片18禁| 色网站免费在线| 日韩av不卡在线观看一区二区| 蜜桃久久久亚洲精品| 午夜福利在线亚洲| 久久人人玩人妻潮内射人人| 精品动漫av亚洲av| 高潮痉挛大喷水在线观看| 亚洲成人一区久久| 啪啪动图边摸边吃奶做爽动态| 99re视频在线精品免费播放| 99精品国产三级在线观看| 嫩草影院久久国产精品| 亚洲伦视频在线观看| 色av天堂最新| 国产精品一区二区三区成人毛片| 欧美久久激情网| 成年人看的视频在线播放| 亚洲中文字幕无限乱码| 国产动漫精品高清在线看入口| 色嘟嘟在线观看| 亚洲欧美色网站| 国产精品三级久久影院| 亚洲第一国产日韩精品欧美| 人妻激情视频一区二区三区免费| 天天添日日添夜夜添| 在线免费观看av视频网站| 激情伦在线观看| 男女啪啪啪的动态图| 成人作爱视频网站| 亚洲国产精品男人的天堂| 在线观看看片网站| 亚洲欧美日韩动漫精品| 国产aaa级毛片一区二区三区| 精品久久久久久久久久久| 翘臀人妻在线中出内射| 青草青草久久| 熟女人妻制服诱惑中文字幕| 国内老妇女大b图片| 实拍野战视频| 黄片久久久久| 免费观看手机在线黄色视频| 国产又又色又爽三级视频在线| 国产精品久久av熟女人妻| 日韩av我不卡| 美女视频开腿被上| 国产水蜜桃水蜜桃| 久久久久国产精品,| 美女露胸露乳无遮无挡| 国产美女福利精品| 成人一区二区人妻| 男男十八禁啪啪啪| 国产av原创剧情在线观看| 亚洲国产成人精人久久| 精品久久久大香蕉| 国产第一二三区日韩在线观看| 又长又粗又爽又黄的视频| 国产福利精品视频在| 久久久99精品久久| 免费看毛片在线看| 亚洲av日韩av中文高清| 97超碰av人人爽久久www| 国产午夜福利网站在线观看| 亚洲最新版av| 男人靠女人免费片| 高清黄色片网站| 成人 欧美 精品| 18岁女生毛片| 精品人妻av乱码中文字幕| 大桥未久人妻系列av| 欧美色精品视频欧美精品色| 香港经典三级av在线| 国产一二区色在线| 国产亚洲精品久久网站| 免费精品国自产拍在线不卡| 国产黄色视频在线看看| 我和岳互交换夫妇中能4pwxx| 国产成人18黄网站免费观看软件| 美女被破处国产在线| 92午夜福利国产精品| 91高跟黑色丝袜呻吟在线观看| 美日韩中文在线一区二区三区| 午夜大片2个人看的www高清视频| 男同黄色免费网站| 久久av不卡免费播放| 亚洲最新版av| 有夫之妇日本伦理| 老鸭窝天堂在线视频| 日韩精品福利片午夜免费观看| 色88久久久久高潮综合影院| 一区二区三区乱码无字幕| 国产高清女人对白av在在线| 精品久久精品免费视频| 亚洲精品h在线观看| av.com午夜| 青春草在线观看综合视频| 国产av一区二区大片在线观看| 国产精品三级久久影院| 免费在线观看老鸭窝| 看片免费观看大全视频| 少妇人妻精品久久久久久久| 国产精品v欧美精品v日韩下载| 免费一级做a爰片性色毛片| 欧美中国少妇xxx性高请视频| 熟女少妇精品一区二区| 欧美一级黄色免费网站视频| 亚洲人成伊人成综合网777| 成人男女黄色视频| 国产va精品在线播放| 两个人的www片免费高清视频| 人与动物的黄色大片| 51亚洲精品| 国av中文字幕| 中文字幕亚洲欧美日韩专区| 久久网中文av| 久久精品蜜桃国产亚洲| 丰满成熟的女人片aaa久久久| 中文字幕久久乱码一区二区| 国产av一区二区大片在线观看| 免费观看黄色视频的应用| 免费一级片在线播放无需下载| 美女被爆操到高潮喷水| 看中文自拍视频| japanese丰满熟妇人妻| 伊人久久成人av| 男女做爰猛烈叫床吃奶视频| 成人在线激情黄色视频| 国产探花精品| 高清免费在线毛片| 成年人免费电影久久精品| 啦啦啦资源在线完整视频| 精品福利一区二区三区蜜桃| 精品国产一区二区三区av最新| 成人精品第一区二区三区| 国内精品人妻久久毛片| 日韩高清推理片电影| 日韩欧美亚洲一区二区在线观看| 视频精品线视频在线观看| 美日韩中文在线一区二区三区| 一二三四在线观看视频中文1| 狠狠天天噜日日噜| 熟女人妻在线影院| av日韩在线影院| 日韩一区二区免费在线电影| 内射日韩熟女| 亚洲高清在线观看av| 午夜影院一二| 又粗又硬又爽又黄视频| 97香蕉久久国产超碰青草最新版| 国产在线中文字幕精品一区| 国产自产av一区二区三区1| 99久热在线精品视频观看99| 国产大片高清在线观看| 视频在线观看中文字幕| 91精品久久久老熟女| 久久夜色国产精品亚洲av| 中文有码日韩| 国产午夜视频免费| 内射国产老熟女综合| 国产精品亚洲av| 国产午夜精品av在线| 少妇av激情| 亚洲av影音一区二区三区| 一区二区av熟女人片在线观看| 午夜福利精品在线视频| 亚洲av激情综合在线| 午夜免费看片福利| 男女下面一进一出在线观看视频 | 亚洲综合伊人| 国内少妇人妻偷人精品91| 亚洲成人av极品| 欧美午夜理论影片| 国产视频线播放| 久久99热精品影院| 国产主播喷水视频| 亚洲人成网高清在线观看| 人妻人人澡人人爽国产高清中文网| 欧美黄色视频网站观看| 免费床上黄片| 白带成乳黄色| 久久久久精品国产av果冻传媒| 欧美最新国产亚洲亚洲精品a| 少妇裸体淫交视频免费看看 | 精品国产 第二页| 日本黄色激情网站视频| 电影网午夜福利片| 麻豆av三区| 日韩高清动作| 亚洲av成人在线观看观看| 精品亚洲啊天堂av一级毛片| h人成在线看免费视频| 午夜久久久久视频| 欧美精品成人a在线观看麻豆| 18禁黄色免费视频网站| 日本,18禁电影| 四虎亚洲精品成人a在线观看| 亚洲字幕av| 日本午夜av免费视频| 美女被搞到高潮的视频| 国产日韩欧美91| 国产三级对白视频| 天天躁夜夜躁狠狠躁2022| 最近最新中文字幕大全在线视频| 奥门一级毛片| 美女上床在线观看视频| 波多野结衣av熟女| gogo西西人体大胆大尺度| 精品国产乱码一区二区三区蝌蚪| 99热这里只有的精品77| 别揉我奶头~嗯~啊~的免费视频| 日韩av在线免费观看av| 最大中文字幕视频大全免费| 国产一区二区三区神马视频| 国产av精品男人的天堂| 一级a做片免费观看下载| 亚洲a在线视频免费观看| 精品久久久久久亚洲| 午夜久久久久亚洲欧美| 亚洲最新自拍视频在线| 国产美女嫩模午夜福利视频| 男女进入下面啪啪视频| 中文字幕亚洲一区欧美| 国产乱人伦偷精品视频免观看| gogo啪啪人体艺术| 久久国产婷婷精品| 亚洲成人中文字幕在线| 中文字幕一区二区人妻电影| 国产精品一区二区日韩欧美亚洲| 看黄片欧美日韩国产| 农村熟妇乱子伦| 日韩大片一区二区三区av| 午夜福利精品在线| 偷女性内裤视频| 欧美乱大交做爰xxxⅹav| 91秦先生野战陌生女神在线| 欧美一级久久久久久久久大| 精品禁18成熟少妇久久久久久久| 欧美日韩国产精品一区| 天堂在v线中文在线8| 韩国伦理电影最美女| 成人黄色视频| 蜜桃精品91| 在线亚洲欧美日韩每日更新| 在线观看国产区视频| 成年人看的黄片免费| 色四月亚洲av在线av| 久久人人爽人人爽从片av高清| 色哟哟网站下载| 日本三级黄色片日本三级黄色片| 欧美日韩在线网站免费观看| 免费观看人成影片| 亚洲天堂久久精品成人| 国产精品乱码一区二区三区不卡| 一区二区三区免费观看国产| 啦啦啦啦www免费观看| 男人天堂,国产电影| 美女视频免费看黄| 亚洲欧美中文日韩手机在线| 人妻久久久久久精品99系列 | 国产毛片一卡二卡三卡| 久久精品碰国产97区| 国产欧美日韩中文| 国产一级内射免费观看| 黄色毛片在线免费观看| 黑丝高跟大屁股| 日本午夜精品一区二区三区| 一个人观看的高清视频www | 久久久久久久久毛片aⅴ| 女生裸体无遮挡免费视频| 波野av在线播放| 在线看日本熟妇相奸| 亚洲av永久精品| 久久网站男人天堂| 亚洲免费av观看地址| 国产一级一级a看片免费| 精品久久久久久99人妻一| 毛片网站手机在线播放| 国产免费美女日b视频| 国产女视频在线看| sim卡哪家好| 国产在线视频黄| 少妇裸体淫交视频免费看看 | 亚洲精品伊人爱爱综合影院| 中文国产成人精品久久久| 精品国产5ww1区二区三区| 亚洲综合色aⅴ在线观看| 亚洲美女网免费观看| 国产精品青草久久久久蜜桃| 亚洲字幕av| 午夜福利在线不卡| 又爽又黄少妇毛片夜夜夜| 美人视频在线| 美女靠逼国产免费| 99国产精品视频免费看| 免费看的成人黄片| 国产久久只有精品| 国产在线精品三级| 国产亚洲a v人片在线观看| 欧美xxxooo老妇毛多| 香蕉久久99一区二区三区| 中文字幕永久免费| 亚洲福利视频不卡| 老司机视频福利青青草| 亚洲熟女av综合| 日韩区高清视频在线| 国产精品三级一区二区久久久| 欧美精品第一页在线| 美女被啪啪到高潮视频网站 | 日本免费观看完整版视频| 日本毛色大片| 天堂网中文资源在线| 国产,精品三级| 欧美嘿咻嘿咻在线观看| 噜噜噜噜噜夜夜夜夜夜| 欧美高清videosex极品 经典| 波野结衣一区二区a| 超级永久免费看黄片视频| 两个人视频观看高清免费| 亚洲无av码一区二区三区hd| 伊人久久中午字幕| 女人18毛片黑人网| 永久免费视频播放| 插进女生下面视频在线观看| 欧美激情精品久久久久久国产 | a黄片免费视频| 在线播放av一区二区| 国产女人精品| 亚洲国产欧美在线一区二区三区 | 精品久久另类| 亚洲最新版av| 国产女人裸身视频网站| 色婷婷亚洲五月| 一区二区波多野结衣在线| 亚洲欧美另类图片久久……| 香港免费a级毛片| 国产三级精品三级在线观看97| 一二三四免费观看社区| 丝袜激情av| 欧美z0z0另类| 日本午夜影院在线| 草视频在线观看网站| 欧美视频成人在线观看| 久久av激情资源| 国产在线视频黄| 一个色综合是全亚洲| 中文字幕精品乱码亚洲一区| 大香蕉av一级毛片免费| 国产看片视频在线观看| 亚洲av一区二区三区777| 毛片在线看完整免费网站| 精品国自产拍在线观看| 亚洲国产精品成人一区| 成a人片在线观看网址| 国产一级-a爱做片| 国产精品久久久av麻豆| 男人舔女人下阴全视频| 好看的av不卡免费在线观看| avtt.gv| 午夜男女视频免费观看视频| 国产纶乱视频| 99久久国产综合精品五月天喷水| 国产精品三级高清在线| 午夜福利av片在线观看| 性欧美久久久久久久久56| 人人人妻人人澡人人爽| 中文天堂官网再线| 美女视频 在线| 在线亚洲国产播放| 狂熟女乱视频一区二区| 亚洲91天堂国产免费| a大片免费观看| 久久精品9中文字幕| av亚洲中文一区二区三区| 黄色片免费成年人狂操女人| 亚洲av动漫h在线观看| 精品三级国产三级在线一支区| 久久综合亚洲精品五区| 国产欧美日韩区| 天堂中文在线a| 色哟哟资源在线| 亚洲av成人无遮挡网站在线观看| 欧美日韩国产1区二区| 国产综合久久精品久久精品| 国产69精品久久久久熟女| 极品少妇sexvideos| 96久久精品人人妻人人搡| 色www视频永久免费下载| 亚洲电影中文字幕在线| 天天想夜夜干| 一个人在线观看免费高清视频www| 千张口尝酸尝甜人人有| 亚洲欧美一区二区…| 亚洲国产精品久久久久青草 | 久久精品成人一区二区三区蜜臀 | 天堂av网2| 久久久精品中文字幕之3| 久久久久久人妻精品视频| 免费视频内射| 国产精品99久久久久久成人| 天堂亚洲av国产av在线| 国产精品一久久香蕉国产线看观看| 人妻人人爽视频| 草草免费视频| 成在线人视频永久免费观看日韩| 午夜福利高清不卡| 少妇探花精品影院| 丰满少妇被粗大的猛烈进出| 中文字幕在线观看永久免费| 国产白丝袜美女久久久久久久| 我和岳互交换夫妇中能4pwxx| 国产精品99久久久久影院 | 男人舔女人下阴全视频| 又爽又黄少妇毛片夜夜夜| 亚洲中文字幕无限乱码| 国产欧美一区二区三区免费| 欧美sexavhdfree| 欧美色偷偷亚洲| 老少配老妇熟女中文视频| 色哟哟视频在线观看免费| 久久久久久精品人妻不卡三区| 香蕉视频免费下载网址| 91久久久久久久蜜桃| 久久久久久九九九九九| 国产精选亚洲天堂| 人人妻人人澡人人妻人人爽| 久久久久久精品毛片免费| 国产午夜精品成人在线| 免费看的黄色毛片| 97超碰chaopengcpz自拍| 婷婷91精品国产91久久综合| 好懂的电影你懂的| 69亚洲精品久久久蜜桃网站| 日产一卡2卡3卡四卡精品| 麻豆久久久久国产精品| 欧美日韩av大片| 亚洲av电影高清在线观看| 人妻专区视频| 日本乱人伦在线观看视奸| 久久精品国产av高清| 亚洲毛片亚洲一级毛片,亚洲av| 亚洲一区欧美另类| 少妇人妻在线观看| 国产视频自在自线观看| 交换夫妇中文| 一二三四在线观看免费高清中文下载| 色999日韩在线视频| 亚洲精品久久久久久精品小说| 久久久香蕉综合精品网| 给我免费黄片高清在线观看| 两个人视频观看高清免费| 黄色av.免费| 在线观看国产精品亚洲高清黄色二区| 性xxxxfreexxxxx欧美牲交| 看一级黄色片一级黄色片| 午夜福利这里只有精品| 毛片在线看的免费网站| 国产精品欧美激情一区二区三区 | 亚洲久久av区| y111111少妇影院| 欧美性猛交xxxxx乱大交多人| 久久久久精品国产三级男人的天堂| 日韩 色 在线| 成人情色免费视频| 精品国产不卡一区二区三区不卡 | 女人被弄到高潮叫床免费视频.软件 | a级毛片久久久久久久| 97午夜福利理论大全在观看| 被黑人猛躁10次的视频| 在线亚洲视频免费观看| sao虎视频在线观看网站主页 | 欧美三级国产三级日韩三级| 国产精品国产三级国产av中p| 岛国在线永久免费视频| 免费精品国自产拍在线不卡 | 在线www,久久精品99国产| xxxxssss性sex国产| 亚洲国产区一区二区| 一级毛片aa视频免费| 日本电影一区二区在线看| 999在线视频亚洲精品| 一二三四高清免费观看在线电影| 亚洲一区二区三区免费在线观看的| 亚洲国产区一区二区| 久久精品码专区免费| 国产精品久久黄妖精| avxxoo在线播放| 一本久久a久久精品vr综合| 黄免费视频大全| 久久zyz中文字幕| 黑人与中国少妇av视频| 看免费的特大特黄a级毛片| 国产一区二区成人在线视频| 久久人人爽人人爽人人片av四色 | 一级女人视频毛片| 久久国产精品露脸精品国产蜜桃| 欧美视频在线播放精品| 波多野结衣的人妻生活| 免费久久99精品一二三区| 亚洲嫩草研究院在线观看| 欧美日韩国产在线播放| 99久久夜色精品国产亚洲a| 亚洲免费精品网站| 中国熟妇少妇| 国产谍战片推荐| 五月六月丁香亚洲欧美日韩综合| 亚洲欧美国产精品一区二区| 国产激情视频一区二区三区| 久久这里只有精品网站| 高潮痉挛av| 精品免费久久久久| 毛1卡2卡3卡4卡免费va| 女人被躁到高潮嗷嗷叫文| 成年人免费电影久久精品| 色图亚洲综合网| 老鸭av在线观看| aa毛片免费观看视频| а√最新版地址在线天堂| 少妇高潮喷水在线观看| 精品伊人亚洲综合资源在线| 国产久久熟女精品| a大片免费观看| 有免费看的黄色大片吗| 天堂a√在线中文在线| 精品国产亚洲av久一区二区三区| 久久久久国产熟女精品蜜臀| 92午夜福利合集1000在线线看| 免费看欧美精品一区二区三区| 黄片国产视频不卡顿| 老太太一级毛片| 久久在线成人网| 人人妻人人澡人人爽精品曰本| 国产精品大久久| 国产日韩欧美v| 亚洲国产成人一区二区| 色播在线永久免费视频观看| а√天堂中文在线资源| 欧美三级在线观看精品| 国产 欧美 日韩免费| 精品欧美第一页| 日韩欧美中文字幕在线点播| 欧美精品日韩在线观看| 亚洲少妇熟女图| 色乱码一区二区三区色乱码一区二区三区| 国产一区二区在线在线| 黄色av免费| 边吃奶边摸下视频| 久久精品国产高清av| 黄色在线免费下载观看| 免费人成又黄又爽的视频在线观看| 免费黄色在线视频网站| 国产精品成人av激情在线麻豆| 久久电影,久久精品影院| 哪里可以看黄色大片| 久久精品影院在线观看| 亚洲av少妇熟女综合网岳| 黄色色禁免费看| 黑丝高跟空姐| 国产精品成人免费视频| 美女被强暴在线播放| 久久久久久a欧美亚洲av丫| 美女黄色观看网站| 新99精品免费视频| 国产黄片在线观看视频| 无遮挡男女啪啪成人免费网站观看| 精品人妻av乱码中文字幕| 少妇裸体淫交视频免费看| 成人国产精品一区在线| 男人舔女人下面b的视频| 乱色完整视频在线观看影片| 免费av大片网站| 丝袜美足在线| а√天堂资源在线官网| 亚洲中文字幕欧美日韩| 精品人妻精品视频| 亚洲一区二区三区国内精品| 亚洲成人av影视| 日韩av5npy.com| 日本高清在线视频观看| 亚洲青青草原国产| freefrontvideos性欧美| 人妻少妇久久久| 久久精品久一| 亚洲成a人片777777小说| 麻豆97欧美| 女生有18个毛片| gogo全球大胆高清啪啪| 福利视频最新| 精品国产96亚洲一区二区三区| 精品久久久久国产字幕久久| 在线视频观看青青草| 日韩在线播放一区二区三区| 国内真实在线| 国产黄色视频线观看| 伦理三级在线影院| 欧洲av福利大| a做片免费观看久久| 1区2区3区美日韩| 久久免费亚洲综合| 成人精品免费视频| a激情视频永久免费观看| 国产免费美女日b视频| 麻豆精品av国产| 亚洲精品成人久久av| 少妇的寂寞在线观看| 成人真人黄色视频| 欧美一级毛片免费高清aa| 色欧美视频免费看| 国产精品美女久久久久av爽水多| 国产精品久久久久久久影院老熟女| 欧美,日韩,国产,三级| 大片毛片免费观看| 91不卡人妻| 亚洲欧洲国产综合aⅴ| 真人女人一级毛片| 国产精品久久久久久福利网站 | a级免费观看毛片| _级黄色大片| 床上激情高清视频| 天天视频午夜片| 亚洲精品久久蜜臀av| 免费在线看的ww网站| 人妻少妇精品视频区| o588午夜伦理电影片| 国产免费成人av电影| 在线看精品综合国产你懂的 | 亚洲av 日韩 国产| 亚洲av综合av色av| 在线观看精品影视推荐| 国产高清在线精品一区二区| 国产a级毛片久久久久久精哥| 国产精品久久久久久久免费av| 久久香蕉社区| 亚洲青青草原国产| 亚洲av有码网站| 亚洲国产精品一区二区久久阿宾| 国产成人va在线播放免费| 真人午夜高潮喷水试看| 一区二区日韩高清视频| 国产精品www在线免费观看| 人妻熟女hd中文字幕| 精品久久久久久久久中文字幕永久| 日本波多野结衣一区二区| 亚洲最强看片在线观看| 久久久久久av免费网站| 一区二区三区免费的视频网站| 久久欢久久精品久久久| 国产精品美女久久久久福利| 欧美日韩国产电影在线观看| 国产精品一区二区蜜桃| 日本电影精品人妻一区二区| 看久久久久久a级毛片就| 最近免费中文字幕2019| 国产v亚洲v日韩v欧美v| 999免费视频.| 国产av官网国产| 高潮毛片无遮挡高清免费看| 日韩av我不卡| 成年女人黄片免费视频午夜| 青草草在线观看| 中文字幕永久免费在线视频| 嫩草av研究院| 亚洲视频精品在线| а√天堂网www在线中文无限| 国产精品久久亚洲一区| 又大内射视频| 午夜激情在线观看视频日本| 久久人人爽人人爽人人av超碰| 午夜老司机久久| 国产日韩欧美视频在线观看| 美女视频 在线| wwwxxxsex| 成年人黄片在线免费看| av网站亚洲国产| 国产成人51精品午夜福利免费| 国产一级一厂内射片在线视频| 亚洲国产日韩免费| 亚洲熟女首页| 51午夜福利在线| 一级片完整版免费| 国产精品久久一本| 老女人牲交视频大全| av在线亚洲观看| 99热国产极品久久| 777自拍视频| 亚洲精品在欧美一区二区少妇| 一二三四社区一免费观看| japanese色国产在线看| 亚洲国产精品久久蜜桃| 丝瓜视频黄片免费| 亚洲精品国产av久久久久久| 国产毛av片久久久久久| 国产资源精品导航| 久久久久久人妻精品视频| 最新免费av| 日韩欧美亚洲国产中文| 香蕉久久sese| 国产欧美精品一区二区三区99 | 91av在线视频网址| 亚洲欧美日韩丝袜| 国产免观看色视频| 在线成人国产亚洲一区二区| 在线视频 欧美日韩一区| 国产精品黑人一区二区三区| 成年女人视频免费在线观看| 久久国产99热精品| 亚洲的日韩男人天堂久久| 欧美精品一区二区三区水蜜桃| 国产91激情视频在线观看| 超碰在线香蕉97| 性色国产成人久久久精品二区三区| 国产精品久久久久美女| 美女黄频a视频| 国产亚洲欧美精品久久久蜜| 看黄色视频永久免费| 久久夜色精品国产小说| 久久色成人av| 精品禁18成熟少妇久久久久久久| 精品久久久久久久久久久av| 在线成人国产av| 日日躁夜夜摸月月添添添的| 人人妻人人澡人人爽的| 欧美日韩一区发布| mac电脑突然又卡又慢| 精品人人做人人爽久久久| 好国产黄色视频免费观看| 91香蕉久久精品成人软件| 美女被脱内裤视频| 国产99久久久久久久精品| 久久人人玩人妻潮内射人人| 久久国产精品大片| 亚洲欧美v日韩色国产v| 亚洲国产成人精品a| 两个人日本高清| 91久久综合电影| 国产一线天视频| 搡老熟女中国老太自拍| 在线免费av网站观看| 亚洲国产成人精品久久久国产成人| 特黄特色的大片观看| 老鸭窝av免费在线观看| 亚洲福利av在线播放| 精品一区二区三区爆白浆| 亚州天堂av| 99精品不卡国产福利在线观看| 漂亮人妻波多野结衣凌辱| 永久免费观看的黄网站| 欧美日韩性免费在线观看| 海飞精品主题酒店| 添女人下面高潮视频| 国产精品高清在线观看| 国家精品久久久久久| 国产不卡精品| 97人人做人人爽香蕉精品| 亚洲高潮美女久久久久久| 亚州天堂av| 亚洲精品最新网站| 在线观看欧美黄色视频| 亚洲 一区二区精品| 激情图片在线观看视频| 美丽姑娘在线视频日本电影| 老司机免费视频福利69| 久久久久成人高清视频| 在线观看国产视频一区| 天堂8在线天堂资源在线| 免费观看亚洲小视频| 国产在线观看男天堂| 创世纪2在线观看国语字幕完整版| 欧美激情猛交| 精品人妻熟女av视频| 欧美成年午夜精品一区| 日本高清www色视频总站免费| 久久国产亚洲精品一区二区三区 | 十八禁免费看在线| 一区二区三区免费久久| 亚洲自拍一区视频| 国产午夜福利免费在线| 黄色一级片,一级黄色片| 外阴分泌物呈黄色| 两个男人吮她的花蒂和奶| 性欧美人与d0g交xx| 午夜免费看片福利| 国产精品精品国产婷婷这里aⅴ| 六月丁香在线资源| 国产裸身女性视频免费无遮挡 | 日本一区二区三区四区有码视频 | 久久久国产精品熟女| 亚洲精品国产一区二区av| 一个人www观看网站a级毛片| 亚洲精品在线在看| 国产在精品视频线精品视频| 国产成人精品3p一区二区三区| 在线观看国产日本欧美| 中文在线观看永久免费| 制服丝袜av一区二区三区| 在线天堂中文最新 版| 国产美女被强在线观看| 国产色呦呦精品| 欧美女人射精xxx| 亚洲精品久久久久中文第一幕| 久久夜av免费麻豆| av成人不卡在线| 久久色亚洲一区| 懂色av成人一区二区三区| 亚洲欧洲国产一区| 成年网站在线在线观看| 99久久国产精品一级毛片| 黄网站色成年片在线观看红杏| 啦啦啦视频在线免费观看| 天堂8在线中文在线| 国产纶乱视频| 久久精品男人的天堂av天堂| 国产美女久久久网站| 麻豆激情四射在线播放视频免费观看| 亚洲综合色偷偷av| 成人免费片在线观看| 大香蕉一区在线观看| 欧美国产日韩精品网| 国产免费福利片在线不卡av| 99re在线免费观看视频| 亚洲国产成人精品一区二区三区在现观看 | 亚洲av电影天堂在线| 一个人看的日本免费hd| 日本18禁网站免费观看| 可以免费看的黄色一级片| 永久免费看黄片视频| 午夜a v免费观看| av大片一区二区| 亚洲精品久久久久久一本婷婷| 最黄a级毛片| 久久青青草原精品| 国产亚洲福利精品一区二区| 一本色道久久88综合日韩精品| 黄黄色视频免费在线观看| 一二三四在线观看免费高清中文下载| 国产原创剧情在线观看av| 日本激情高清免费视频| 男人操女人高潮免费视频| 日本一区二区中文字幕久久| 亚洲国产午夜精品理论片6080| 久久精品9中文字幕| 成年人av毛片| 久久亚洲精品日韩av美女成人性| 免费观看黄片视频在线观看| 久久久久久 亚洲精品| 国产综合精品日韩欧美亚洲一区| 黄色av.免费| 黄片国产噜噜噜| 国产护士一级毛片高清| 久久久久久久久精品中文字幕| 一二三四视频社区在线动漫| 久久久久国产精品中文字幕| 黑丝高跟啪啪啪| 亚洲成人一区久久| 我要看欧美黄色的| 男人进女人j啪啪无遮挡| 亚洲欧美一区二区…| 国产精品尤物在线观看播放| 卡一卡二卡三 精品| 亚洲精品视频在线播放网站| 在线观看视频三级国产| 亚洲av无乱一区二区三区乱码| 熟女人妻の中文字幕| 久久人人爽电影| 亚洲精品乱欲视频| 国产熟女丝袜喷水| 久久人妻夜夜| 92激情亚洲色图婷婷| 99热这里只有精品久久| 亚洲天堂久久婷婷| 99热这里有精品| 亚洲av黄片在线观看| 国产av激情国产熟女| 久久精品99久久国产精品| 噜噜色男人天堂| 国产国产成年年人免费看片| 免费人成视频网站在线| 怎么把视频中两个人的声音分离| 六月丁香色播五月| 日本在线免费专区一| 夜夜福利yeyefulicom| 国产色老太色老太视频在线 | s型优女网站在线观看| 男插女视频无遮挡在线观看| 亚洲第一欧美另类| 高清国产在线一区| 91福利午夜影院| 中文字幕在线乱码日韩| 一二三四高清视频在线观看中文版| 亚洲国产精品欧美一级| 最新午夜福利色羞羞| www.久久男人天堂| 国产亚洲午夜电影| 777自拍视频| 亚洲欧美日韩中文视频| 久久电影在线观看| 亚洲av迷人一区二区三区| 老鸭窝在线播放av| 黄色a级毛片在线免费观看| 琪琪影院一区二区| 精品久久久久久久久久久久av| 黄色一级黄色大片| 国产精品久久久成人| 大香蕉97碰| 99久久精品国产一区二区三| 女人被爽到呻吟gif动态图免费| 激情综合五月开心婷婷| 精品国产中文字幕在线视频| 啦啦啦啦在线播放视频| 国产av在线观看成人| 亚洲欧美制服丝袜在线观看| 成人国产av精品麻豆网址| 国产伦精品一区二区……| 国产精品免费日韩| 免费女同毛片在线观看| 亚洲av一区二区观看| av影院网站在线观看| 国产美女奶头操一区二区| 毛片一区二区三区四区精品| 好男人在线观看视频观看| 日本av电影一区二区三区| 日本成在线看| 男女嘿嘿视频在线观看| 日夜夜夜夜夜夜| 亚洲少妇熟女专区hd| 女人特级毛片18| 午夜激情视频在线观看网址免费| 国产 熟女 精品| 看久久激情免费| 成年人黄色视频免费软件| 国产69精品久久久久久人妻精品| 上司侵犯人妻中文字幕| 午夜福利电影网| 亚洲v精品一区二区三区16| 精品福利一区二区三区蜜桃| 人妻电影久久| 中文字幕在线视频免费网站| 在线播放宅男不卡av| 欧美成人三级视频在线观看| 亚洲精品中文久久久久| 亚洲色图综合| 亚洲成人 国产| 国产真实乱对白视频| 黑人好吊色在线观看免费| 99久久只有精品国产| 美女被啪啪到高潮视频网站 | 免费播放亚洲av| 人妻精品久久久久牛文字幕69| 免费在线av观看视频| 成年人黄色视频在线看| 又粗又长又硬又大又爽视频| 最新中文字幕 av| 亚洲午夜av久久久久久| 久久人人爽电影| 久久www亚洲人成av久久一区| 移动用什么卡流量多又便宜| 成人h小说网| 美女露出奶头(嘿嘿视频)| 两个人在线观看的www高清免费| 亚洲第一久久网站| 红色蓝色黄色混合成什么颜色| 国产美女在线勾引| 视频二区国产精品| 中文字幕有码在线观看| 性欧美性视频在线观看| 日韩在线一区二区三区在线视频| 久久91精品人妻| 精品国产一区二区av在线观看| 看福利视频久久久久久久久久久久| 男人日女人的啪啪视频免费| 人妻系列-老鸭窝在线视频| 1卡2卡三卡4卡免费日韩| 国产精品视频在线一区二区| 男女激情床视频免费国产| 青青草原av亚洲| 亚洲国产欧美国产第一区 | 在线观看国产内射自拍| 亚洲国产欧美国产第一区| 内射一级毛片| 菠萝菠萝蜜在线观看视频高清| 美女被内射在线播放| 亚洲美女图片一区二区三区| 欧美精品xvideosex| 亚洲成av人片在线观看天堂| 中文字幕亚洲天码| 亚洲中美欧日韩av| 国产大片免费视频软件| 精品久久久久久久久久久久av| 国产又粗又猛又爽又黄在线阅读 | 欧美激情成人一区二区| 美女视频黄频a美女大全漫画| 国产乱对白视频久久| _级黄色大片| 国产精品福利美女视频| 亚洲国产欧美日韩在线一区二区三区精品 | 国产 国语对白 在线| 免费在线观看老鸭窝| 免费观看黄色的网站| 国产av免费观看一区二区| 久中文字幕在线人妻| 国产99久久久国产精品免费| 国产男人天堂网址| 人人狠狠综合久久亚洲爱d下载| 国产色的视频| 亚洲成va人片在线观看_| 午夜理伦影院| 婷婷久久人人爽人人爽人人片av| 97国产在线看视频| 人妻少妇久久久久久97人妻二| 爱豆传媒老a影视| 久久久久国产精品人妻在线播放| 三级黄色免费观看网站| 久久电影,久久精品影院| 午夜欧美激情在线| 嫩草91在线播放| 国产三级在线免费看片| 久久99久久99这里精品1| 亚洲欧美成人午夜| 久久久久国产精品人妻| 中文字幕乱码熟女人妻在线| 欧美日韩国产电影在线观看 | 国产色拍av| 国产香蕉在线观看精品| 国产精品免费全部免费观看\| 在线观看成人av天堂不卡| 中文字幕三区人妻| 国产av剧情精品md麻豆| 少妇熟女3p视频在线观看| 我成了他的班主任免费观看全集完整版| 亚洲国产日韩在线精品一区| 中文字幕久久激情亚洲精品| 熟女 自拍 亚洲 精品| 看黄色片,看黄色片| 中文字幕人妻丝袜乱一区三区狠狠 | 天堂在v线中文在线8| 97se亚洲国产综合自在线观| 久久狠狠亚洲高清一区| 欧美国产成人久久精品直播| 麻豆国产原创av| 亚洲gifav| 日本三级特黄真人视频| brentgv电影天堂| 国产片免费视频| 又爽又黄又无遮挡的视频在线观看免费| 最近高清中文字幕大全6| gogo少妇大胆西西人| 欧美日韩久久精品一区| 亚洲卡一卡二卡三卡四卡五| 人妻专区视频| 亚洲综合av在线| 麻豆性xxx视频在线观看| 亚洲国产精品久久免费观看| 久久91成人欧美日韩网站| 男女边吃奶边摸下面的在线观看| 中国人妻在线视频| 99亚洲欧美国产| 国产91丝袜熟女| 国产电影精品一区在线观看| 亚洲人成伊人成综合网777| 免费黄软色哟哟| _级黄色大片| 99久久精品免费官网宅男| 精品久久噜噜| 久久精品62| 国产热re99久久6国产精品首| 亚洲欧美综合久久久久| 亚洲熟女av一区二区在线观看| 久久久婷婷综合五月色麻豆五| 亚洲国产中文在线视频综合| 国产精品一区久久99果冻传媒| 1080p超清在线观看影视网站| 99久久www免费人成精品| 蜜臀av最新网址| 国产尤物一区在线观看| 丰满人妻妇伦| 日韩 欧美一区二区三区| 国产免费不卡av在线播放| 末成年女a∨片一区二区| 亚洲国产日韩综合一区| 国产国产乱老熟女视频| 俄罗斯一级毛片·| 草草久久精品国产一区二区三区| 精品一卡2卡3卡4卡新区在线| 精品国产蜜桃一区| 看久久激情免费| 国产精选一区二区三区不卡催乳| 国产黄a三级三级三级看三级双飞| 亚洲人成电影网站色www| 黄片日韩老大| 大桥未久番号在线观看| 久久99国产精品久久1| 一二三四在线中文版免费观看| 免费看毛片在线看| 国产精品久久久小黄片| 免费国产精品久久一区二区| 成人av电影网 久久爱| 久久久久久久精品成人热入口| 人人妻人人爽精品| av亚洲天堂| 在线观看国产内射自拍| 亚洲/另类激情偷自拍| 欧美精品一区二区99| 久久久久久国产精品嫩模综合| 日韩中文精品乱码一区2区三区| 人理片人妻熟女少中文字幕在线 | 亚洲男同在线观看视频| 亚洲欧美丝袜精品久久中文字幕| 伊人日韩欧美视频在线观看| 国产成人午夜精品影院| 好男人bd高清| 最近日本韩国免费高清观看mv| 国产高清中文字幕| 欧美老熟女久久久| 国产在线精品色| 97在线观看视频免费播放| 亚洲av永久在线观看| 日本欧美视频在线免费| 亚洲精品国产av久久久久久| 国产精品1234| 与亲女洗澡时伦了毛片| 精品久久久久久久久久久| 中文字幕版av强码在线| 午夜影院一二| 亚洲国产欧美精品一区| 国产噜噜噜噜久久久久久久久| 999热视频这里只有精品| 毛片久久久久婷婷| 国产粉嫩一区二区三区在线观看| 黑人操中国美女真实视频| 精品国产乱码久久久久人| 福利一区二区三区视频在线观看| 精品国产一区二区三区av性| 中文字幕国产日韩在线视频| 18禁无遮挡的网站| 亚洲熟女av综合| 一个人免费观看ww在线播放视频 | 美女黄频大全免费在线观看| 久久久久久国产人妻| 午夜激情久久久久| 黄床大片免费观看| 亚洲精品乱码久久久久久按摩观 | 在线成av人网站| 久久一级免费片| 香蕉视频久久精品| 成年人黄淫视频在线免费观看| 女人被黑人狂c躁到高潮视频| 2020亚洲欧美国产日韩| 52av日韩欧美在线观看| 日韩欧美三级黄片高清在线视频 | 国产在视频线在精品视频2021| 97国产精品久久| 国产亚洲美女在线视频| 99精品视频在线播| 日韩电影不卡在线观看| 国产人妻av在线| 久久久香蕉综合精品网| 99热都是精品久久| 久久久久久精品人妻不卡三区| 最近免费中文字幕大全高清3| 一区二区三区四区产品精品蜜桃| 伊人亚洲综合| a级成人毛片| 国产精品一区二区精品视频| 久久亚洲国产中文精品| 99 这里只有精品| 国产精品国语对白露脸在线播放| 国产99re在线视频观看| 国产日产卡一卡二乱码| 国产日韩欧美激情精品视频| 9re久精品视频在线观看免费| 久久这里有一区二区三区| 我要看毛片女人毛片大女人毛片| 大秀网站在线观看| 亚洲精品在线播放网址| 欧美狂野视频网站| 国产精品美女久久久久av超清| 国产精品女人精品久久| 国产精品欧美激情一区二区三区| 本网站中文字幕在线视频| 欧美色精品视频欧美精品色| 移动用什么卡流量多又便宜| 午夜久久亚洲成人777| 蜜桃色视频在线观看| 激情av不卡免费观看| 国产精品av久久久久久久| 亚洲国产精品久久久久青草 | 久久久亚洲熟妇熟女ⅹxxx69 | 日本一二三高清| www.18porn.sex| 亚洲国产成人精品综合色| 韩国伦理观看| 大奶子视频h| 国语对白超碰| 日韩大片一区二区三区av| 欧美日本亚洲视频| 日韩电影一区二区免费| 一级毛片对白刺激国产| 国产剧情欧美日韩中文在线 | 四季一区二区二区三区av乱码| 亚洲黄色三级在线| 午夜性视频专区| 黑人粗大猛烈进出高潮| 亚洲欧美丝袜另类在线| 在线中文字幕在线视频| 最新中文字幕免费视频| 所有免费成年视频| 久久久久久精品国产免费观看| 欧美一区二区三区四区黄片| а√最新版地址在线天堂| 97在线视频三区| 沉迷抽卡后变成恶魔了笔趣阁| 欧美久久激情网| 黄色大片国产| 夜夜夜夜夜夜夜夜夜夜草| 色男噜噜噜亚洲男人| 成人日韩在线| 黄片应用免费下载观看| 免费看一级一片成人看片| 一级床上大片| 国产精选亚洲天堂| 国精品午夜电影| 亚洲精品91中文字幕波多野结衣| 国产一区二区三区四区播放| 日日摸夜夜添夜夜添网址| 亚洲国产日韩综合一区| 日剧中文字幕在线看免费观看| 色播在线亚洲| 99在线国内在线视频| 久久久久国产精品人妻| 99精品这里只有精品| av10338| 亚洲精品自在线视频| 91午夜福利一区二区三区在线看| 99久久www免费人成精品| 国产天堂av在线| av在线观看手机| 中文av手机在线| 国产原创视频在线播放| 亚洲aaa成人精品电影| 人人爽人人爽片av| 国产日产一卡2卡3卡4卡在线| 午夜福利网在线| 精品久久久久国产字幕久久| 一区二区三区天美在线视频观看| 黄色片免费成年人狂操女人| 亚洲精品蜜臀av久久久| 美女网站免费观看黄| 啦啦啦在线视频免费观看视频6| 720lu国内自拍视频在线| 18禁在线观看日本| 国内老妇女大b图片| www视频在线观看高清免费观看| 99呀re在线视频播放| 国产裸身女性视频免费无遮挡 | 免费视频内射| 免费在线观看无遮挡| 欧美精品日韩一区二区三区| 一道本高清不卡一区| 亚洲国产av精品成人| 丝袜美腿被c| 中国少妇与黑人xxxx| 亚洲熟妇av一区二区三区色堂| 亚洲黄色视频日本视频| 日本熟妇乱人伦xxxx| 美日韩二区三区| 成年做羞羞的视频网站一区二区| 日韩国产亚洲av| 日韩精品中文字幕免费| 色婷婷av一区二区三区免费观看| 三上悠亚高潮av在线观看免费| 亚洲精品一区二区三区在线观| 啊~cao死你小sao货网站| 久久精品影院区二区三区| 亚洲女人与黑人黄色视频 | 撕开奶罩揉吮奶头高潮视频动漫| 2020精品国产不卡| www.成人99,免费视频| 免费看av在线网站| 精品人妻av中文字幕乱码视频| 小蜜桃 视频| 女人一级生活片| 欧美激情精品在线| 91在线永久观看中文字幕| 久久热中文字幕| 成人女人女片免费播放| 精品国产一区二区三区在线蜜| 码高清av一区二区| 围屋里的桃花在线观看| 麻豆成人免费观看18禁| 国产精品电影九色| 韩国伦理片在线观看最新| 精品少妇极品久久久久久久| 亚洲美腿丝袜av| 国产乱对白视频久久| 久久免费看片一级| 两性色午夜视频免费| 国产熟女乱一区二区| 两个人看的bd视频| 亚洲天堂日韩电影av| 欧美精品激情久久久久久| 老熟仑妇乱视频一区| 在线观看日韩欧美大片| 最近免费中文字幕免费大全| 亚洲欧美在线中文字幕不卡| 久久99国产精品二区| 久久色电影在线观看| 午夜老司机久久| 18禁黄污无遮挡| 99久久久精品-久久久| 在线观看免费版完整| 99有精品在线观看| 久久久精品中文字幕综合| 真正免费毛片在线播放| 96亚洲精华国产精华| 国产精品久久久的| 消防器检查卡| 全亚洲免费在线播放| 男人和女人www免费视频| 亚洲av激情综合在线| 精品久久久久久久久久久久久久久| 欧美狂野性生活| 亚洲av777777| 久久成人亚洲精品中文字幕| 超碰97人人做人人爱亚洲尤物 | 伊人影院亚洲一| 每日一区二区三区在线观看 | 黄色一级片,一级黄色片| 日韩欧美三级黄色视频| 九九久久久久午夜精选| 亚洲国产精品一区亚洲国产| 男女叉下体动态图| 国产片a麻豆ⅴ在线观看国语 | 国产成人欧美一区二区| 精品国产99高清一区二区三区| 亚洲国产成人久久tv| 久久婷婷色一区二区三区asmr| 国产精品天干天干天干| 一区二区三区国产高清视频在线| 欧美性猛交xxx乱大交18| 男人j进入女人p无遮挡| 国产精品入口导航| 国产又色又爽又黄又激情视频| 不卡av在线免费观看 | 亚洲欧美在线视频精品| 久久日本中文字幕| 精品视频午夜福利| 久久久中文字幕91| 别揉我奶头~嗯啊免费视频网站| 国产小呦泬泬99精品| 久久久亚洲精品成人影院0000| 色婷婷蜜臀av在线观看| 偷拍真人做爰视频打野战免费视频 | 成年美女网站黄在线观看| 女人高潮一级毛片免费观看| 青禾男高高清在线| 日日躁夜夜b| 精品亚洲国产成人88va在线臀| 午夜18禁在线免费观看| 精液呈现黄色是为啥| 女人脱了内裤高潮的视频| 好男人视频在线观看网站| 天天免费黄色片视频| 高清在线观看国产| 亚洲欧美一区国产精品| 96亚洲精华国产精华| 别揉我奶头~嗯啊免费网址视频| 丰满少妇无套内射免费| 久久精品国产亚洲av麻豆.| 性色av一区二区波多野结衣| 国产精品av久久久久久久| 日本国产亚洲精品| 一边做一边说国语对白| 午夜免费精品福利视频在线| 999精品视频免费观看6| 最新视频一区二区三区| 美女视频免费看黄| 女人8毛片水真多免费| 亚洲av久久久噜噜狠狠| 国产在线精品一区二区三区在线| 我要看一集黄色片| 国产av情色在线| 中文字幕丝袜美腿专区| 久久久久精品国产亚洲av水蜜桃| 久久久久久久a| www 精品久久久| 日韩高清123| 99精品只有精品| 我要看欧美黄色的| 成年人一级片在线观看视频| 亚洲欧美天堂色| 国产3p一区二区三区在线| 亚洲无av高清一区不卡| 成人在线播放av片免费| 精品国产av久久久久久久果冻| 久久夜色精品国产噜噜av小说| 精品一久久久久久| 久久综合乱子伦精品免费| 在线日韩欧美亚洲| 亚洲精品中文字幕a| 一个人免费观看ww在线播放视频| 万界神主第二季免费观看视频| 在线观看成人欧美视频| 日本系列亚洲视频| 两个人在线视频免费观看| 日本老熟妇乱子伦视频| 三上悠亚高潮av在线观看免费| 高潮免费av| 超碰不码人妻| 国产精品福利视频av| 美女被搞到高潮的视频| 久久久精品夜夜| 精品一区二区三区在线成| 国内毛片免费视频观看| 韩国伦理电影最美女| а√最新版地址在线天堂| 国产老妇60xx| kk影院老司机| 亚洲av日韩av在线观看不卡| 老司机伦理电影| 欧美精品久久久久久一区二区三区 | 国产美女做a全免费视频| 久久国产精品99国产免费72| 亚洲人成电影一区| 九色porny在线观看| 国内一区二区三区日韩一区视频| 黄色av网站免费在线观看| 一级黄色片播放器在线| 欧美综合色网站| 野战男女视频| 丝袜999.av亚洲制服| 久久亚洲av成人| 女人的精水喷出来| 拘]女人黄片看看| 国产成人久久av一区二区| 人人妻人人添人人爽日韩欧美| 亚洲免费成人久久| 亚洲av黄片免费一区二区三区| 国产真人高清性色视频免费看| 免费伦理电影视频| 7758mp3夜夜mp3| 亚洲精品68久久久一区| 亚洲精品乱欲视频| 久久午夜福利影院| 国内内射精品| 久久久久蜜桃视频| 4880yy午夜免费影院| 久久av无套av高潮av| 亚洲精品夜夜夜夜夜夜夜夜夜 | 老司机福利影院日韩| 欧美成人xx视频在线观看| 最近2019年中文字幕完整版免费| 最近2018中文字幕视频免费看| y111111少妇影院| 久久久久久91香蕉国产| 久久亚洲精品中文字幕第一区| 少女视频在线观看| 日韩电影成人| 亚洲午夜综合色婷婷| 视频精品线视频在线观看| 无遮挡羞羞视频在线免费观看| 夜夜爽www精品夜夜夜夜夜久久| 精品电影久久久久| 妇女毛片视频| 国产精久久久久久精选| 99久久国产综合精品五月天喷水| 午夜老司机久久| 欧美精品成人a在线观看麻豆| 小小影视日本高清| 一级大片全黄| 骚妇的视频在线播放| 精子呈深黄色| 中文字幕 国产精品| 精品国产欧美日韩视频| 亚洲中文字幕免费在线电影| 国产精品亚洲明星va在线观看| 精品在线观看三区| a级毛片黄色录像| 啦啦啦在线观看视频8| 亚洲国产精品久久久久久99| 亚洲伦理av在线| 日日躁夜夜躁| 国产一级内射免费观看| 伊人久久中午字幕| 人妻熟女一区二区在线视频| a级毛片免费全部播放视频一区| 又黄又大又色无遮挡网站| 国产日产欧产精品精品推荐 | 三年片在线观看观看免费完整版| 女人一级生活片| 欧美激情在线二区| av不卡国产免费观看| 久久就是精品| 午夜福利看片一区| 亚洲av不卡顿免费在线观看| 日本xxxx高清色视频在线| 刘亦菲a级毛片| 已有111111少妇影院| 性生交大片免费9| 嫩草影院专区一| 成人免费黄色录像| 蜜桃免费看视频| 久久99热只有精品| 精久久国产精品| 91高清国产在线观看| 亚洲日本欧美精品视频| 国产又黄又爽又色又粗的视频在线观看 | 夜夜爽日日干| 美女被搞到高潮的视频| 国产资源精品导航| 精品一级内射视频| 黄色视频在线观看免费国产| 成人在线视频中文| 香蕉在线视频精品| 亚洲高清视频免费观看| 亚洲一区国产在线| 亚洲精品乱欲视频| av一区二区三区在线观看电影| 国内精品午夜理论| 国产老妇成熟xxxxx| 久久激情免费看| 黄色|级毛片| 99久久热精品在线视频| 新视频精品在线免费| 国产麻豆剧沈芯语| 毛片免费看一级毛片| 亚洲精品久久久久久精品小说| 久久综合亚洲精品色| av爱爱一区av| 中文字幕人妻久久精品一区| 国产美女久久久久久999| 最新的中文字幕在线视频| 亚洲第一区第二区在线观看| 草公开在线免费视频| 日本妇人九九| 亚洲精品国产欧美| 男人免费在线观看黄色片| caoporn自拍视频| 网站亚洲精品| h片在线观看网站| 精品熟女少妇av免费| 色噜噜丝袜av| 日韩中文字幕免费黄色视频在线观看| 国产av人人夜夜澡人人爽wwe| 久久国产婷婷精品| 国产真实野战在线视频| 亚洲综合区国产| 中文字幕精品久久一区二区三区| 人妻少妇偷人精品久久久人妻 | 久久碰国产一区二区三区| 夫目前被侵犯中文字幕| 精品少妇极品久久久久久久| 波多野结衣av一区二区三| 韩国伦理电影交换| 亚洲精品久久久久中文第一幕| 天堂а√在线最新版中文| 91嫩草影院亚洲精品| 亚洲 欧美激情 一区 二区 | 精品国产蜜桃一区| 永久免费黄色视频在线看| 老师来了在线观看免费| 亚洲国产精品久久免费观看| 久久精品9中文字幕| 美女福利第一视频| a级毛片啪啪| 国产av一区仑乱久久精品| 国产99久久99热这里只有精品20| 大片来了免费观看的网站| 已有111111少妇影院| 2021国产在线视频网站| 激情人妻欧美精品一区| 国产av剧情精品| 观看免费黄色| 亚洲精品一区国产欧美黄| 精品久久久大香蕉| 久久久久成人精品免费播放动漫| 一级a电影免费观看| 亚洲欧洲美洲日韩综合| free性欧美淫妇xxxxdh| 色伊人亚洲综合网站| 午夜免费一区二区三区| 亚洲av高清自拍| 在线性感美女视频| 神马老电影免费在线看大片| 久久精品国产亚洲av第一| 亚洲国产日韩a在线| 亚洲av免费在线看片| 想看黄色三级毛片| 色欧美在线视频| 免费视频永久在线观看| 人人爽人人爽人人片av免费| 亚洲av色一区二区三区| 蜜桃av国产精品久久久| 欧美日本一线| 亚洲av 综合一区| 香蕉视频色版免费| 亚洲欧美小说色综合小说一区| 午夜影院免费观看在线网址| 97在线观看视频不卡| 日本欧美亚洲另类在线观看| 成人精品资源在线观看| 一区二区三区四区欧美国产| 日本妇人成熟免费视频| 精品香蕉一区二区| 中文字幕伊人精品视频| 成人日韩欧美精品| 黄片成年视频| 少妇人妻在线观看| 亚洲国语对白在线观看| 成人欧美一区二区三区黑人| 国产免费美女日b视频| 中文字幕人妻丝袜诱惑| 忘忧草日本高清| 午夜不卡免费福利视频| 久久午夜老司机| 免费观看黄色的网站| av天堂亚洲手机版| 美女黄频大全免费在线观看 | 久久精品 国产精品| 福利视频最新| 欧美色偷偷亚洲天堂bt| 国产乱了真实在线观看大合集| 啦啦啦视频免费高清观看| 欧美日韩中文字幕手机在线| 亚洲国产精品第二在线播放| 黄床大片免费观看| 欧美午夜精品一二三区91电影| 国产一级a级高清毛片| 国产男女猛烈无遮挡免费观看完| 亚洲欧美日韩二区| 97久久婷婷国产综合免费| 久久一本热色99国产| 少妇人妻偷人精品一区二区99| 69网页黄色免费国产视频| 天天黄片视频| 国产成人精品在线网站| 亚州av色图| 国产女人裸身视频网站| 老色鬼精品视频在线观看| 国产伦精品一区二| 男女下面一进一出在线观看视频| 欧美日韩一区二区高视频| 日韩免费高清大片在线| 国产av色吧| 日本在线视频专区| 丰满老熟妇bbwbbwbbw| 美女被扒掉内裤视频| 亚洲欧美日韩国产精品一区二区| 久久这里只精品66精品99| 成年人免费电影久久精品| 久久久久国产精品色av| 老司机邪恶影院| av免费在线不卡播放| 亚洲字幕av| 夫妻免费黄片| 四虎av最新网站| 国产精品一区二区国产馆蜜桃软件| 久久激情av资源| 免费可以看黄色的视频网站| 亚洲精品字幕在线观看| 性生交大片免费4生| 久久精品99久久国产精品| 制服人妻中文字幕| 亚洲欧美久久精品18| 四虎在线播放免费人成视频| 日韩精品免费一区二区三区观看| 狠狠操日日射| 蜜臀av国内久久久久久久久| 日韩在线 码| 中年妇女精品| 黑人巨大xxxx高清| 国产亚洲精品a久久久| 精品少妇极品久久久久久久| 日本裸体啪啪无遮挡免费| 六月丁香婷婷在线视频| 国产熟女精品视| 久久精品国产亚洲av果冻传| 亚洲情色网视频| 小蜜桃在线观看视频| a级毛片黄色录像| 久久久久两性免费视频| 欧美激情精品一区二区三区| 美女高潮喷水娇喘| 少妇高潮久久久久久久久久久久久久久 | 久久精品网站亚洲另类| 男人的天堂网址色偷偷| 精品亚洲啊天堂av一级毛片| 欧美三级在线观看精品| 要爽死国产一区在线播放| 伦理三级在线影院| free性欧美淫妇xxx个| 国产精品久久一本| 美女直接被靠免费国产| 久久人人爽人人爽人人片av四色 | 少妇裸体淫交视频免费看看| 国内a级毛片免费| 国产精品久久久一区二区三区影院| 日韩欧美亚洲字幕| 国产黄频视频a| 成人av永久入口| 伊人久久大香99| 36又2/3是几码| 欧美最新一区另类| 国产日韩欧美视频一区二区 | a级毛片毛片免费观看久潮| 桃花源论坛免费观看| 亚洲国产日韩综合一区| 国产精选一区二区三区不卡催乳| 看片久久久久久久| 国产高清在线视频小尤奈| 超碰国产人人做人人爽| 人妻视频一区二区| 线在a亚洲老鸭窝天堂av| 国产日产卡一卡二乱码| 很黄很色在线观看| 日本妇人九九| 日韩欧美另类久久久精品| 好男人观看免费视频播放全集| 欧美日韩一区精品视频一区二区| 熟妇人妻精品一区二区三区视频| 97超超级碰碰碰| 欧美乱大交xxxxx在线观看| 国产毛片av最新视频| 92激情亚洲色图婷婷| 在线亚洲人成电影网站色www| 亚洲av一区,二区| 国产一区二区人妻三区| 亚洲熟女内射| 国产精品精品久久99| 天堂mv在线mv观看高清| 少妇人妻偷人系列| 131美女一区二区三区视频| 婷婷精品国产a久久综合| 亚洲国产成人老色批| 国家精品久久久久久| 国产又粗又黄又硬免费视频| 久久国产精品欧美| 久久久久亚洲av日韩首页| 亚洲中文字幕在线观看蜜桃| 在线观看日本一区你懂的视频| 欧美大香线蕉线伊人精品网| 精品久久亚洲久久久久| 久久久欧美精品| 在线一区二区三区四区| 在线播放永久免费| 国产精品一区欧美日韩| 午夜福利精品福利视频| 欧美妇乱xxxxx视频| 日本妇人成熟免费视频| 青春草在线视频免费| 亚洲大片在线观看免费| av精品人妻区一区二区三区| 亚洲精品网址一区二区| 国产黄片视频在线免费播放| 韩国 av 中文字幕| 久久久久久久久久啦啦啦| 国产精品久久久成人影院| 亚洲精品国产一级c片| 麻豆91成人午夜在线观看| 99久久免费高清热精品6-99| 欧美国产亚洲另类| av激情久久精品| 亚洲日本一区二区三区播放| 香蕉视频久久精品| 欧美日本亚洲视频一区| 亚洲欧美av一区二区三区| 电影激情艳女| 久久国产精品欧美| 亚洲综合日韩伊人| 男人搡女人的免费视频| 主播野战在线观看| 免费毛片av| 国产亚洲精品v在线观看一| 亚洲成av人观看| 精品人妻一区二区三区三十路| 91久久久久人妻精品| 久久99精品久久99蜜桃传媒| 在线观看国产区视频| a√天堂在线看| 日韩免费中文字幕视频| 久草国产精品香蕉在线观看| 国产一区二区三区欧美精品日韩| 女人被狂c到高潮在线视频| av网站在线永久观看| 国产精品三级手机在线| 国产精品久久久精品三级a| 久草加勒比视频| 国产精品天堂av在线观看| 亚洲v精品一区二区三区16| 国产99久久久久久久久免| 亚洲精品自拍aⅴ在线| 免费看一a级毛片| 淇淇影院午夜理论片| 青青草原官网5| 巨乳av免费在线观看| 日本亚洲欧美一区二区不卡在线| 国产亚洲一区二区国内精品| 九色porny视频网站在线观看| 在线观看av网站大全| 国产精品一区二区日韩欧美亚洲| 亚洲精品视频在线播放网站| 精品久久久影院.com| 人人妻人人澡人人爽的| 可以看免费的黄色毛片| 国产v日韩v欧美v亚洲v人人爽| 久久黄色a一级爱做视频免费观看| a级毛片免费视频就看| 日韩免费av观看| 精品国产18久久久久久二百| 美女被日高潮国产| 欧美成人三级视频在线观看| 最新中文高清字幕| 亚洲日本免费不卡一二三区 | 日韩新片网在线| 亚洲综合在线观看一区二区| 国产精品视频在线一区二区| 黄片下载免费在线观看| 亚洲一区日韩av| 一个人免费观看的日本| 十八欧美乱大交| 亚洲另类欧美综合日韩精品| 操黑人美女逼| www:久久精品| 国产在线视频久热欧美野战视频在观看 | 国产精品va在线观看丝瓜影院| 欧美一区二区精品久久精品| 亚洲国产综合久久久精品一| av在线播放影院亚洲| 国产亚洲精品一区二555| 乱码一区两区三区| 精品久久久久久久久99| av网站免费观看网址| 别揉我奶头嗯~啊视频| 人妻少妇精品视频区| 国模av在线免费| 国产av成人在线| 欧美亚洲一区三区| 一个人在线免费观看wwww| 一个人www在线视频| 久久久熟妇熟女ⅹxxx国产| 久久久综合国产精品久久久久78| 一个人看的www片在线高清| 久久噜天天天噜日日噜,天天b| 欧美精品精品二区在线发布| 国产av网站发布精品| 最新免费av| 免费观看黄色视频无遮挡| 日本av视频免费播放| 国产日本欧美三级在线| 女人18岁免费看黄片| 日韩在线免费观看网站| 国产日韩精品一区二区三区| 国产免费av片在线| 色老头国产av一区二区三区| 久久久久久久久成人| 美女视频开腿被上| 精品视频在线专区| avhd101永久网址高清| 亚洲精品国产综合99久久夜夜嗨| 细致 精华液| 不卡视频一区在线观看| 伊人日韩欧美视频在线观看| 国产喷水高潮在线观看| 97免费高清视频在线观看| 日韩大片永久在线| 日本黄色免费高清视频在线观看 | 欧美日本一线| 嫩草影院在线精品| 日本色片视频下载| 欧美性生交xxxxxoo| 未亡人熟女人妻丰满乱| 大香蕉av午夜精品| 亚洲伦视频在线观看| 少妇被爽到高潮喷水在线播放| 青青草原激情网站| 国产男女纯爱大片免费| 一个人看的www免费在线视频| 成人久久视频在线| 在线观看成人精品一区| 一区二区三区四区中文字幕有码| 久久99蜜桃精品久久久久cos| 日韩欧美三级黄片高清在线视频| 国产精品久久老熟女| 日本av精品一区二区三区| 久久国产色婷婷| 日本裸体啪啪无遮挡免费| 免费av大片网站| 国内精品久久亚洲| 五月六月丁香亚洲欧美日韩综合| 国产9999久久久久久久| 麻豆久久久久国产精品| 人人妻人人澡人人妻| 网址视频在线成人亚洲| 国产精品国产欧美日韩| 香蕉av影院| 国产999精品黄片| 大陆偷拍自拍| 大脚趾甲变黄色是什么情况| 精品人妻久久久久久888不卡| 亚洲国产成人久久综合电影91 | 国产成人av片免费在线观看| 国产高潮美女| 成人av不卡av电影| 在线观看视频国产| 欧美肥婆性猛交xxx| av亚洲中文一区二区三区| 精品卡1卡2卡三卡免费网站 | 欧美xxxx黑人猛交视频| 制服丝袜亚洲av国产av| 黑大粗黑人巨大激情猛烈视频| 欧美人x人视频在线观看| 给我免费黄片高清在线观看| 国产男女猛烈无遮挡高清视频| 经典av三级| 亚洲最大色在线观看| 一级做做a爰片在线播放视频| 欧美日韩成人伦理免费一区二区三区| 欧美日韩国产一级91| 亚洲欧美日韩另类在线视频| 男人搞女人的黄色视频免费观看| 亚洲精华国产精华精华液怎么样好用吗| 一级a一级a爱片免费高清视频| 国产精品久久久久久av免费不卡| 国产精品高清在线观看网站| 欧美日韩不卡dvd| 亚洲综合久久久888综合久久| 天天躁夜夜躁狠狠躁2022| 亚洲国产综合久久久精品| 成人黄色动漫网站在线观看| 国产精品自拍av网址| 国产精品影院| 国产av人人夜夜澡人人爽wwe | 国产欧美日韩不卡在线视频| 国产精偷伦视频在线观看软件| 丰满的熟妇不乱又伦| 日韩高清在线观看电影| 亚洲第一国产日韩精品欧美| 交换夫妇电影| 国产伦精品一区二区三区精品| 999免费视频.| 久久人妻乱码中文字幕| 中国老妇欧美熟女| 欧美黑人与xx| 国产精品男人的天堂av在线观看| 国产午夜avwww| 寡妇一边摸一边爽一边叫床| 亚洲s色大片在线观看| 超级碰97大香蕉| 免费看特黄美女视频| 男女日被黄色视频在线观看| av有码网站| 久久精品久久久久久清纯| 日韩网站在线免费观看| 爱爱av免费看| av在线电影亚洲| 亚洲天堂青青草原| 欧美精品日韩久久| 国产亚洲精品自拍区| 99久久国产综合婷婷| 鸡蛋黄红色好还是黄色好| 永久视频在线观看网站| 六月丁香网在线观看| 97碰碰在线视频| 午夜在线影院免费| 水蜜桃精品在线视频| 天天想夜夜干| 色吊妞在线视频| 国产日韩欧美99| 亚洲人在线成视频| 日本岛国大片18禁| 最新的中文字幕在线视频| 国产电影av一区二区| 成人看的黄色录像| 东京热毛片基地| 日本免费久久久久久久中文字幕| 成人国产av精品久久久网址| 亚洲在线免费av观看| 久久av喷吹av高潮av欧美网| www丫丫国产成人精品| 久久精品中文字幕视频| 国内黄色一级大片| 久久久精品a级片| 欧美一级毛片免费高清aa| 男女性午夜视频| 亚洲成人中文字幕在线| 欧美午夜精品在线| 国产亚洲精品成人av久久影院| 一个人在线观看www免费高清视频| 精品国产一区二区在线.| 大片来了免费观看的网站| 熟女熟妇伦51788| 色哟哟网站入口免费观看完整版av | 青青草视频在线观看精品视频| 所有免费成年视频| 久久精品国产亚洲av影院一百度| 国产亚洲一级精品久久久| 日韩免费中文字幕视频| 欧美精品日韩在线观看| 变态videossex潮喷另类| 最新国产精品熟女| 亚洲区自拍视频| 亚洲乱码中文字幕综合亚洲中文| 日本亚洲欧美在线视频| 亚洲久久综合一区| 撕开奶罩揉捏奶头视频mv| 黑人巨大精品黑人一区二区 | av爱爱一区av| 国产,精品三级| 亚洲中文字幕久热在线| 精品国产一区二区三区 | av免费在线观看永久网址大全| 国产a级毛片久久久久久精哥| 中文字幕乱亚洲高清在线| 日韩国产欧美在线免费| 国产成人精品久久| a在线观看视频国产成人h| a级毛片免费完整| 嗯啊别揉我奶头免费视频| 黄上片床大片| 老司机精品视频福利| 看片视频免费看| 久久久久99精品国产片精| 欧美国产成人激情视频在线观看| 最近2019免费中文字幕6| 人人爽人人爽人人爽av片| 日韩熟女大射精co| 亚洲av在线视频观看| 亚洲av免费在线看片| 一区二区三区午夜免费| 日韩av国产av亚洲成| 久久婷人人澡人人爽人人爱| 美女内射颜射视频在线观看| 可以免费观看的av视频| 国产美女久久久网站| 国产成人午夜精品影院| 国产高清国产av| 人妻毛片免费观看| 两个人免费视频全集在线观看| 全网国产日韩欧美| 久久精品 国产99| 亚洲美女网免费观看| 夜夜夜夜夜干| 午夜精品久久久久久久久久久久久| 毛片久久久久久18| 成人真人黄色视频| 蜜桃精品免费观看| 亚洲成a人片77777精品| 国产精品乱码一区二区三区不卡| 亚洲丝袜xxxx| 免费不卡毛片在线直接观看| 亚洲丁香激情五月| 内射国产老熟女综合| 8x小说一区二区视频| 欧美 日韩 亚洲一区二区三区| 一级淫秽片视频| 国产99久久久久久免费| 久久亚洲精品视频在线观看| 18禁黄污无遮挡| 欧美日韩国产免费在线观看| a级毛片免费视频网站| 日韩美在线视频| 黄 色 成 人天堂| 亚洲最强看片在线观看| 欧美激情,亚洲激情| 国产精品va在线观看丝瓜影院| 最新中文字幕免费在线观看视频| 大桥未久亚洲精品| 国产精品免费在线一区| 露脸国产野战最新在线| 日韩va亚洲va欧美ⅴa久久| 成年人视频网站免费播放| 蜜桃免费看视频| 黄片免费无遮挡在线| 亚洲人成网站色www网址| 一区二区日韩高清视频| 人妻少妇偷人精品av| 久久成人亚洲国产精品| 日韩高清不卡视频免费在线观看 | 黄色三级a级a级片| 中文乱码字幕人妻熟女| 亚洲欧美丝袜久久| 亚洲av成人综合在线| 亚洲精品a久久久| 欧美大香线蕉线伊人精品网| 精品av天堂一区二区三| 我的好妈妈6高清在线观看| a级毛片久久久久久久| 免费观看人成在线视频播放| 韩国女主播福利视频一区二区三区| 午夜福利午夜福利午夜| 激情青青草原一区| 一二三四在线观看视频中文1 | 国产高清女人对白av在在线| 欧美日韩视频一区二区在线 | g8752在线中文字幕观看 | 5060永久免费一级毛片| 一级毛片完整版免费播放| 欧美粗又大gay69黑人| 在线播放欧美日本| 久久久国产精品福利一区| 六月丁香婷婷色| 澳门一级毛片在线播放| 日本在线观看中文字幕| 我的极品老师在线观看| 日本大片在线观看免费| 大又大粗又爽又黄少妇毛片老男人妈妈| 美女双飞高潮直喷水在线播放| 在线观看看片网站| 美女视频免费看黄| 久久久三级久久久精品| 国产亚洲精品久久亚洲av| 国产免费一区二区三区最新| 456亚洲人成| 成人午夜高潮刺激免费视频| 成a人片av免费在线观看| 免费a级毛片老熟女| 曰批国产精品视频免费观看s| 日韩精品一区二区三区中文√| 伊人久久中午字幕| 日本1在线视频| 国内精品视频在线播放不卡| 日本性感黄片| 毛片三级黄色片| 影视精品影院| 视频一区人妻熟女| 国产69精品久久久久久人妻精品| 精品国产乱码久久久久久狼 | 在线观看的www免费视频| 岛国a在线观看| 亚洲国产精品一区二区国产| 久久成人精品在线视频| 亚洲wmav在线| 少妇裸体淫交视频免观看| 久久精品99国产亚洲av成人| 免费看永久黄色官网视频| 国产看片视频| 人人为安全安全为人人演讲稿| 欧美成人综合色区小说| 一区二区av电影| 国产电影在线一区二区三区| 一二三四社区在线视频社区7| 成人性生交大片免费看午夜| 人妻中文字幕av人| 中文字幕 有码 日韩| 在线观看www免费下载高清播放 | 中国老妇欧美熟女| 午夜理论片一级av| 91精品区一区二区三| 制服丝袜在线一区二区| 三级av国产| 国产精品夜夜春夜夜爽久久电影| 国产成人在线播放一区二区| 一级av黄色片| 亚洲欧美 国产| 老司机免费美女福利视频午夜入口 | 免费成人网视频| av在线播放影院亚洲| av情色天堂| 日韩av毛片不卡在线观看免费| 成人在线免费电影国产精品| 日本理论精品理论影院| 婷婷亚洲综合网| 一级黄片女人视频| 2020亚洲欧美国产日韩| 中文字幕ganav在线| 流量卡29元100g 纯流量卡| 精品国产av电影久久久久久 | 小说区图片区视频区电影区| www,免费在线观看| 人妻乱又伦精品视频| 中文字幕在线视频在线永久视频2019| 亚洲男女自偷自拍图片另类| 老司机免费美女福利视频午夜入口| mac电脑突然又卡又慢| 国产精品成久久久久三级蜜臀av| 人人妻人人澡人人妻| 国内精品久久久久久99蜜桃| 免费不卡的大黄色大毛视频在线观看| 人成视频免费在线播放| 国产目拍亚洲精品—区| 精品少妇人妻久久| 国产精品福利影视| 亚洲国产在线中文字幕| 黑丝美女被搞国产精品久久久久久| 国产a级一片| 男人j捅进女人p无遮挡免费看| av10338| 日韩欧美亚洲不卡视频| 国产精品夜夜春夜夜爽久久电影| 好男人在线观看视频高清完整版| 免费看片www观看| 视频二区国产精品| 国产精品999天堂av| 日本av 在线观看| 97香蕉久久国产超碰青草最新版| 少妇久久久黄片| 大胆美女西西gogo人体| 精品国产人妻人伦一区| 亚洲av老司机在线观看| 狠狠操人人爽| 好好久久www免费人成精品香蕉| 亚洲国产精品欧美一级| 人妻精品av一区二区| 中文字幕亚洲情色在线| 少妇在线免费视频| 舔到高潮小视频| 亚洲av日韩精品一| 张丽主演的成人av片| 久久久久久久人妻熟女| 国产香蕉在线观看精品| 免费一级老女人片| 露脸国语对白在线免费观看| 97久久久超国产精品| 亚洲精品黄片在线| 久久久久成人精品免费播放动漫 | 亚洲丝袜诱惑av| 久久99爱这里有精品国产| 黄色毛片在线免费观看| 久久久99久久精品| 经典有声录音精品亚洲欧美| 太平福利健康终身| av天堂2019在线观看| 在线观看网站推荐| xxx中国老逼xxx| 午夜视频永久免费在线观看| av嗨片国产在线观看| 啪啪动态图27| 亚洲av色图天堂在线| av永久免费视频| 亚洲最新在线播放| 国产精品久久久久无电影| 亚洲一区二区三区av片| 在线国产色综合| 亚洲欧美日韩国产精品专区| 成人黄色免费无毒网站| 在线视频 对白 国产 66| 一二三四社区一免费观看| 国产成人av区一区二区三| 久久99精品久久久国产最新章节| 国产亚洲av午夜在线观看| 精品三级久久久久久久| 日本免费一本一二区三区| 免费毛片一级在线观看| 波多野结衣av一区二区三| 电影激情艳女| 中文字幕有码在线观看| 玩弄放荡人妻少妇200系列视频| 免费影片大片在线观看| 亚洲精品国产精品乱码不卡√香蕉| 欧美日韩字幕一区二区| 国产精品亚洲怡红院的特点| 免费人成视频网站在线| 97久久久超国产精品| 国产亚洲91日韩porny| 人妻一区久久久久| 成年人黄淫视频在线免费观看 | 国产精品美女久久久亚洲69| 亚洲av成人精品波多野结依| 亚洲色图久久| 日韩高清免费观看av| 免费片播放器| 999精品视频免费观看6| 久久精品9中文字幕| 亚洲国产偷自拍| 女人18.毛片水多| 国产麻豆一精品一av免费软件| 中国一级黄色毛片免费观看| 日韩国产欧美在线免费| 日韩精品 页|