<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免费观看| 黄片wwwcom| 夜色av一区二区三区在线观看| 日韩欧美中文字幕在线点播| 她也色视频网| 亚洲 丝袜美腿| 97超超级碰碰碰| a级黄色毛片 com| 性欧美暴力猛交69hd'| 97se亚洲国产综合自在线观| 亚洲一区久久蜜臀av| 国产自产av一区二区三区1| 久久精品国产精品久久久| 日韩欧美国产二区三区| 中文字幕在线乱码日韩| 久久久久精品av天堂| 久久久久国产免费影院| 在线人成视频网站| 风骚同事高潮嗷嗷叫| 亚洲成人午夜久久久| 久久99精品久久久久久hb亚瑟| 欧码的xl是亚洲码| 色欧美在线视频| 成人日韩欧美精品| 亚洲精品18色成人网www| 日本小视频在线看| 在线视频 亚洲 欧美 国产| 粗大猛烈进出身体高潮在线视频| 久久人人爽人人爽人人片| 被黑人舔高潮| 亚洲国产成八精品久久久久| 国产精品男女啪啪视频| 国产日韩欧美综合二区| 九九视频在线视频精品| 永久免费观看男女视频网站| 在线免费观看 片| 交换夫妇完整版电影| 国产一级一区二区在线观看| 国产一区二区三区亚洲视频| 国产91丝袜熟女| 亚洲,av免费在线播放网站| 在线观看一区二区精品国产入口| 国产国产成年年人免费看片| 成人欧美电影视频| 精品国产一区二区三区| 美女很黄网站在线观看| 免费看日本avapp| 一区二区三区作爱视频在线观看| 香港国产精品国产三级国产aⅴ| 美日韩在线视频| 日韩丶欧美丶国产高清不卡视频| 亚洲一区二区三区av无| 亚洲av福利电影| 狠狠亚洲婷婷综合久久一| 中文字幕三区精品久久| 69网页黄色免费国产视频| 男女下面一进一出在线观看视频| 激情国产视频在线| 亚洲人在线成视频| 国产高清免费黄视频| 亚洲国产精品久久久久…| 免费观看人成影片| 亚洲少妇熟女专区hd| 亚洲中文字幕久热在线| 日韩视频网站www色| 18岁女生毛片| 老妇tvxxx| 在线免费看的黄色网址| 波多野结衣一区二区三区免费观看高清| 国产成人精品在线网站| 久久久久久国产精品精油| 免费观看18禁无遮挡真人网站| 97碰超大香蕉| 国产精品又黄又爽又色| av在线免费看不卡的| 91天堂素人精品系列全集亚洲| 黄网站在线观看高清不卡| 精品一区二区久久久久久| 日本午夜电影二区| 黄色视频免费看的网站| av毛片免费观看的| 老熟仑妇乱视频一区| 欧美黄色特黄电影一极| 国产极品乱码久久久久7777| 自拍视频av| 99re热精品视频免费播放| 精品国产91久久久久久午夜蜜臀| 亚洲精品久久久久久久久久蜜臀| 成人日韩欧美精品| 国国产精品免费| 久久色有精品| 小小影视日本高清| 大香线蕉伊人久久av| 亚洲人成色ww| 免费人成网址在线看| 扒开女人下部添高潮视频| 久久久精品人妻一区亚美研究| 亚洲精品一区二区影院| 中文字幕 久久| 久久精品国产亚洲av电影直播| 91福利午夜影院| 人妻视频一区二区| 国产香蕉在线观看| 男女a级毛片| 亚洲专区 久久| 精品少妇伦理av| 爱像一片宽阔的湖泊| 国产精品99久久久久久成人| 日韩成人av电影在线| 欧美熟女内射观看| 91久久福利国产成人精品| 国产激情在线观看| 啦啦啦www在线观看免费视频| 婷婷久久国产精品免费一区二区| 久思思在线免费观看| 三级伦在线观看| h动漫av一区| 最新国产精品精品精品| 国产全部视频在线观看地址| 国产在线精品免费| 精品无人区乱码在线观看| 国产在精品视频线精品视频| 亚洲精品黑人巨大| 成年黄色免费视频| 日本色婷婷在线观看| 大学生激情野战视频| 精品伊人影院| 日日噜噜噜夜夜爽爽狠狠同性男| 国产精品2021久久| a级毛片免费全部播放视频一区| 草青青视频在线播放| 亚洲码av一区二区三区| 人理片人妻熟女少中文字幕在线| 91香蕉视频色版| av人妻精品久久久久久| 91精品啪av在线观看国产网站| 岛国av最新网址| 久久99国产精品二区| 国产最爽的乱淫视频在线观看| 亚洲在线中文字幕在线观看| 国产亚洲精品午夜一区| 美女在线观看免费视频网站黄的| 69v在线免费观看| 国产婷婷久久99| 亚洲成人区久久| 免费大片看网站在线观看| 在线免费观看黄频| 一二三四视频在线观看社区一中文 | 国家免费a级毛片| 两个人免费看的高清视频| 日产中文幕无线码8区| 精品久热在线视频| 性少妇videoxxx欧美| g8752在线中文字幕观看| 黄频美女视频下载| 精品国产亚洲av麻豆| 久久久久久97精品| 黄色大片a级毛片| 国产精品第44页| 国产又黄又爽又色又粗的视频在线观看 | 精品999国产| 一二三四免费观看在线中文版10 | 欧美精品一区二区精品在线| 国产亚洲另类色综合小说 | 懂色日韩欧美国产亚洲| 少妇裸体淫交视频免观看| 成人亚洲欧美一区二区| 国产精品久久187av| 加勒比女海盗2成版人在线观看| 九色少妇丨porny丨婷婷| 秋霞在线观看av网站| 成人国产精品一区二区免费| 91粉嫩极品国产在线播放| 一级大片黄色的| 极品色影院国产| 久久中文字幕亚洲人妻诱惑 | 我要日本一级黄色片看| 香蕉午夜在线| 91麻豆网站在线观看| 欧美日韩亚洲中文字幕一组| av成人不卡在线| 国产精品人妻人伦毛片| 亚洲福利电影一区二区| sexsex94.com| 亚洲专区欧美日韩| 亚洲福利电影一区二区| 免费观看www一个人在线高清| 99久久www免费人成精品| 亚洲国产成人久久tv| 999精品免费观看| 一个人电影在线看| 国产午夜一级毛片a级| 国产亚洲精品久久久在线| 成人国产精品麻豆网| 精品欧美视频一区二区| 久久久久久久久久久久福利视频| 中文字幕乱码人妻一区二区三区| 成年女人毛片免费观看| 一二三四社区在线高清观看10| 国产av 又色又爽又黄| 97操碰在线观看| 亚洲av日韩av电影网址| 女性高潮喷水视频免费| 日韩在线 码| a视频在线观看不卡| 桃花社区观看| 中文字幕亚洲精品久久久久久| 精品国产91av在线观看| 国产毛片精品一区二区在线| 亚洲成a人线上播放| 国产美女被遭高潮免费| 69人妻人精品一区二区久久| 国产精品中久久久久久久| 蜜臀av久久国产午夜| 亚洲综合日韩伊人| 在线日韩欧美亚洲| av老鸭窝网站| 女人15毛片a级16女人水真多| 东京热免费视频播放| 好男人资源在线观看免费高清| 一进一出gif抽搐| 亚洲天堂av| 欧美午夜精品久久久久久蜜臀下载| 日韩av在线免费观看网| 女人18毛片免费a级毛片| 免费视频片在线观看10| 午夜福利国产美女视频| 性国产日韩欧美精品一区| 欧美日韩成人综合网站| 日韩精品熟女aa久久毛片| av不卡久久| 国产男女搞视频免费看| av在线亚洲观看| 老熟妇乱子伦视频| 97久久精品人人人妻人人玩软件 | 天天免费黄色片视频| 国产日本欧美成人免费视频| 一区二区三区乱码aⅴ| 男女啪啪18禁无遮挡免费| 99久久国产精品免费消防器 | 调教女警察在线播放| 亚洲国产精品成人久久av| 日本午夜影院在线| 国产欧美17694免费观看视频| 精品国产一区二区在线播放| 啪啪啪没有高潮| 久久国产婷婷精品| 亚洲超碰国产欧美日韩| 中文字幕乱码视频人妻| 一进一出gif抽搐| 亚洲伊人网址| 青青草免费在线视频观看| 国产精品久久久久久久亚洲按摩| av片日韩精品| 成人人妻精品| 久久人妻大片| 亚洲v日韩乱码一区二区| 亚洲一区二区日韩在线观看| 午夜福利视频18| 羞羞色国产精品| 99久久久久久久久夜夜爽| 在线成av人网站| 日韩欧美一区国产| 91人妻人人澡人人精品| 欧美乱妇狂野| 日日摸夜夜射| 亚洲av性色在线| 国产原创在线观看一区二区| 99久久国产精品热88人妻| 一区二区国产精品福利| 国产乱了真实在线播放| 女教师免费观看全集完整版| 国产av久久亚洲毛片| 人妻人妻人妻最新在线视频| 欧美日韩一区二区高清视频在线| 国产精品99久久久久久98av| 亚洲福利午夜久久久精品电影网| 国产成人午夜一区二区| 午夜精品视频一区二区在线观看| 国产精品一级毛片一区二区| 国产激情视频一区二区| 欧美成人www免费全部网站| 91久久久久人妻精品| 欧美疯狂受性xxxx视频| 亚洲精品乱码久久久久app| 人成免费视频观看在线| 精品99久久久久蜜桃| 国产欧美亚洲精品久久| 性少妇videoxxx欧美| 久久久久久久一级片| 国产麻豆91av| 亚洲成人日韩电影| 国内精品视频一区二区三区在线免费观看 | 床上30分钟黄色| www.日本高清视频在线观看| 精品国产伦理久久一区二区| 免费看特黄美女视频| av中文字幕精品在线| 男女边摸边吃奶边做爰视频| 欧美变态在线视频| 久久久国产精品.| 99久久国语露脸精品国产| 毛片免费网址在线播放| 国产又色又爽无遮挡免费网址| 亚洲av久久久噜噜噜久久| 道不远人人之为道而远人| 亚色中文av在线| 精品999视频| 亚洲av一区二区夜夜爽| 国产亚洲欧美一区久久久在| 国产免费一区二区三区最新| 久久久久久国产精品一级| 欧美在线精品一区二区三区| 日韩欧美大片免费观看| 欧美日韩一区二区高清视频在线| 久久国产免费福利一区二区三区| 精品一级内射视频| 国产黄a三级三级三级看三级双飞| 欧美日韩乱码高清一区二区| 国产精品一区大片| 99线精品视频| 国偷自产在线视频| 视频一区,二区,小说,图片| 91老司机福利在线观看| av不卡秒播在线播放| 欧美黑人性爽bbbbbb| 巨乳av免费在线观看| 大又大粗又爽又黄少妇毛片老男人妈妈| 亚洲激情av一区| 国产亚洲精品aaaa片app| 女性乳头真人视频| 国产一区激情视频免费观看| 亚洲av在线久久| 国产乱淫视频免费视频| 国产二区一区在线观看| 国产真实野战在线视频| 日本在线黄色视频网站| 日本岛国免费电影| 酒井法子的一级毛片| 一区二区三区午夜免费| 无遮挡裸体网站| 亚洲人成色7777在线观看不卡| 又爽又大又硬又粗又长视频| 久久精品国产亚洲av成人婷婷| 精品香蕉在线| 女人18.毛片水多| av成人不卡在线| .com久久人人| 精品99免费视频| 蜜桃精品一区二区三区| 国产美女福利视频福利网站| 亚洲一区二区三区制服丝袜| 久久九九国产精品视频| 国产福利91精品一区二区三区四区| 懂色av成人一区二区三区| 97久久a 99精品综合噜噜五月天| 午夜激情视频在线观看网址免费| 欧美刺激乱对白视频| h黄色动漫在线观看| 国产成人一区二区三区| 日本最近免费高清观看mv| 日韩国产亚洲av| 色成人在线网站| 国产伦精品一区二区三区精品| 欧美性性性性性色大片免费| 免费一级毛片在线播放放视频网站| 在线巨乳视频| 淫阴视频在线观看| 日韩中文字幕在线视频| 国产精品精品国产精品| 国产在线看色| www漫画在线漫画免费观看| 黑人欧美一区二区三区4po| 看日韩免费高清一区二区三区| 国产精品区一区二在线观看| 中文字幕av无限码| 国产三级95| xxx网站在线观看| 丰满少妇被粗大的猛烈进出| 亚洲一区av二区三区在线观看| www.亚洲自拍偷| 欧美极品巨大黑人hd| 全部毛片在线免费播放 | 啦啦啦啦高清在线观看| 这里只有无套内射视频| 丰满熟妇乱又伦在线观看| 国产精品人妻熟女毛片av久久| 国产精品久久久久久亚洲蜜桃| 国产av精品免费播放| 下面瘙痒有分泌物呈黄色| 亚洲影视婷婷老司机电影院| 中文一区欧美精品日韩| 欧美亚洲综合日韩| 中文字幕日韩不卡久久| 毛片a级大全| 少妇高潮av免费看| 亚洲av老司机在线观看| 99久久久99精品国产片| ysl蜜桃色成人| 国产a∨精品一区二区三区仙踪林| 亚洲成网在线观看| 国产一区二区三区四区播放| 91精品国产91久久综合| 一级a级毛片免费观看| 蜜桃视频18勿进| 99精品久久99精品久久久久久 | 亚洲精华液在线| 在线观看成人av天堂不卡| 三级黄色免费观看网站| 国语内地s级丰满熟女精品视频| 国产麻豆a毛片综合在线| 成人男女黄色视频| 国产亚洲精品a久久久| 色综合久久久久久久久久| 中文字幕人妻一区| av在线观看免费亚洲| 绿巨人在线看www| 成人区人妻精品一区二区不卡图片| 免费毛片一级在线观看| 亚洲av一区二区夜夜爽| 视频在线观看国产| 一个人免费观看片| 波多野结衣在线3区| 亚洲精品国产av电影 | 国产av日韩a∨亚洲av| 人妻18毛片a级毛片免| 国产视频线播放| 午夜免费国产视频| 亚洲av二区三区在线观看| 又黄又爽无遮挡国产刺激| 在线观看av电影网址| 午夜福利永久| 亚洲国产视频线精品视频| 五月天综合欧美精品一区 | 午夜看片高潮喷水| 调教乳头的黄色视频| 日韩av毛片不卡在线观看免费| 精品国产人妻人伦一区| 大香蕉国产在线播放| 亚洲成人码在线免费观看| 日本高清成本人视频一区| 黄上片床大片| gogo西西超大尺度人体艺术| 日本mv网站免费观看| 亚洲精品第一国产综合野草| 日韩国产欧美一区二区精品| 亚洲精品91综合久久| 国产成人麻豆精品午夜在线| 国产女一子一乱一伦| av侵犯字幕在线| 国产成人香蕉久久久久| 中国老妇女人另类视频| 99久久电影视频免费观看| 午夜www久久久| 六月婷婷六月丁香| 国产精品任我爽爆在线播放| 100sese 亚洲综合| 欧美熟另类久久久久精品| 久久精品久一| 国产在线精品免费| 中文字幕 熟女人妻| 在线观看亚洲av日韩av小说| 那种网站在线观看| 久久一级影片| 色男噜噜噜亚洲男人| 黄网站色成年片大免费高清,视频| 人妻中文字幕一区二区在线视频| 丁香色婷婷综合激情| 久久精品国产蜜av高清| 天天干夜夜看| 新版天堂中文8在线| 不锈钢不锈钢卡压式管件厂家| 荐片播放器用不了| 亚洲国产av一二区蜜桃| 少妇裸体交淫视频免费看| 亚洲av影片在线看| 国产在线高清精品1314| 人妻视频一区二区| 尤物久久99精品久久久久久| 亚洲人妻精品中文| 五月综合色丁香| 亚洲av片不卡无久久| 久久免费成人av| 少妇裸体交淫视频免费看| 久久久久精品中文字幕人妻| 成人免费午夜a大片毛片| 欧美黑人性爽bbbbbb| 国产久久久久毛片| 少妇被躁爽到呻吟喷水免费视频 | 特黄特色的大片观看| 欧美日韩国产电影一区| 大香蕉一区二区九区| 亚洲av少妇高潮30p上一片| 午夜亚洲男久久久www| av天堂亚洲手机版| 国产一级黄色大片视频| 韩国三级伦味道在线观看| 粗大猛烈进出高潮免费视频网站| 国产亚洲精品一区二555| 精品一区二区三区少妇av| 亚洲国产精品美女久久久久av| 老师上课跳d突然被放开到最大| 欧美精品一区a二区三区午夜福利| 国产精品免费久久影院| yellow字幕网中文在线最新 | 一本久久a久久精品vr综合| 亚洲精品 国产成人| 亚洲熟妇熟女久久精品综合一区| 久久亚洲精品av成人| baoyu在线观看网站| 国产美女久久久久av| 国产一区二区三区乱码在线观看| 免费播放特一级黄色视频| 俄罗斯一级毛片·| 国产精品久久久久久蜜桃臀| 有什么黄片4视频在线观看免费不卡| 中文字幕人妻丝袜四区六区| 国产精品国产三级国产播| 精品人妻中文字幕一区二区三区 | 成人性网站在线观看| 久久久久中文字幕九九亚洲中文字幕| 亚洲精品68久久久一区| 啪啪啪高潮喷水视频| 国产欧美一区二区精品视频| 国产免费美女日b视频| 在线美女观看| 女人18毛片a级毛片成年| 国产精品熟女一区二区三区不卡| 女猛烈无遮挡性视频免费| 国产一区高清视频在线观看 | 在线观看国产精品亚洲高清黄色二区| 日韩在线观看国产日韩精品| 99国语自产精品视频在| 欧美日韩亚洲国产| 久久精品女人天堂| 日韩欧美一级特黄特色大片| 精品国产自在自线| 日韩高清av影视大全| 国产精品国产一级av| 一级a爱做片观看免费一| av影视免费在线观看| 精品人妻少妇丰满久久久免| 色亚洲成人网| 永久免费黄色视频在线看| 免费人成视频在线观看播放软件| 久久精品国产精品亚洲综合| 成人精品一区二区三区视频| 人妻18毛片a级毛片免| 18女人小正毛片| 黄色片久久久久久| 在线欧美国产成人| 久久久亚洲av成人网人人软件| 国产永久精品大片www综合| 国产精品av一区二区三| 神马伦理午午夜在线观看免费| 熟女人妻の中文字幕| 亚洲精品aⅴ在线播放| 日韩精品一区二区三区蜜桃| 国产精品久久久久久久久夜夜嗨| 欧美卡通第一页| 日韩有码av中文字幕| 加勒比网站在线观看| 免费视频永久在线观看| 四虎av久久| 美丽教师视频免费观看完整版 | 在线免费毛片播放| 女教师3高清在线观看| 蜜桃视频高清免费| 国产成人黄片在线看| 丰满人妻妇伦| 欧美黄色特黄电影一极| 懂色在线免费观看| 中文字幕永久网| 成人精品第一区二区三区| 99精品久久久久久久婷婷蜜桃| 女性高潮喷水视频免费| 少妇的人在线观看| 成人在线a网站| 日本精品久久久久中文字幕| 风骚丰满熟妇| 麻豆av免费网| 男女a级免费视频网站| 蜜桃视频电影| 久久看片综合网| 男人天堂,国产电影| 东京热精品视频一区二区三区| 国产一级毛a看片一级毛免费| 免费一区二区三区日韩欧美| 天堂久久精品一区| 国产精品久久亚洲一区| 久久久...av.com中文字幕| 午夜福利免费电影在线观看| 少妇被爽到高潮喷水久久| 美女秀在线观看| 国产大胆顶级视频在线观看| 日本色婷婷在线观看| 高清av在线| 成人毛片在线免费观看| 和朋友夫妇的交换电影| 国产精品全新69影院在线看| 黄黑皮穿什么颜色衬衫好看| 亚洲人精品av| 全国最大成人网久久| 精品少妇av免费久久| 美女被插到高潮的视频| 国家免费a级毛片| 久久一级电影免费观看| 欧美日韩一卡2卡三卡4卡新区| 丝瓜视频黄片免费| 亚洲国产精品免费内射视频| free性欧美激情sex| av成人不卡在线| 在线视频观看国产精品| 在线一区二区三区四区的| 一级片完整版免费| 人妻熟女かぁ~たん| 日韩熟女少妇| 日夜夜透日夜夜操| 超碰人妻字幕| 日韩精品久久久免费观看四虎 | 成年人免费在线黄色视频| 懂色一区二区三区av| 高清在线观看视频不卡播放| 在线观看成人av天堂不卡| 亚洲aⅴ欧洲av国产| 97资源视频在线观看| 黄色视频免费观看在线网站| 少妇人妻偷人69| 一级毛片免费播出| 裸体裸乳被免费看视频| 欧美色激情婷婷| a级免费视频毛片| 欧美大香线蕉线伊人精品网| 一级a一级a爰片免费免视频| 日韩精品中文字幕免费| 毛片在线看的免费网站| 欧美三级国产三级日韩三级| 国产精品入口蜜桃av在线| 欧美亚洲一级中文字幕| 日日摸摸夜夜添添| 亚洲青青草原国产| 一本色道久久88精品综合| 亚洲国产精品乱码| 亚洲淫会av| 色吧亚洲综合| 天堂av亚洲av| 亚洲最大网站免费在线观看| 国产一区二区三区三级电影| 一区二区成人免费观看| 亚洲av男久久| 国产精华液一区二区| 人妻精品久久久久中文字幕2018| 精品国产白浆一区二区三区| 久久久久久国产一区二| 亚洲大成人www九九久久| 免费毛片av| 超薄丝袜脚交在线观看| 久久精品蜜桃一区二区三区| 看全色黄大色黄女片爽直播| 日韩亚洲欧美字幕| 别揉我奶头嗯~啊视频| 男女裸体无遮挡做爰视频在线观看| 中文字幕精品三级久久久| 91香蕉精品一区二区| 欧美亚洲综合在线中文字幕| 毛片在线一区二区三区| 黑人巨大xxxx高清| 18禁免费网站下载| c亚洲一区二区三区不卡| 国产一区二区三区不卡| 欧美日韩最新一区二区三区| 天天看片高清影视在线观看| 亚洲欧美少妇一区二区| 久久久久久久久精品大| 久久久不卡国产精品一区二区| 最近的2019中文字幕7| 国内一区二区久久| 免费又黄又爽的视频| 男人搞女人视频免费观看| 天堂中文最新版地址在线| 中文字幕在线视频6| 法国多毛熟女视频| 爱豆传媒老a影视| 人妻激情视频一区二区三区免费| 看片久久久久久久| 国产视频一区图片小说| 蜜桃a高清视频| 亚洲国产精品柏久久| 男人舔女人逼高潮视频| 午夜激情在线免费观看| 成人福利观看视频在线播放| 精品国产一区二区三区av性色| 国产一区二区三区刺激视频| 国产精品av国产一级| 国产精品久久久久毛片完整版| 亚洲第一精品久久| 久久九九久久久久三级精品| 成品人视频永久免费观看在线观看 | 神马老电影免费在线看大片| 国产精品成人绯色av禁果| 国产视频福利| 婷婷av去射| 少妇被粗大猛烈进出高潮视频| 香蕉久久sese| 内射18免费视频| 91亚洲中文字幕精品在线| 久久美女av| 日韩亚洲欧美中文| 国产av一二区三区| 国产黄色视频线观看| 亚洲一区日韩欧美中文在线| 亚洲熟女综合色一区二区三区网站| 亚洲综合日伊人| 中文av乱码在线| 国产精品电影久久久| 欧美日韩x8x8视频在线观看| 男人的天堂av手机版| 操女人精水喷出来视频| 麻豆国产传媒61| 日韩网站在线免费观看| 精品人妻在线中文字幕| 国产亚洲精品久久网| 午夜最新福利视频| 看av免费毛片手机播放| 一二三四社区在线高清观看10| 最新国产精品熟女| 桃花社区在线观看免费直播| 黄频视频免费| 91视频亚洲欧美| 久久亚洲熟妇熟女ⅹxxx蜜| 综合视频在线社区| 亚洲av 日韩av不卡在线观看| 内射国产老熟女av| 最近av中文字幕2019免费版| 国产精品欧美久久久久三级| 五月爱婷婷六月丁香色 啪啪| 综合视频在线社区| 国产又黄又粗又硬又大又爽视频| 老司机综合福利视频| 国产99久久久久久久精品| 免费视频内射| 已有111111少妇影院| 成人欧美午夜网| 欧美极品色视频| 精品福利电影在线观看| 亚洲无av码一区二区三区hd| 可以用ok卡的餐厅| 久久久久精品国产亚洲av水蜜桃| 亚洲精品成人久久av| 国产色三级在线| 最近高清中文在线字幕在线观看1| 国产 成人 一区 二区| а√天堂资源官网在线资源1| 91亚洲精品久久久精品| 成人大片精品在线观看| 潮喷喷水合集| 淫靡视频在线观看| 久久99 一区二区三区| 丰满少妇被粗大的猛烈进出| 成人频道一区二区| 成人精品一区二区三区一| 日本精品一二三区免费视频| 极品粉嫩尤物在线播放| 国产毛片a级久久久不卡精品| 久久久久久久特黄毛片免费看| 乳色吐息在线看| 男女下面视频免费看| 亚洲av乱码专区国产专区| 黑人精品巨大| 亚洲香蕉精品在线观看| 国产精品第44页| 日韩国产精品亚洲经典| 五月婷婷丁香六月在线| 综合久久狠狠精品| 美女被人操的视频在线观看| 中国精品videosexhd| 久操视频精品在线| 中国人妻精品一区| 精品国产美女av久久久久网址| 国产精品免费 av片在线观看| 中文字幕成人乱码熟女免费| 国产精品-国产精品久久| 男人添女人下面免费看的视频 | .com久久人人| 亚洲久在线观看| 久久黄色视频一级片| 亚洲精品乱码久久久久久蜜桃不| 巨乳视频在线看| 夜夜除非,好梦留人睡| 麻豆激情四射在线播放视频免费观看| 阴道口痒并且分秘物呈黄色| 成年人在线视频播放| 高潮久久久久久久av福利| 97国语自产视频在线免费观看| 9420在线观看韩国电影| 99久久国语露脸精品国产| 国产一区二区三区精品自拍| 视频 图片 小说| 国产 国语对白 在线| 美女视频黄的都免费| 亚洲av综合色区一区二区三区 | 在线免费播放国产黄色视频| 国产精品福利在线观看不卡| 男生舔美女奶头视频| 一级av打炮片| 少妇视频毛片| 蜜桃av免费看| 美人妻连裤袜内射中文字幕| 国产禁忌乱偷在线观看全部1| 一个人在线观看视频高清www免费| 黄频视频免费| 国产免费xx视频| 下体在线免费看视频| a激情视频永久免费观看| 亚洲精品午夜久久久久久久久中文 | 91久久婷婷人人澡人人澡| 成人日韩在线| 欧美亚洲一区二区日韩激情| 极品激情av| 精品成人av一区二区三区,国产无套| 欧美十日本十国产αⅴ在线| 成人国产av精品免费软件| 99久久久99精品国产片| 一级做a爰片久久毛日本| 精品人人做人人爽久久久| 欧美最新一区二区三区| 欧美色午夜视频| 粗大猛烈进出高潮免费视频网站| 99久久精品免费官网宅男| 我和岳互交换夫妇中能4pwxx| 免费播放亚洲av| 在线观看a的免费网站| 观看女人免费视频| 国产在线天堂男人va| 日韩一卡二卡3卡四卡2021精品| 在线观看日韩欧美大片| 日产二卡三卡四卡| 偷拍另类亚洲欧美| 久久日本中文字幕| 啪啪动态图27| 求可以在线观看的不卡黄色av网站| 久久av喷吹av高潮av欧美网| 青青草原之久久免费看| 成年人在线视频播放| 国产亚洲中文字幕在线| 日本在线免费入口| 欧美av不卡免费在线观看| 在线免费播放av不卡| 丝袜美腿制服诱惑欧美激情一区| 在线免费观看av视频网站| 一级黄色录像在线看| 一个人看的片在线观看免费观看 | 国产一级一区二区在线观看 | 久久精品成人免费不卡| 青青草原官网5| 台湾午夜a级理论片在线播放| 亚洲国产日韩欧美精品一区二区| 看一级黄色片一级黄色片| 人妻中文字幕一区二区在线视频| 日韩欧美亚洲综合一区| 高清大片在线免费观看| 欲女高潮久久久久久久久| 新版天堂资源在线中文8| 乱色完整视频在线观看影片 | √天堂中文www官网在线| 午夜激情在线免费观看| 99久久夜色精品91av久久久久| 啪啪啪动态图免费看| 久久人人爽精品| a√天堂官网在线| 扒开双腿猛进入爽爽免费视频| 欧美成人综合一区在线| 国产高清女人对白av在在线| 电影在线观看一区二区日韩| 999人妻蜜桃| 久久亚洲国产中文精品| 国产一级二级三级精品一级在线| 最近免费中文字幕大全高清10| 成人在线a网站| 边吃奶边摸下面| 亚洲熟女午夜福利在线观看| 亚洲国产精品久久久天堂| 国产成人一区二区三区综合| 国产成人久久一区二区| 国产精品果冻传媒在线| av网址亚洲| 国产精品免费观看不卡av| 日日摸日日碰夜夜爽免费文字| 老女人黄色片免费| 午夜伦理一区二区三区在线观看| 日本不卡在线视频一区二区三区 | 啊好大视频在线观看| 蜜桃亚洲av1区二区三区| 久久高潮流白浆免费观看99| 久久夜色国产精品亚洲av| 黄片免费观看视频免费观看| 婷婷视频在线最新网址| av天堂av天堂| 久久亚洲国产中文精品| 亚洲国产精品美女久久久久av| 天堂a√在线中文在| 国产永久伊人影院| 99在线精选视频| 日本激情高清版免费视频| 图片区视频区小说区综合| 天堂网av最新在线| 欧美xxx性老太婆| 第一市场导航| 99热这里只有精品最新地址| 少妇裸体淫交视频免费看| 午夜一区二区免费看| 又长又粗又爽黄色毛片| 床上激情黄片| 操黑丝高跟在线| 精品久久久久久亚洲综合网麻豆| freefrontvideos性欧美| 久久久久久国产一区二| 在线观看一区日本| 不卡av免费在线看| 色撸撸男人天堂| 国产一区二区a毛片| 久久久免费午夜视频| 欧美乱妇狂野欧美在线看| 国产毛片不卡野外视频| 在线观看av不打码| 日韩成人av电影在线| 精品特黄aaaa片在线观看| 日本色免费在线视频| 宝宝边吃奶边放屁怎么回事| 一级毛片对白刺激国产| 91视频亚洲欧美| 韩国伦理观看| 国产精品片av在线观看| 熟女老妇300部| 国产很黄很色很爽免费视频 | 国产av巨版色婷婷| 2021精品国色卡一卡二| 免费av在线h| 欧美日韩港台三级视频| 男人的天堂国产av| 黑人巨根操美女| 亚洲熟女av一区| 葫芦娃在线观看网站| 国产乱理伦a级片在线观看| 美女扒开内裤免费视频| 精品在线欧美一区二区| 亚洲卡一卡二卡三卡四卡五| 亚洲国产在线视频精品| 99re在线视频观看免费| 91久久久久久久蜜桃| 少妇视频免费| 97超碰在线播放视频| 最近免费中文字幕2019| 女人下面免费观看视频| 亚洲欧美日韩中文字幕二区| 国产精品久久久久一区二区| 免费无遮挡黄h漫画在线看| 边吃奶边哭怎么回事| 91粉嫩极品国产在线播放| 日韩欧美在线aⅴ| 黑人操美女逼逼| 中文字幕2020永久在线| 久久99精品一久久久久久小说| 精品欧美第一页| 国产综合在线色| 午夜精品福利在线观看国产| 国产精品久久久精品影视 | 亚洲欧美丝袜另类在线| 欧美情色国产精品| 日本亚洲黄色视频高清| 制服诱惑 一区| 精品久久-国产av| 美女视频免费看黄| 国产成人51精品午夜福利免费| 欧美精品一区二区99| 视频在线观看中文字幕| 欧美人与动牲交a免费观看| 天天想夜夜干| 国产欧美日韩综合在线观看一区二区 | 中文字幕日本在线乱码| 国产又黄又爽又色又粗的视频在线观看 | 国产91精品不卡在线观看| 99久久九九免费热视频| 亚洲av成人精品波多野结依| 性高湖久久久久| 亚洲综合av久久国产精品| 超薄丝袜交口足| 人妻偷人在线| 久久这里只有精品国内精品| 久久精品中文字幕女同| 在线观看亚洲精品国产二区欧美| 97久久久超国产精品| 亚洲精品成人影院| 制服丝袜 av 在线| 午夜久久99| 午夜福利高清不卡| 香蕉av专区| 成年美女视频在线观看| 黄色视频免费观看在线网站| 高潮喷水在线免费视频| a√天堂地址在线| 欧美一级毛片免费高清aa| 久久婷婷国内综合精品青草| 人妻少妇福利视频| 成人欧美国产一级三级视频| 黄色片免费成年人狂操女人| 欧美午夜av| 福利永久视频| 久久久久久91蜜桃| 久久精品噜噜噜成人av小说| 在线看片 日韩| 在线播放av亚洲| av午夜福利在线观看| 啊好大视频在线观看| 久久中文字幕人妻制服| 成人二区二区久久亚洲| 亚洲国产成人一区二区| 欧美z002变态另类| 精品国产电影网九九久久| 高潮久久久久久久av福利| 蜜桃av国产精品久久久| 在线天堂中文在线资源| 麻豆国产av精品| 嫩草影院专区一| 久久久久久久久久精品免费视频| 久久午夜码鲁丝片| 老女人黄色片免费| 色六月丁香婷婷综合| 国产老熟女xxx| 97中文字幕视频在线观看| 国产精品人妻熟女毛片av久久| 美女视频网站国产| 精品国产香蕉视频| 精品久久久久精品亚洲| 成人女人女片免费播放| 夜夜笙歌伴娇媳| 亚洲天堂好色av| 天堂√中文最新版在线8| 日韩精品 欧美精品| 国产成人午夜大片一区二区三区| 97精品国产爱久久久久久| 成人在线小说高h| 黄片应用免费下载观看| 国产最爽的乱淫视频在线观看| av在线播放亚洲电影| 人妻系列中文字幕| 波多野结衣人妻3区| 粗大的内捧猛烈进出小视频| 免费看黄色av网址| 古装一级毛片视频| 波多野结衣 人妻电影| 国产黄色a三级三级三级| 91精品人人妻人人做人人爱| 女人成黑免费观看完整版| 成人毛片18女人毛片免费视频未| 久久久成人精品av四区| 亚洲av少妇高潮30p上一片| 国产精品欧美久久久久人人| 午夜精品久久久久久久第一页下载| 老司机午夜福利片| 不卡视频免费观看网站入口| 亚洲天堂久久精品成人| av在线不卡免费观看高清| 国产精品宅男电影| 91亚洲人人| 非洲黑人粗长大战亚洲女| 青春草视频久色视频免费在线观看| 欧美人与兽xxx| 女生高潮视频免费在线观看| 最近免费中文字幕高清大全 | 与亲女洗澡时伦了毛片| 99久久久亚洲精品| 两个人在线观看的www视频| 亚洲国产日韩综合一区| 亚洲av综合一区久久久久| 青草草在线观看| 人妻av中文系列| 男女嘿咻嘿咻动态gif图| 男人爆操女人视频黄| 国产精品精品三级| 久久精品三级av| 啊好紧好大丝袜美腿| 亚洲人成日韩中文字幕不卡| 亚洲欧美图区偷拍| 亚洲精品国产欧美在线一区二区| 97超超级碰碰碰| 看黄色片有什么影响| 老妇女伦乱片| 一区二区 影院| 精品国产理论在线观看| 最新午夜福利色羞羞| 久久免费电影观看| 国产成人精品福利一区二区| 日产1卡2卡三卡4卡网站老狼 | 小说区视频区图片区| 一个人看www片免费中文| 午夜福利电影在线| 午夜片神马影院福利| 亚洲av日韩aⅴ欧美av国内| 99精品国产成人综合| 精品国产美脚玉足在线观看| 一本久久综合| 丝袜999.av亚洲制服| 夜夜爱夜夜爽夜夜做| 久久久久久久久久午夜福利| 三级黄色大片播放| 久久久精品夜夜| 在线播放免费人成视频| 欧美黄片大尺度| 久久久不卡国产精品| а√天堂在线中文网| 中文字幕一区二区人妻中文| 在线观看国产人视频| 日本高清一区二区三区在线| 葫芦娃在线观看网站| 成人精品一区二区三区一 | 国产精品欧美激情一区二区三区 | 国产自拍福利视频在线观看| 中文国产日韩欧美二视频| 国产黄片视频在线免费播放 | 中国小仙女视频一区二区三区免费观看 | 久久精品国产亚洲无套av麻豆| 一级a一级a爰片免费免视频| 欧美日韩中文字幕在线免费| 成人久久精品免费观看| 人妻のav波多野结衣| 久久婷婷人人澡人人爽人人喊av| 波多野结衣二区在线| 婷婷综合激情亚洲| 日本特黄特色aaa大片| 在线观看国产日本欧美| 噜噜噜成人av| 国产对白在线观看| 欧美日韩亚洲国产综合在线观看| 免费看黄片逼| 久久精品av成人网| 色偷偷亚洲人的天堂| 亚洲精品高清av| 熟女老妇300部| 婷婷在线播放观看| 老师上课跳d突然被放开到最大| 蜜桃精品一区二区三区| 91视频亚洲欧美| 一级a爱片高清免费| av大片一区二区| 97在线观看精品视频| 国产精品中文久久久久久久| av在线影院观看| 性感美女脱光内裤让人捅视频| 日日摸夜夜添夜夜添爱视频| 色播在线亚洲| 亚洲美女久久久| 夜夜春少妇欧美| 亚洲第一欧美另类| av有码网站| 被黑人破处视频| 激情欧美亚洲一区| 在线a亚洲老鸭窝天堂丁香五| 男男又爽又黄又无遮挡网站 | 久久久久久久激情视频| 久久碰国产一区二区三区| 亚洲av天堂精品午夜色| 国产又又色又爽三级视频在线| 不卡的高清av| 国产高清在线看| 国产精品一区18p| 精品午夜福利影院| 亚洲中文字幕av电影在线| 岛国av男人天堂| 国产精品密蕾丝视频| 在线观看国产三级视频| 久久久国产精品com| a级毛片黄片免费观看| 亚洲精品爱久久综合国产| 久久中文字幕导航| 午间影院好男人视频在线观看| 免费一级老女人片| 99精品久久99精品久久久久久 | 久精品中文字幕热视频| 99热这里这有精品| 免费人成视频在线免费观看| 国产成人免费一区二区三区影片| av不卡在线观看网站| 亚洲日本免费不卡一二三区| 在线av免费视频观看| 日本一区二区三区免费网站| av国产在线观看一区二区| 电影区图片区小说区| 日本av精品一区二区三区| 天堂8在线中文在线| 成年女人站免费视频| 久久99精品国产麻豆婷婷| 欧美极品videosvideo| 性精品18videosex| 午夜免费福利亚洲| 国内精品自线在拍精品| 两个人看的bd视频| 午夜影院免费版在线观看| 欧美成人精品中文字幕四十三页| 欧美精品一区二区精品在线| gogo少妇大胆西西人| 97精品国产97久久久久| 91精品电影网午夜鲁丝片| 欧美性狂猛xxxxxbbbbb| 久久影院国产精品| 国产精品久久亚洲av| 国产嫩草影院免费区| 大香蕉一区二区九区| 青青草原官网5| 99精品国产一区二区三区电影| 日韩免费在线观看av| 日韩亚洲一区二区一级在线观看| 久草加勒比视频| 国产69精品久久久久9999不卡 | 观看免费黄色毛片| 免费一级片在线播放无需下载 | 国产精品黑色丝袜高跟鞋| 欧美日韩一区发布| 视频一区视频二区三区| 亚洲欧美在线国产| 日本av一区二区电影| 一级a爱片免费看的视频| 美日韩中文在线一区二区三区| 亚洲欧美日韩综合另类第一页 | 精品人妻波多野结衣一区| 国产男同gay亚洲男男片| 欧美日韩在线观看一区二区| 国产精品久久久久影院亚瑟| a级孕妇高清免费毛片| 性感美女脱光内裤让人捅视频| 国产黄片视频免费在线观看| av在线免费看不卡的| 简单av永久免费观看| 日本电影w丰满的欲妇| 日韩在线视频一区二区| 成年女性毛片免费视频大全| 国产一区二区在线在线| 一区二区三区黄页视频| 欧美视频淫片在线免费观看| 好看av亚洲ⅴe欧美v| 中文官网天堂在线看| 裸体裸乳被免费看视| 天堂资源天堂资源在线| 日韩在线视频中文字幕| 特级做a爰片毛片一免费看| 国产二区精品视频| 大片视频观看免费| 欧美色淫视频| 国产片免费视频| av不卡国产免费观看| 国产精品三级电影在线播放| 国产午夜一区二区在线| 一边摸一边抽搐一进一出69| 精品国产乱码91久久久久久| 亚洲自拍av视频| 亚洲熟女av综合| 男女做爰高清无遮挡免费视频网站| 国产一区乱码精品| 男女无遮挡羞羞视频免费播放| 日本高清视频下载| www.中文字幕有码| sim卡被移除| 成人黄网站免费视频性色| 一二三四在线播放视频社区5| 亚洲123精品| 99re视频在线观看99| 亚洲精品久久国产小说| 久三级精品视频在线观看| 大香蕉一区二区九区| 少妇做爰在线观看| 男生插入女生阴蒂视频在线观看| 国产亚洲精品久久久一区二区三区| 日本高清不码一区二区三区| 又粗又长又大又爽的黄色视频| 熟女人妻av不卡中文字幕| 久久我们这里只有精品国产4| 久久人人爽人人爽从片av高清 | 边摸边吃奶边做我喜欢| 日韩在线观看高清| 亚洲精品乱码久久久久久小说| 久久久国产精品com| 国产一区二区三区精品自拍| 亚洲欧洲日产综合综合| 图片区视频区小说区综合| 1024av香蕉日女人b| 香蕉乱码成人久久天堂爱| 99 这里只有精品| 日韩欧美另类久久久精品| 国产亚洲av嫩草久久久影院| 黄国产在线视频| 欧美人妻中文字幕乱码在线| 亚洲天堂精品国产| 成人国产av精品蜜臀论坛| 99国精品午夜福利视频| 又爽又黄又激烈又免费的国产视频| 日本视频网站www色高清免费| 午夜福利精品在线| 年轻人爱看大片| 丰满美女被多人揉捏| 精品人妻中文字幕一区二区三区| 一个人www在线观看高清免费| 少妇人妻偷人精品一区二区99| 又猛又色的视频www| www高清在线观看免费| 男女一边摸一边做羞羞的事情免费| 国产日韩av免费不卡在线观看| 日韩经典中文字幕亚洲欧美| 和朋友夫妇的交换电影 | 亚洲国产精品一二三四| av电影在线观看网站一区二区| 亚洲中文字幕在线7| 亚洲av成人国产| 大香蕉av一级毛片免费| 一本色桃子精品久久中文字幕| 三级黄色三级免费看| 男人的天堂av久久| 久久天天躁狠狠躁夜夜躁免费观看| 老司机精品视频91| 亚洲无av码一区二区三区| 国产在线av视频一区二区| 欧美精品视频在线观看亚洲| 国产精品sexvideos性| 亚色中文av在线| 欧洲大片免费在线观看| 中美日韩av在线| 久久久久久久久久久逼 | 国产成人a高清在线观看| 国产av精品久久久网址| 懂色国产又黄又猛| a黄色视频在线观看| 人妻精品久久久久中.| 久久成人亚洲精品中文字幕| 国产精品v欧美精品v日韩下载| 极品少妇sexvideos| 啦啦啦在线免费观看www| 精品中文字幕资源网站大全| 亚洲午夜av久久久久久| 羞羞视频蜜桃| 亚洲呀黄片123.| 男人av天堂手机版| 国产香蕉美片在线观看| 久久精品中文| 国产99一区二区在线观看| 日本av片在线视频| 中文字幕av在线电影网站| 国产一区二区三区激情视频| 91熟女影院| 国语对白超碰| 网站,在线观看| 美女双飞高潮直喷水在线播放| 最近最新中文字幕2019| 黄片久久久久久久久久| 韩国伦理片一区二区三区四区| 天堂8中文在线新版官网| 国产精品久久黄妖精| 亚洲成色aa| 国产一级久久久久久毛片精品| 久久频精品久久香蕉国产| 又黄又湿又爽又粗又肉的视频 | 边吃奶边扎下面动态| 性做久久久久免费观看| 亚洲国产日韩三级| 色撸撸男人天堂| 在线观看日韩欧美大片| 创世纪2在线观看国语字幕完整版| 激情偷乱人伦在线| 成人国产av精品蜜臀下载| 成年免费毛片 在线播放| 亚洲1314xxx| 亚洲av一区二区三区精品| 永久视频在线观看网站| 精品91久久蜜桃av| 国产成人精品亚洲区| 国产a级毛片久久久久久精哥| 波多野结衣的人妻生活| cliv精华| 77人人妻人人澡人人爽欧美一区| 美女被破处国产在线| 亚洲av综合一区久久久久| 午夜激情在线免费观看| 成人青精品视频99在线观看免费| 中文字幕人妻少妇在线视频| 亚洲av网在线观看.| 亚洲av老司机在线观看| 黄色 在线观看| 两个人看的ww免费视频| 亚洲欧美国产精品日韩| 午夜a v免费观看| 小萝莉的嫩嫩的乳头| 久久久国产精品.| 老鸭窝免费在线观看| 99热这里只有精品19| 国产噜噜噜噜久久久久久久久| 国产av精品天堂| 中文字幕视频精品| 精品一卡2卡3卡4卡新区在线| 国内精品久久毛片一区二区| 久久一区福利午夜| 午夜影院国产版| 中国少妇与黑人xxxx| 在线观看亚洲精品国产二区欧美| 黄色毛片在线免费观看| 中文爱爱av| av不卡熟女| 国产精品爽爽久久久久久影视| av中文字幕熟女| 久久高清中文字幕乱码播放毛片| 国产免费美女日b视频| 黄色视频网站在线观看高清不卡| 欧美一区二区三区精品在线| 草免费观看视频| 蜜桃久久精品| 男人添女人下面免费看的视频| 51午夜福利在线| av天堂2018在线| 调教乳头的黄色视频| 中国美女a级毛片| 欧美日韩视频高清在线| 日韩欧美国产高清极品| 18女人小正毛片| 国产 欧美 日韩免费| 亚洲精品乱码久| 国产人妻精品一区二区三水牛 | 午夜精品久久99蜜桃最新版| 午夜看片高潮喷水| 欧美有码一区二区三区| 久久草狼人综合| 24小时日本观看视频免费下载| 啦啦啦在线观看免费完整版| 国产成人色电影在线播放 | 日韩精品亚洲第一页| 成人性生交大片在线观看| 久久国产一区二区三区不卡| 久久精品亚洲一毛片| 国产在在线免费观看视频| 老汉影院一区二区| av久久www| 少妇人妻偷人精品免费视频69e| 一级a爱片免费看| 亚洲 欧美 日韩 在线 国产| 成人在线免费电影国产精品| 最近2019中文字幕大全高清版 | 一区二区三区日韩在线免费观看| 久久人人爽人人爽人人片av超碰| 成人av影视久久| 日韩av电影天堂一区二区| 国产在线av视频一区二区| 敢死队4在线观看高清完整| 欧美成人午夜18禁视频| 人妻丝袜中文字幕在线播放| 久久爱在线中文字幕| 欧美区亚洲区日韩区国产区| 亚洲电影91av| 又粗又硬又黄又爽的免费视频,| 久久久久久国产影院| 美国黑人狂操美女在线视频 | 好男人在线观看免费播放视频| 一个人在日本看www| 国产欧美日韩一区二区三区,| 饥渴少妇高潮喷水在线观看| 男人在线视频免费观看| 婷婷精品国产a久久综合| 啦啦啦视频在线观看日本| 精品一卡2卡三卡4卡免费| 午夜福利亚洲天堂av| 国产一区二区电影在线观看| 国产精品免费观看在线网站| 永久av在线播放| 国产在线视频一区 二区| 国产野战在线看| 国产熟女精品乱| 国产av 又色又爽又黄| 国产日韩欧美综合二区| 成年人黄色视频免费软件| 销魂丰满老熟妇69| 裸体无遮挡图片| 国产精品综合久久爱| 日韩人妻精品一区二区三区,| 又黄又爽又色无遮挡18禁免费看| 好男人在线观看视频高清完整版| 国产日韩av免费不卡在线观看| 成午夜精品一区二区三区精品| 国产欧美日韩一区二区三区,| 男人天堂av中文字幕| 日本大香线蕉线伊人久久| 国产美女高潮抠逼91| 久久夜av免费麻豆| 久久久久亚洲av成人人| 天天搞b天天爽夜夜爽| 99精品国内在线视频| 神马伦理午午夜在线观看免费| 水蜜桃精品在线视频| 精品av午夜| 欧美熟妇呻吟猛交xx性丨| 高清欧美牲交精品videossex| 久久这里全是精品| 日韩av短片| 亚洲精品一区二区成人| 国产 高清 亚洲| 丰满少妇偷人视频在线观看| 亚洲午夜理论片久久久久| 男人搡女人的免费视频| 一个人观看wwe免费电影| 久久成人免费视频播放| 韩国伦理电影母女 | 高清成人爽a毛片免费看一级| 2021中文字幕在线播放| 五月婷婷丁香在线看| 午夜男女ⅹx00视频福利| 国产麻豆剧传媒精品国产av蜜桃| 特黄特色的大片观看| 丁香色婷婷激情五月| 搡老熟女老太老女人| 中文字幕av免费一二专区| 久久亚洲熟妇熟女ⅹxxx蜜| 色爱亚洲综合网| 处破视频一区二区三区| 成人黄色免费无毒网站| w隐婚后,影帝夜夜缠着我官宣》| 少妇被爽到高潮喷水在线播放| 一级大片全黄| 成人性网站在线观看| 男人的天堂网址色偷偷| 久久99国产亚洲高清观看| 又大又黄又免费的视频| 手机看片盒子福利永久| 一级a一级a爱片免费高清视频| wwww黄视频免费| 亚洲综合伊人| 色诱惑天堂亚洲av| 久久一区二区三区中文| 亚洲人成色7777在线观看不卡| 嗯……啊免费摸奶头视频| 亚洲av色综合| 精品久久久久久中文人妻| 亚洲人妻高清久久中文字幕| 国产精品一区二区精品视频| 国产精品成年人在线观看| 成年av动漫在线| 看黄色的一级片| 久久久久视频观看| 男人的天堂av亚洲一区2区| wwwxxxvideo欧美| 日韩国产中文字幕有码| 西瓜大片免费在线观看| 97人妻碰碰免费视频网站| 亚洲人成777777| 欧美最新另类z0zqm| 狠狠躁夜夜躁日日躁2022西西| 国产亚洲aⅴ在线观看| 欧美日韩电影网址不卡一| 毛片高清免费播放| 精品成人av一区二区三区,国产无套 | 人成精品系列视频在线免费播放| 国内少妇高潮嗷嗷叫在线播放 | 99视频国产精品免费观看| 国产精品欧美精品日韩精品| 国产亚洲精品久久久久久网| 日韩大片一区二区三区av| 成年av动漫网站大全全| 最近最好看中文字幕免费| wwwav少妇| 国产熟女乱一区二区| 床上激情大片| 日韩av一区二区三区在线观看| 精品人妻一区二区久久久久la爆| 日本一本二本三区中文高清| 欧美成人亚洲精品| 婷婷人人爽人人片| 九九久久99综合一区二区| 性生交大片免费9| 国产91高跟丝袜| 免费看特黄美女视频| 一个人看的www片在线高清中文| 亚洲精品久久久久久一本婷婷| 日本一区二区三区四区有码视频| 99精品国产综合久久久久五月天| 日本免费网色视频在线| 亚洲综合色视频在线播放| 亚洲av丰满熟妇一区| 亚洲av男久久| 美女视频免费要黄的| 人妻中文字幕精品系列| 63国产av精品在线| 成人公开黄色小视频| 午夜福利啪啪精品| 国产av全部| 全色黄大片一级aaa片pc| 一区二区三区中文字幕乱码| 亚洲av日韩av天堂一区二区| 久色国产综合| 精品午夜福利视频| 夜夜欢爱夜夜爽视频| 波野多结衣片子| 福利一区二区午夜| 在线视频精品一区二区三区 | 国内福利在线视频| 亚洲精品国产乱久久久久久| 国产精品色呦| 欧美成人性生活毛片| 亚洲欧美影片一区二区三区| 成人午夜视频免费在线| 日韩高清精品视频在线| 女子高潮喷水免费视频| 在线免费av网址观看| 成色综合网站在线观看| 亚洲国产在线精品自产拍影院| 人妻视频一区| 亚洲美女视频黄网站| 麻豆久久久久国产精品| 毛片在线看的免费网站| 久久久久av入口| 秋霞av在线播放| 丝袜高跟熟女 国产精品| 波多野结衣一区二区三区中文在线| wwww.xxxx亚洲| 成年人的毛片视频| 欧美成人午夜网站| 日韩国产色在线网站| 人交配视频免费在线观看| 999热在线视频精品| 成人午夜视频免费在线| 奸臣中文字幕在线观看| 欧美午夜精品在线| 91国产91精品老司机在线观看 | 久久一级影片| 亚洲av少妇熟女综合网岳| 波野av在线播放| 99久久亚洲精品日| 激情国产一区二区三区在线| 最近的2018中文字幕免费视频| 欧美成人午夜大片| 日本岛国18禁v片免费网站| 亚洲精品123| www亚洲一级av仑片| 欧美性猛交xxxx乱大交了| 国产精品99久久免费黑人| 久久亚洲国产中文精品| 国产精品毛片久久久久久久久| 国产精品欲久久| 中文字幕人妻高清乱码性色| 精品大香蕉九九| 18禁高潮娇喘喷水| 精品国产亚洲av久一区二区三区| 快播黄色毛片| 亚洲综合久久最新一区| av免费看亚洲| 欧美美女极品免费完整版| 韩国片亚洲精品一区| 国产久久久久毛片| 免费看一级毛片在线播放| 天堂 在线最新版官网| 国产在线视视频| 91麻豆人妻少妇精品| 久久中文字幕精品三级| 红桃视频在线免费观看视频永久入口| 国产麻豆91av| 日韩欧美国产一区日韩欧美| 亚洲xxx久久| 国产精品电影久久久| 夜夜青山入梦来| 99亚洲欧美国产| 中文字幕精品三级久久久| 在线看片网站国产| 国产精品正在播放| 国产视频一区图片小说| 西西gogo大胆人体艺术在线看| 凹凸日日摸日日碰夜夜爽99| 中文字幕av久艹人妻在线| 亚洲精品字幕久久久久| 午夜精品久久99蜜桃最新版| 中文字幕成人乱码熟女免费| 丰满少妇无套内射免费| 天堂的张望免费高清在线观看| 亚洲444kkkk在线观看| 白带成乳黄色| 熟女人妻制服诱惑中文字幕 | 亚洲av网站不卡| 亚洲av福利永久看片| 天堂√最新版中文在线网| 色婷婷av一区二区三区免费观看| 天天看片a免费观看| 99线精品视频| 亚洲视频大全在线观看| 日韩综合一二三区| 成人在线视频中文| 国产亚洲精品一区av| 欧美日韩高清在线观看 | 久久精品国产一区二区三区演员表 | 久99精品久久久久久国| 日本黄色av毛片| av电影二区在线观看| 97国产精品久久| www.琪琪色.com| 国产精品美女久久久久久av爽| 18禁网站免费在线观看| 亚洲精品久久久日韩美女图片| 国产精品久久国产国精品麻豆| 午夜高清视频在线观看| 中文字幕日韩不卡久久| 老司机午夜福利在线| 国产丰腴熟妇激情视频| 女人被男人添出来高潮吗视频| wwwxxxvideo欧美| 女人一级生活片| 啊好大视频在线观看| 在线观看高清动漫的网站| 久久一级黄片免费看| 1卡2卡三卡4卡免费日韩| gvchinasex| 最新亚洲av天堂| 国产一国产一区在线视频| 久久香蕉国产线观看精品yw| 国产精品久久久久久久影院老熟女 | 国产美女足控丝袜黑色高跟鞋| 日本特黄色视频网址| 新版天堂中文8在线| 97视频在线观看午夜| 高潮喷水在线免费视频| 山外人精影院| 欧美精品videosex精品 | 最近中文字幕2018高清视频| 免费在线观看男女视频| 久久精品成人一区二区三区蜜臀| 日韩av麻豆精品| 九色视频在线观看网址| 欧美日韩亚洲区播放网站 | 神马国产精品影院| 亚洲国产精品成人久久av| 亚洲精品爱久久综合国产| 人妻少妇精品视频三区二区98| 亚洲综合图片区色| 久久久久99精品国产片精| 毛片三级av| 国语内地s级丰满熟女精品视频 | 日韩欧美在线观看一区二区| 愿我如月卿如星,夜夜流光伴风清 久久99国产综合精品女同 | 成年人一级片在线观看视频| 蜜桃成啪啪视频| 欧美久久精品中文字幕一区二区 | 一边摸一边亲视频| 日本av一区二区电影| 亚洲国产精品不卡| 午夜福利新视频| 想看黄色三级毛片| 欧美乱妇高清无乱码视频在线| 97在线观看视频欧美| 18岁女人毛片一级免费高清视频| 亚洲av四区| www,免费在线观看| 亚洲avcom| 好男人在线观看视频免费播放| 日本在线免费入口| 国产久色视频在线| 亚洲va在线看| 亚洲av i在线| 自拍偷区亚洲综合精品| 97碰超大香蕉| 久久99精品一久久久久久小说| av偷拍亚洲一区二区三区| av亚洲中文一区二区三区| av在线播放最新| 国产全部视频在线观看地址| 人妻超级碰碰碰| 美人妻连裤袜内射中文字幕| 上司侵犯人妻中文字幕| 国产在线观看一区二区视频| 99久久精品国产一区| 午夜avwww.| 久久精品国内免费视频| 日本免费一本一二区三区| 日韩国产精品亚洲经典| 国产成人一区二区三区综合| 中文字幕ganav在线| 国产极品美女高潮在线观看| 人妻熟女中文字幕丝袜| 亚洲嫩草研究院在线观看| 久久久久久精品毛片a级蜜桃| 每日更新av高清不卡在线观看| 伊人久久亚洲综合精品| 久久精品国产亚洲77777| 午夜高清视频在线观看| 大便从黑色变成黄色| 精品99免费视频| 男女性姿势视频大全在线观看免费观看| 999久久精国产精品| 国产精品精品一区二区三区www96| 国产亚洲精品美女| 亚洲视频在线观看视频免费| 未亡人熟女人妻丰满乱| 在线丝袜美腿| 人妻熟妇88av| 精品成人亚洲av麻豆| 亚洲无人区乱码中文字幕| 国产麻豆全集| 九色porny视频网站在线观看| 黑人巨精高潮啪啪视频| 欧美中国少妇xxx性高请视频| 91亚洲中文字幕精品在线| 国产乱子伦刺激在线观看| 两个人高清视频免费看| 久久狠狠高潮亚洲精品小说| 欧美图片日本另类视频| 视频在线观看中文字幕| 聊斋一级在线毛片| 久久激情av资源| 国产精选一区二区三区不卡催乳| 亚洲欧美日韩中文视频| 亚洲 精品一区| 亚洲和日本视频| 为什么少妇水多| 国产精华液一区二区| 欧美乱妇狂野欧美在线看| 国产精品999久久久| 亚洲xxxx日韩| 国产精品久久九九av| 亚洲精品黄片在线| 日韩国产欧美综合...| aⅴ免费中文字幕| 高清日本熟女| 人妻系列专区网站一区二区三区| 裸体裸乳被免费看视频| 黄片成年视频| 久久大香萑太香蕉av| 一卡二卡三卡亚洲| 日韩 色 视频| 亚洲欧美成人午夜| 中文字幕久久激情亚洲精品| 国产精品久久国产三级国| 日韩中文字幕人妻熟女人妻av| 欧美成人特黄级毛片| 久久这里只有精品国产99| 免费a级毛片老熟女| 嗯啊嗯啊黄色在线观看视频网站| 最近免费中文字幕大全高清10| 披荆斩棘的哥哥高清在线观看| 艹逼视频欧美| 男人免费观看的视频| 女生高潮被爽呻吟视频在线观看| 两个人视频怎么录下来| 国产精品的视频| 午夜影院不卡在线观看| 天堂中文在线a| 日日碰夜夜碰| 一本大道久久久久久久精品| 亚洲中文字幕永久无线码 | 亚洲精品国产欧美| 在线观看色哟哟| 欧美黄网站色视频免费看的| 日本黄色av毛片| 日韩av电影一区二区在线观看| 国产日韩av.com| 亚洲人成网站在线播放影院在线| 久久人妻少妇全集| 免费观看a一片| 两个人的视频完整| 日韩老熟妇乱子伦牲交视频| 欧美色乱论视频| 精灵四姐妹夜夜待笙歌| 在线观看视频看看| 国产精品尤物在线观看播放| 又硬又粗又爽黄色视频| 又长又粗又爽又黄的视频| 你懂的午夜电影| 亚洲最大av资源网在线观看| 欧美在线免费毛片| 国产 精品 成人| 亚洲人亚洲精品成人777| 97超超级碰碰碰| 久久国产免费福利一区二区三区| 精品国产免费播| 最新国产高清av| 黑人激情视频free| 亚洲国产精品综合久久久网络蜜臀 | 婷婷在线播放观看| 亚洲精品伊人爱爱综合影院| 中国在线观看免费高清完整版| 日本视频播放一区| 在线免费观看av视频网站| 亚洲久久成人免费| 亚洲欧美中文日韩v在线观看不卡| 偷拍亚洲偷自拍| 人人妻人人澡人人揉| 午夜福利看片一区| 久久综合色超碰人人| 国产综合久久精品久久精品| 日韩欧美极品在线播放| 亚洲国产一成人久久精品| 亚洲欧洲国产综合aⅴ| 国产精偷伦视频免费观看| av88熟女| avhd101永久网址高清| 国产精品又黄又爽又色| 免费看高清大片免播放器| 欧美xxxx18性欧美| 国产精品禁18久久久精品| 国产精品一区二区三区直播| 久久这里都精品| 91久久福利国产成人精品| 久久久久一级毛片护士69| 国产片a国产片免费看视频| 久久99精品97| 久久av成人午夜电影| 亚洲激情亚洲| 亚洲 欧美 丝袜 卡通 另类| 国产亚洲片久久大综合| 亚洲av成人在线观看观看| 国产裸身女性视频免费无遮挡| 国内亚洲自拍小视频| 欧美成人精精品一区| 国产成人精品一区二区三区无古代| 岛国欧美视频一区二区| 久久午夜一级片| 久久人人爽人人爽人人av超碰| 免费观看性生交大片为什么| 久久伊人精品热| 91香蕉在线极品观看| 亚洲的av一区| av在线免费不卡毛片| 色www视频永久免费下载| 一个人看的日本免费hd| 国内精品久久久久久99蜜桃| a级毛片大香蕉| 乱码一卡2卡三卡4卡永久视频| 嘟嘟嘟影院视频高清在线观看| 久久欧美精品国产| 欧洲精品不卡1卡2卡三卡公司| a级毛片大香蕉| a√最新版本天堂资源在线| 100黄片视频| 被黑人猛躁12次高潮| av天堂精品久久| videosexhd性欧美| 97久久久超国产精品| 日本ⅹxxx色视频在线观看| 国产乱码免费一区二区视频| 18禁裸乳无遮挡免费污污黄| 1080p超清在线观看影视网站| 中年女人免费看片| 高潮喷水高清在线观看| 欧美日韩国产电影在线观看| 六月婷婷六月丁香| 精品国产三级在线看| 末成年女a∨片一区二区| 性欧美暴力猛交69hd'| 国产欧美一区二区三区观看不卡 | 天堂中文最新版www在线| 久久精品国产淑女亚洲av麻豆 | 久久久国产电影精品| 成人在线电影日韩| 香蕉精品一区二区三区| 免费观看午夜福利电影| 少妇把腿扒开让我爽视频| 午夜精品久久久久99视频| 青春草在线黄色视频| 日韩高清不卡视频免费在线观看| 亚洲成人黄色av一区二区| 国内精品卡一卡二卡三新区| 天堂av,com| 国产91精品不卡在线观看| 亚洲最新发布页 | 成人免费毛片播放视频看看 | 一级做性色a爰片久久毛片下载| 欧美视频成人在线观看| 国产精品久久久久久99www| 一二三四在线观看免费高清中文下载| 国产97高清在线观看| 国产高潮在线观看视频一区 | 1卡2卡三卡3卡4卡精品| а天堂中文最新版在线官网 | 欧美大交乱xxxbbb| 欧美丝袜精品久久| 中文字幕小明免费看视频看永久 | 亚洲人成人影院在线观看| 日本高清成人www免费视频| 亚洲天堂久久精品成人| 中文字幕日韩有码| 高潮毛片高清免费| 久久这里只有精品国内精品| 亚洲精品乱欲视频| 国产美女精品午夜福利视频| 亚洲精品久久久w| 熟女久久av| 国产在线乱子伦一区二区| 精品人妻视频一区在线| 综合久久蜜桃| 国产片a国产片免费看视频| 999精品视频在线免费观看| 国产午夜一区二区在线观看| 国产美女视频黄a视频免费| 欧美xxxx18性欧美| 色在线国产精品越战| 激情五月开心五月麻豆| 永久免费黄色视频点进去就能看| 精品人妻av区天天看片波多野结衣 | av中文字幕熟女| 亚洲av天堂av在线成人播放| 偷女人内裤视频| 亚洲精品天堂久久网| 妖精视频日本韩国欧美| 男人av色偷偷| 国产精品人久久久| 国产美女的黄片视频| 一区二区成人免费观看| 国产男人的天堂在线视频| 国产亚洲aⅴ在线观看| 久久久久成人av网| 爱豆传媒老a影视| 中文字幕无线码在线| 久久久久国产精品人妻在线播放 | 亚洲aⅴ国产av综合av| 少妇av激情| 久久成人精品福利| 久久久久国产精品www| 成年女人视频免费在线观看| 亚洲大片在线观看免费| 精品熟女少妇aⅴ免费久久| 午夜精品毛片久久久久久久久久| 翘臀人妻在线中出内射| 久久精品国产香蕉亚洲av无吗| 一级大片全黄| h高潮娇喘抽搐喷潮h辣| 国产成人精品久久久久久精品日日| 精品人妻一区二区三区四季av| 欧美日韩区亚洲区在线观看| 多p精品视频在线播放| 欧美日韩视频高清在线| 精品一卡二卡≡卡四卡精品| 午夜福利成人在线电影| 亚洲国产精品不卡| 久久热大香蕉伊人| 69re小视频在线观看| 亚洲国产精品不卡| 美女被脱内裤视频| 免费精品久久久久久成人av| 日韩久久中文字幕免费视频| 视频一区,二区,小说,图片| 久久精品 久久国产| 亚洲中文字幕精品久久久久久| 日本aaaaav视频| 国产gvgay片| 免费青春草视频| 成人免费久久网站| 老司机日韩新片网| 国产成人精品久久久久久精品日日| 久久久久久久久妇女精品| 日韩精品亚洲国产| 日韩在线播放一区二区三区| 日韩精品视频在线中文字幕| 美女被黑人插逼视频| 精品国产99久久久久久影视| 91福利午夜影院| 精品国产亚洲av羞羞99| 久久这里只有精品区| 久久毛片少妇高潮| 又狠又色的视频| 午夜www久久久| 亚洲av尤物精品| 亚洲精品狠狠婷婷综合久久| 超薄丝袜脚交| 精品国产一区二区三区a| 欧美情色国产精品| 不卡视频一区在线观看| 老师上课跳d突然被放开到最大| av在线亚洲观看| 最近高清中文字幕大全1| 免费性色视频| 一级做a爰片久久毛| 亚洲人成网高清在线观看| 欧美成人一区二区在线看| 又大又黄又爽又免费的视频| 午夜老司机免费观看| 丝袜熟女中文字幕| 精品久久久久影院嫩草| 欧美啪啪视频一区| 快播黄色毛片| 美女在线观看免费视频网站黄的| 精品国产人妻人伦一区| 全亚洲免费在线播放| 在线播放a网站| 国产精品人人做人人爽人人添| 国产精品第一页在线播放| 成人在线免费观看下载| √天堂中文官网在线bt| 搡老熟女中国老太自拍| 99久久久精品-久久久| 桃色诱惑在线观看| 一级a毛片免费播放| 在线蜜桃一区二区三区| 天堂av色网| 欧美亚洲精品国产69| 天堂8在线天堂资源在线| 亚洲av第五页| 中文字幕av免费一二专区| 免费视频成人国产精品网站| 青春草在线播放视频在线观看| 色哟哟精品久久| 播放器可以免费看大电影| 日韩不卡avwww| 91精品老鸭窝在线观看| 大香蕉六月丁香| 视频在线观看免费的| 成人在线视频中文| 国产精品99久久免费观看99| 最近韩国2019中文字幕1| 国产精品午夜福利18禁视频| 国产午夜一区二区三区在线观看| 黄色小视频在线观看网站| 午夜精品久久久久久久第一页下载| 久久人人爽人人爽人人av超碰| 五月婷婷丁香综合在线观看| 精华霜 精华| 18禁男男无遮挡大尺度| 欧美日韩港台三级视频| 成人午夜福利电影网在线看| 久久成人久久| 97精品伊人久久大香线蕉| 国产精品免费全部免费观看\| 亚洲欧美一区二区精品中文字幕| 国产午夜理论大片a级毛片| 亚洲美女网免费观看| 伊人久久大香线蕉亚洲| 日韩有码视频大全 | 日本一本二本三区中文高清| 欧美黑人粗免费视频| 国产精品看片在线观看中文| 天堂av色婷婷| 中文在线字幕亚洲精品| 91青春草在线观看| 99热这里只有精品久久| 亚洲a级毛片在线播放| 欧美激情精品久久久久久小说| 久久久久久久成人精品免费 | 日日噜噜噜夜夜爽爽狠狠同性男| 美女视频黄片毛片| 99这里只有精品视频| 视频在线播放电影| 欧美精品久久久久久久69堂| 一区二区三区在线播放视频| 久草网站在线观看| 啊~cao死你小sao货网站| 水蜜桃国产网站| 男女啪啪激烈高潮无遮挡网址| 国产男同gay亚洲男男片| 观看免费黄色片| 国产精品99久久久久久98av| 丰满的熟妇不乱又伦| 中文字幕在线视频一区大师| 性猛交xxxxx富婆| 色欧美在线视频| 欧美,亚洲精品视频| 啦啦啦视频在线观看免费9| 91啦啦啦在线观看视频| 国产高清男女| 国内精品久久久久久久999下| 国产日韩欧美综合二区| 黄色视频在线看不卡| 欧美性猛交xxxx黑人猛交| 一边吸奶一边做| 夜夜夜夜夜干| 国内精品久久久久久久日韩| 自拍亚洲在线观看| 日韩视频中文一区二区| 尿液成暗黄色| 精品91久久久久久中文字幕| 天堂8在线中文在线| 99精品国产乱码久久久久勾搭| 国产无人区在线观看| 国产男女激情视频| 精品国产美脚玉足在线观看| 人免费观看www视频在线| 欧美亚洲精品一区二区色| 日韩人妻系列一区二区三区| 精品视频午夜福利| 欧美精品色约约| 老司机啪啪黄色视频| 人人妻人人添人人爽欧美一区密桃| 亚洲精品久久久w| 日韩亚洲欧美久久| 国产欧美一区二区三区免费| 老司机性福利视频| 一区二区国产三区亚洲| 奶子好大好爽视频| 午夜福利电影免费| 欧美乱大交xxxxx毛片| 国产最爽男女视频| 欧美黑人xxxx黑人xyx性爽| 久久不射av| 超级教师3在线观看| 熟妇乱子伦免费| 男女猛烈无遮挡免费漫画| 在线观看日韩av免费| 国产av剧情精品md麻豆| 久久久精品首页| 一个人看的日本免费hd| 色哟哟网站下载| 精品激情视频在线| 人妻视频只有精品| 成在线人免费视频| 毛片在线看完整免费网站| 中文熟妇人妻又伦精品视频| 亚洲熟女精品区| 噜噜噜精品欧美成人| 淫色网在线观看视频| 免费观看特级黄色毛片| 久久久久亚洲成人网| 国产精品亚洲视频中文字幕| 美女一级黄片美女自拍偷拍!| 亚洲天堂av在线播放| 亚洲激情欧美另类| 久久久精品国产亚洲成人满| 别揉我奶头少妇视频| 亚洲欧美偷国产精品三区| 国产精品女人精品久久| 精品国产亚洲欧洲| 别揉我奶头~嗯~嗯~啊视频| 久久成人自影院精品99网站| 国产久久久精品一区二区| 俺去啦啦啦啦在线播放| 日韩av手机免费在线观看 | 国产成人一区二区三区综合| 亚洲免费大尺度av| 午夜久久久精品| 国产精品久久久久久久久免费观看| 精品影院久久久久久| 聚色影视.日韩| 亚洲电影网站在在线播放| 18禁黄无遮挡免费视频观看网站| 又长又粗又爽又黄的视频| 国产国拍精品成人av片| a级毛片免费观看的网站| 久久久精品电影网站| 啦啦啦在线观看免费完整版| 蜜桃少妇人妻一区二区视频| 久久久www亚洲精品一区| 亚洲精品美女1~6www爽爽爽| 国产精品久久久久jk制服app| 日本区免费看| 亚洲久在线观看| 好男人在线观看视频高清完整版 | 国内一区二区久久| av毛片在线观看网址| 精品久久久久久专区蜜桃| 国产三级精品亚洲| 最近最好看中文字幕免费| 琪琪午夜精品亚洲| 亚洲精品久久久综合| 精品国产高清在线看国产毛片| 视频在线观看不卡| 亚洲和日本视频| 快播网在线观看| 8x小说一区二区视频| 亚洲黄色美女电影| 在线免费毛片播放| 男女免费视频毛片| 手机中文字幕在线观看| 天天看片黄片视频| 午夜久久欧美| 国产精品夜夜春夜夜爽久久电影 | 美女被爆操到高潮喷水| 日韩国产欧美在线免费| 黄色视频在线观看免费观看| 国产在线看观看视频| 日本高清不码一区二区三区 | 她也色免费在线| 老师来了在线观看完整版免费| 午夜免费观看www| 香蕉午夜在线| 日韩亚洲av电影天堂网| 国产av一区二区三区色在线| 色熟女抠逼视频| 偷拍另类亚洲欧美| 久久久久免费精品国产| 久久99久久精品久久久久久| av伊人亚洲| 国产午夜av不卡| 国产精品亚洲在线播放| 欧美激情在线二区| 高潮av免费| 给我免费播放片的视频| 好男人视频在线观看网站| 黄网站色视频免费安全网 | 内射国产老熟女综合| 久久超碰人人与人人| 亚洲av成人一区二区三区观看在线| 久久久久久久久av网站| 亚洲欧美激情国产一区二区| 免费午夜福利视频一区二区三区 | 牲大片免费观看视频| 毛片午夜av| 成人午夜av电影久久| 毛片免费看,在线大全| 天堂mv在线mv观看高清| 69re小视频在线观看| 欧美性生交xxxxxoo| 国产91丝袜在线熟| 精品亚洲欧美一区二区三区| 男女18禁啪啪啪无遮挡网站| 国产 欧美精品 一区| 国产精品三级久久影院| 女人特级毛片18| 十年片在线观看免费观看大全| 午夜福利一区二区三区在线观看| 国产精品美女久久久亚洲69| 午夜福利网站免费看| 国产一级一片免费播放下载| 黄色一级片电影免费看| 小sao货大ji拨cao死你| 国产香蕉精品久久| 性网视频在线观看视频| 精品v亚洲v欧美v高清∨| 国产在线一区二区三区四区五区| 黄片wwwcom| 桃花影视在线观看| 色五婷婷丁香| 1080p超清在线观看影视网站| 欧美亚洲国产另类精品| 老司机综合影院| 欧美日韩区亚洲区在线观看| 老少配老妇老熟女| a级黄色毛片 com| 看黄色看黄色| 国产老妇60xx| 国产裸身女性视频免费无遮挡| 色中文字幕在线观看| 欧美日韩一区精品视频一区二区| 国产香蕉久久精品免费| 国产成人精品日本亚洲成熟| 产福利一区在线观看精品尤物| 亚洲大成色www永久网站| 人妻另类精品直播| 国产熟女精品视| 亚洲av电影网站| 成人黄色视频高清在线观看| 日本大片在线观看免费| 国产看片视频在线观看| 精品国产乱码久久久久久夜深| 欧美精品色约约| 黄色大片国产| 黄片国产视频不卡顿| 露脸国语对白在线免费观看| 荐片播放器用不了| 人妻少妇91精品| 国产免费福利片在线不卡av | 特黄特色高清不卡免费视频| 亚洲成a人国产精v品| 国产综合久久精品一区| 精品人妻一区二区三区三十路| 毛片三级在线| 中中文字幕中文有码在线精品| 美女性生活一级黄色片| 在线观看网站你懂的| 日韩av一区二区在线免费观看| 国产深夜福利在线观看| 精品国产亚洲av制服丝袜高跟| 青青草免费在线视频观看| 国产日韩欧美91| 亚洲精品乱欲视频| x7x7x7x7水蜜桃| 91精品人人妻人人做人人爱| 中文字幕网资源站永久资源| 亚洲av极品尤物在线观看| 美女被黑人插逼视频| 国产在线观看一区二区三区精| www.午夜福利在线观看| 色吧在线免费观看| 免费电影亚洲av| 最近中文字幕高清中文字幕无| 午夜电影精品| 亚洲av色一区二区三区| 被黑人猛躁12次高潮| 国产精品黄片免费在线观看| 伊人国产在线观看一区二区| 国产欧美精品亚洲一区二区三区| 国产一区二区久久久| 真实欲乱视频在线观看| 免费又黄又高wwww| 最近中文字幕视频大全| 国语对白av视频| 极品教师电影| 18禁黄污无遮挡| 三级日韩网站免费观看| 亚洲 国产 一区 久久| 中文字幕丝袜乱| 亚洲欧美日韩中文天堂| 国产高清在线看| 女人的天堂亚洲精品一区| a级毛片大香蕉| 久久久久女人精品毛片九一| 欧美成人精品欧美| 超级教师3在线观看| 毛片在线一区二区三区| 国产精品青青草原在线| 在线视频,中文字幕| 每日一区二区三区在线观看| 火山的两个人完整视频| 大香蕉av午夜精品| 人人妻人人澡人人爽久久97| 美女双飞高潮直喷水在线播放| www在线观看网站| 久久久久久久99999| 精品国产美脚玉足在线观看| 欧美精品一区二区三区四区五区无| 欧美人与动交精品| xxoo高潮过程| 欧美成人全部免费网站| 日本在线免费入口| 亚洲 精品一区| 日本视频在线一| 久久久精品国产亚洲成人满| 18禁无遮挡啪啪网站| 91欧美激情一区二区三区成人| 国产精品久久久精品三级a| 久久人人爽人人爽人人片av大片| 国产一级一级a看片免费| 国产一区二区三区免费观看在线视频 | 俄罗斯一级毛片在线播放| 妇女毛片视频| av有码网站| 99re视频看看| av国内自拍亚洲| 国产精品综合久久爱| 免费一级做a爰片性色毛片 | 饥渴少妇高潮喷水在线观看| 免费av在线播放不卡| 制服人妻久久精品一区二区三区| av天堂网.| 三级黄绝毛片| 熟女人妻一区二区三区不卡视频| 全彩18禁裸乳无遮挡免费漫画| 偷拍自拍亚洲色图欧美| 日韩在线av在线观看| 99精品国产乱码久久久久勾搭| 免费又粗又黄又硬又爽大片| wwww.xxxx亚洲| 亚洲成人有码在线| 99久久国产精品热88人妻| www.欧美日韩视频在线观看| 国产成人免费一区二区视频| 亚洲毛片在线免费| 日韩中文字幕人妻一区二| 日本高清在线观看wwwww色| 18女人小正毛片| 亚洲综合另类色区色偷偷txt| 丝袜制服一区二区三区| 最近中文字幕2019免费3| 香蕉在线看一区二区| 色哟哟网站下载| 成人看片毛片直接看| 亚洲成人码在线免费观看| 在线a∨片无需播放器| 大尺度打野战视频| 亚洲1区1区3区4区产品乱码芒果| av在线观看天堂网| 国产av色网址| 久久av成人午夜电影| 国产精品深夜福利| 国产和亚洲av| 久久久久精品国产亚洲av′| 黑丝高跟空姐| 国产精品综合久久爱| 国产麻豆全集| 国产欧美日韩综合在线观看一区二区| 国产亚洲第一伦里片在线c| 夜夜躁日日躁狠狠久久88av| 日本 欧美 国产在线| 成人毛片大全视频| 国产精品一区二区二区二区| 天堂中文在线a| 欧美日韩亚洲高清视频| 国产精品成人久久一区| 精品久久精品免费视频| 亚洲最新在线播放| 在线播放亚洲五| 成人黄色性视频| 韩国片亚洲精品一区| 国产精品呦仙踪林最新章节| 亚洲天堂久久新| 日韩成人在线视频一区二区三区| 国产一级特黄特色大片| 国产精品亲子伦av一区二区三区| 女教师娇喘潮喷抽搐在线视频| 人人妻人人妻人人人人妻| 一级黄片久久看| 中午字幕永久在线| 国产精偷伦视频在线观看软件| 成人免费毛片播放视频看看| 公侵犯人妻一区二区中文字幕| wwwxxx日本老妇人| 一边脱一边做| 不卡的高清av| 亚洲国产婷婷久久99| 国产国产三级精品久久日本| 日韩av视频在线观看网站| 99久久香蕉精品国产高清免费| 国产精品爽爽久久久久久蜜桃小说| 亚洲国产区一区二区三区| 交换夫妇完整版电影| 精品国产第一精品国产综合| av观看在线免费不卡|