• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    μC/OS-II在51單片機(jī)上的移植

    2012-09-26 02:25:42呂小納徐力平
    電子設(shè)計(jì)工程 2012年6期
    關(guān)鍵詞:堆棧斷點(diǎn)數(shù)組

    呂小納,徐力平

    (鄭州大學(xué) 信息工程學(xué)院,河南 鄭州 450001)

    μC/OS–II是一種公開源代碼、結(jié)構(gòu)小巧、具有可剝奪實(shí)時(shí)內(nèi)核的嵌入式開發(fā)系統(tǒng),代碼簡(jiǎn)短、條理清晰、實(shí)時(shí)性及安全性能很高,絕大部分代碼用C編寫,現(xiàn)已被移植到多種處理器的構(gòu)架中。隨著51單片機(jī)片內(nèi)資源的日益豐富,在51單片機(jī)上移植μC/OS–II已成為可能,植入系統(tǒng)后,由系統(tǒng)來管理軟件與硬件資源,簡(jiǎn)化應(yīng)用程序的設(shè)計(jì),并且使應(yīng)用系統(tǒng)功能更加完善。因此在51單片機(jī)上移植μC/OS–II具有十分重要的意義。

    1 μC/OS實(shí)時(shí)操作系統(tǒng)概述

    μC/OS-II實(shí)時(shí)操作系統(tǒng)是一種可移植、可固化、可裁剪即可剝奪型的多任務(wù)實(shí)時(shí)內(nèi)核,適用于各種微處理器和微控制器。μC/OS-II主要包括任務(wù)調(diào)度、時(shí)間管理、內(nèi)存管理、事件管理(信號(hào)量、郵箱、消息隊(duì)列)4大部分。它的移植與4個(gè)文件相關(guān):匯編文件(OS_CPU_A.ASM)、處理器相關(guān)C文件(OS_CPU.H、OS_CPU_C.C)和配置文件(OS_CFG.H)。有 64 個(gè)優(yōu)先級(jí),系統(tǒng)占用8個(gè),用戶可創(chuàng)建56任務(wù),不支持時(shí)間片輪轉(zhuǎn)。

    它的基本思路就是 “近似地每時(shí)每刻總是讓優(yōu)先級(jí)最高的就緒任務(wù)處于運(yùn)行狀態(tài)”。為了保證這一點(diǎn),它在調(diào)用系統(tǒng)函數(shù)、中斷結(jié)束、定時(shí)中斷結(jié)束時(shí)總是執(zhí)行調(diào)度算法。原作者通過事先計(jì)算好數(shù)據(jù),簡(jiǎn)化了運(yùn)算量,通過精心設(shè)計(jì)就緒表結(jié)構(gòu),使得延時(shí)可預(yù)知。任務(wù)的切換是通過模擬一次中斷實(shí)現(xiàn)的。

    2 任務(wù)調(diào)度的實(shí)現(xiàn)原理

    任務(wù)調(diào)度是μC/OS–II的重要部分,和具體的微處理器關(guān)系緊密。必須移植的5個(gè)函數(shù)有4個(gè)都和任務(wù)有關(guān)。任務(wù)調(diào)度就是保存當(dāng)前任務(wù)的寄存器和PC指針 (即當(dāng)前任務(wù)的斷點(diǎn)),然后把將要執(zhí)行的任務(wù)的寄存器值返回給寄存器并把PC指向?qū)⒁獔?zhí)行任務(wù)的斷點(diǎn)。這些的實(shí)現(xiàn)要借助于堆棧和中斷,為了簡(jiǎn)便起見,先看函數(shù)調(diào)用時(shí)堆棧的使用情況。在函數(shù)調(diào)用時(shí),堆棧的一個(gè)重要功能就是保存被調(diào)函數(shù)的斷點(diǎn)地址。若有4個(gè)函數(shù),F(xiàn)un1調(diào)用Fun2,F(xiàn)un2調(diào)用Fun3,F(xiàn)un3調(diào)用Fun4,F(xiàn)un4為葉子程序(無子程序調(diào)用)。

    假設(shè)現(xiàn)在從Fun1一直運(yùn)行到Fun4,此時(shí)堆棧結(jié)構(gòu)如圖1所示,中間的ADD_A到ADD_D為堆棧中的數(shù)據(jù),左邊的SP到SP-7為堆棧指針,右邊的Fun1到Fun4為對(duì)應(yīng)的調(diào)用函數(shù)。運(yùn)行Fun4時(shí),此時(shí)SP與SP-1所存的值為ADD_D,而ADD_D為Fun3中子函數(shù)Fun4的下一行的地址,即Fun3中3-2行的地址,以此類推,ADD_C為2-2行地址,ADD_B 圖1函數(shù)運(yùn)行及堆棧結(jié)構(gòu)圖為1-2行地址。

    圖1 函數(shù)運(yùn)行及堆棧結(jié)構(gòu)圖Fig.1 Function run and stack chart

    當(dāng)函數(shù)A調(diào)用函數(shù)B時(shí),進(jìn)入函數(shù)B時(shí)就會(huì)把函數(shù)A的斷點(diǎn)地址壓棧,而當(dāng)函數(shù)B運(yùn)行結(jié)束時(shí)則把堆棧中函數(shù)A的斷點(diǎn)地址彈出到PC指針,程序接著從函數(shù)A的斷點(diǎn)開始運(yùn)行。如果在函數(shù)B中更改SP及SP-1中的數(shù)據(jù),則函數(shù)B運(yùn)行結(jié)束時(shí)就不會(huì)再返回函數(shù)A中,而返回到SP及SP-1更改后的數(shù)據(jù)所代表的地址。

    以上是函數(shù)調(diào)用時(shí)的基本情況,如果是中斷則堆棧不僅保存斷點(diǎn)地址還會(huì)自動(dòng)保存寄存器的值。任務(wù)調(diào)度就是靠中斷來實(shí)現(xiàn),中斷中所保存的斷點(diǎn)地址就是任務(wù)的斷點(diǎn)地址,當(dāng)本任務(wù)要再次執(zhí)行時(shí)就把斷點(diǎn)地址賦給PC就可以接著任務(wù)被中斷時(shí)地址順序執(zhí)行。

    3 頭文件移植

    與移植相關(guān)的4個(gè)文件中有2個(gè)頭文件,這2個(gè)頭文件的移植比較簡(jiǎn)單,可以參考其它的移植程序。其中OS_CPU.H中主要是數(shù)據(jù)類型的定義、堆棧生長(zhǎng)方向的定義、開關(guān)中斷的定義以及函數(shù)級(jí)任務(wù)切換的宏定義。OS_CFG.H中主要是任務(wù)數(shù)、優(yōu)先級(jí)數(shù)、事件數(shù)、每秒中斷節(jié)拍數(shù)以及各種系統(tǒng)函數(shù)的使能定義。

    4 匯編與C文件的移植

    在要移植的匯編與C的兩個(gè)文件中有14個(gè)函數(shù),其中9個(gè)是接口函數(shù),可根據(jù)實(shí)際需要來決定,有5個(gè)是必須寫的。這5個(gè)函數(shù)分別是:OS_CPU_C.C文件中的 OSTaskStkInit()和 OS_CPU_A.ASM 文件 中 的 OSStartHighRdy()、OSCtxSw()、OSIntCtxSw()與 OSTickISR()。 下面就這 5 個(gè)函數(shù)來做具體分析。

    4.1 任務(wù)堆棧初始化函數(shù)OSTaskStkInit()

    此函數(shù)是在任務(wù)創(chuàng)建函數(shù) OSTaskCreat()或OSTaskCreatExt()中調(diào)用的。因?yàn)橄到y(tǒng)為每個(gè)任務(wù)申請(qǐng)了一個(gè)數(shù)組作為棧,當(dāng)一個(gè)任務(wù)運(yùn)行時(shí),就把堆棧指針指向本任務(wù)的棧,任務(wù)堆棧初始化函數(shù)就是在任務(wù)創(chuàng)建時(shí)將要?jiǎng)?chuàng)建任務(wù)的堆棧進(jìn)行初始化。但C51的堆棧指針SP是8位的,只能在片內(nèi)RAM的256個(gè)字節(jié)內(nèi)尋址。因其尋址空間有限且SP唯一,不能像DSP或ARM那樣為每一段程序或每一種模式定義堆棧,需小心管理堆??臻g。為了適應(yīng)上述情況,需要換一種思路,不是讓SP去指向各任務(wù)堆??臻g,而是把各任務(wù)堆??臻g的內(nèi)容復(fù)制到系統(tǒng)棧中。至于堆棧數(shù)組空間要有多大以及堆棧數(shù)組空間里放些什么內(nèi)容,可以借鑒keil中中斷函數(shù)的壓棧情況,當(dāng)中斷函數(shù)不指定寄存器組時(shí),編譯器一般將 PC、ACC、B、DPTR、PSW、R0~R7 寄存器入棧, 其中 PC和DPTR是雙字節(jié)的,其它都是單字節(jié)的,一共15個(gè)字節(jié),所以把堆棧數(shù)組設(shè)計(jì)成至少15個(gè)字節(jié)的,以保證任務(wù)所用的寄存器都在堆棧數(shù)組中包含著。因?yàn)槊總€(gè)數(shù)組里放的是寄存器的值,在此就把這每個(gè)任務(wù)的堆棧數(shù)組叫做寄存器數(shù)組,暫且把寄存器數(shù)組設(shè)計(jì)成15個(gè)字節(jié),依次存放PC、ACC、B、DPTR、PSW、R0~R7。

    函數(shù)OSTaskStkInit()傳遞4個(gè)參數(shù),第1個(gè)參數(shù) task是所創(chuàng)建任務(wù)的起始地址,這個(gè)參數(shù)須保存到PC在寄存器數(shù)組的對(duì)應(yīng)位置,第2個(gè)參數(shù)ppdata是所創(chuàng)建任務(wù)的參數(shù),C51規(guī)則中用R1~R3來傳遞參數(shù)指針,這個(gè)參數(shù)須存放到R1~R3在寄存器數(shù)組中的對(duì)應(yīng)位置。第3個(gè)參數(shù)ptos是棧底指針,從當(dāng)前地址開始初始化堆棧指針,第4個(gè)參數(shù)opt是附加參數(shù),一般不用。

    4.2 運(yùn)行等待任務(wù)中優(yōu)先級(jí)最高任務(wù)函數(shù)OSStartHighRdy()

    此函數(shù)在啟動(dòng)操作系統(tǒng)函數(shù)OSStart()的最后一行調(diào)用,且此函數(shù)不返回,經(jīng)過此函數(shù)后μC/OS接管系統(tǒng)。OSStartHighRdy()不是去調(diào)用用戶任務(wù)函數(shù),而是讓PC指針指向任務(wù)函數(shù)首地址。且任務(wù)函數(shù)的傳遞參數(shù)只有一個(gè),若此參數(shù)正確,則可保證任務(wù)函數(shù)運(yùn)行正確。在調(diào)用OSStartHighRdy()之前OSStart()已經(jīng)把最高優(yōu)先級(jí)任務(wù)的任務(wù)表準(zhǔn)備好了,只要把最高優(yōu)先級(jí)任務(wù)表的數(shù)據(jù)恢復(fù)到堆棧中,再執(zhí)行返回指令即可,以上最關(guān)鍵的是如何讓其返回到最高優(yōu)先級(jí)任務(wù)中而不是返回到被調(diào)函數(shù)中。

    當(dāng)函數(shù) OSStart()調(diào)用函數(shù) OSStartHighRdy()時(shí),斷點(diǎn)地址入棧;當(dāng)OSStartHighRdy()執(zhí)行完之后,返回?cái)帱c(diǎn)。在OSStartHighRdy()中把SP及SP-1的值改為最高優(yōu)先級(jí)任務(wù)的地址,這樣OSStartHighRdy()就會(huì)返回到最高優(yōu)先級(jí)任務(wù)中去運(yùn)行。

    4.3 任務(wù)級(jí)的任務(wù)切換函數(shù)OSCtxSw()

    此函數(shù)是保存當(dāng)前任務(wù)的狀態(tài),然后運(yùn)行處于就緒態(tài)中的最高優(yōu)先級(jí)任務(wù)。前面介紹過不是更改SP去指向寄存器數(shù)組,而是把寄存器數(shù)組的數(shù)復(fù)制到堆棧中。先看下一般的情況,在用戶任務(wù) MyTask(void*ppdtat)中調(diào)用 TimeDly(),TimeDly()中 調(diào) 用 OSSched(),在 OSSched()中 有 一 個(gè) 宏OS_TASK_SW(),這個(gè)宏的目的是讓程序進(jìn)入函數(shù)OSCtxSw()。 參看圖 1,就如 Fun4 為 OSCtxSw(),F(xiàn)un3 為 OSSched(),F(xiàn)un2 為 TimeDly (),F(xiàn)un1 為 MyTask ()。 ADD_D 存 的 是OSSched()的斷點(diǎn),ADD_C 為 TimeDly()的斷點(diǎn),ADD_B 為MyTask()的斷點(diǎn)。如果進(jìn)行任務(wù)切換,應(yīng)該把高優(yōu)先級(jí)任務(wù)的地址值賦給 ADD_B(即SP-4與SP-5)。

    以上考慮的是最簡(jiǎn)單的情況,當(dāng)任務(wù)比較復(fù)雜時(shí),可能更改了ACC、PSW、DPTR或R0~R7的值,在進(jìn)入高優(yōu)先任務(wù)時(shí),寄存器并不是此任務(wù)的寄存器值,運(yùn)行的結(jié)果可能不正確。

    在上述情況下如何保證CPU寄存器的值正確,要分兩個(gè)階段。第一個(gè)階段是把CPU寄存器值保存到要掛起任務(wù)的寄存器數(shù)組中,當(dāng)剛進(jìn)入OSCtxSw()時(shí),CPU寄存器的值是要掛起任務(wù)的寄存器值,所以一開始就要鎖定CPU寄存器的值。如果OS_TASK_SW()定義為中斷的話,在進(jìn)入OSCtxSw()時(shí),CPU寄存器的值被自動(dòng)壓棧;如果把OS_TASK_SW()定義為函數(shù)時(shí),在進(jìn)入函數(shù)時(shí)使用內(nèi)嵌匯編的方法把CPU寄存器入棧。這時(shí)堆棧中又壓入了13個(gè)字節(jié),就如在圖1的ADD_D上又壓入了13個(gè)字節(jié)的數(shù)據(jù),然后從堆棧中把值取出來放到相應(yīng)任務(wù)的寄存器數(shù)組中。第二個(gè)階段是把將要執(zhí)行任務(wù)的寄存器數(shù)組的值復(fù)制到堆棧中。此時(shí)PC指針在堆棧中對(duì)應(yīng)的位置是SP-17與SP-18,SP到SP-12的13個(gè)字節(jié)對(duì)應(yīng) ACC、B、DPTR、PSW、R0~R7。

    4.4 中斷級(jí)的任務(wù)切換函數(shù)OSIntCtxSw()

    此函數(shù)和上一個(gè)函數(shù)基本思想一致,都要保存當(dāng)前任務(wù)的狀態(tài),運(yùn)行處于就緒態(tài)中的優(yōu)先級(jí)最高的任務(wù)。二者的不同在于,上個(gè)函數(shù)的堆棧中SP-17與SP-18是PC值的位置,SP到SP-12是13個(gè)寄存器的位置。當(dāng)中斷來時(shí),在中斷中調(diào)用函數(shù) OSIntExit(),函數(shù) OSIntExit()調(diào)用函數(shù) OSIntCtxSw(),在OSIntCtxSw()中實(shí)現(xiàn)任務(wù)切換。在進(jìn)入函數(shù)OSIntExit()之前寄存器的值已經(jīng)入棧,所以運(yùn)行到本函數(shù)時(shí)堆棧中SP-17與SP-18是PC值的位置,SP-4到SP-16是 13個(gè)寄存器的位置。在圖1上,上個(gè)函數(shù)的13個(gè)寄存器的值被壓入ADD_D上面的13個(gè)字節(jié)中,而本函數(shù)是在ADD_B于ADD_C之間壓入的這13個(gè)寄存器。

    4.5 周期節(jié)拍中斷函數(shù)OSTickISR()

    這個(gè)函數(shù)是給系統(tǒng)提供一個(gè)節(jié)拍,一般每秒10~100次。如果節(jié)拍頻率太高,μC/OS系統(tǒng)會(huì)占用大量硬件資源;如果太低,任務(wù)間的切換又會(huì)很慢。

    此函數(shù)首先要保證產(chǎn)生一個(gè)周期性的中斷,可以使用硬件定時(shí)器,也可以從交流電中獲得50/60Hz的時(shí)鐘頻率。這個(gè)函數(shù)至少要做3件事:1)進(jìn)入中斷時(shí),把中斷嵌套層數(shù)計(jì)數(shù)器加1,說明又進(jìn)入一次中斷,也可以直接調(diào)用OSIntEnter()函數(shù);2)調(diào)用時(shí)鐘節(jié)拍函數(shù)OSTimeTick(),告知系統(tǒng)又經(jīng)過了一個(gè)節(jié)拍;3)調(diào)用OSIntExit()函數(shù),說明要退出中斷了,此函數(shù)會(huì)自動(dòng)處理。

    5 結(jié)束語(yǔ)

    文中闡述了在堆棧空間有限的51單片機(jī)上運(yùn)行μC/OS-II系統(tǒng)的移植過程,利用系統(tǒng)棧SP作為數(shù)據(jù)交換的樞紐。在實(shí)際應(yīng)用中,如果用系統(tǒng)棧來移植,只需根據(jù)文中的基本思想進(jìn)行適當(dāng)?shù)母膶懀纯蛇\(yùn)行于其他處理器上。如果處理器的堆棧指針尋址空間足夠大,也可以為每個(gè)任務(wù)開辟一個(gè)棧,通過改變堆棧指針指向不同任務(wù)的??臻g,來實(shí)現(xiàn)任務(wù)調(diào)度。

    通過在51單片機(jī)上的運(yùn)行,可以看出μC/OS–II也能在堆??臻g比較少的CPU上運(yùn)行。

    [1]Labrosse J J.MicroC/OS-II The Real-Time Kernel Second Edition[M].US:CMP Media LIC,2002.

    [2]Labrosse J J.嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II[M].邵貝貝,譯.北京:北京航天航空大學(xué)出版社,2003.

    [3]馬忠梅.單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)[M].北京:北京航天航空大學(xué)出版社,2003.

    [4]任哲.嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II原理及應(yīng)用[M].北京:北京航天航空大學(xué)出版社,2003.

    [5]陳是知.μC/OS-II內(nèi)核分析、移植與驅(qū)動(dòng)程序開發(fā)[M].北京:人民郵電出版社,2007.

    [6]楊宗德,張兵.μC/OS-II標(biāo)準(zhǔn)教程[M].北京:人民郵電出版社,2009.

    [7]胡大可,李培弘,方路平.基于單片機(jī)8051的嵌入式開發(fā)指南[M].北京:電子工業(yè)出版社,2003.

    猜你喜歡
    堆棧斷點(diǎn)數(shù)組
    JAVA稀疏矩陣算法
    JAVA玩轉(zhuǎn)數(shù)學(xué)之二維數(shù)組排序
    一類無限可能問題的解法
    嵌入式軟件堆棧溢出的動(dòng)態(tài)檢測(cè)方案設(shè)計(jì)*
    基于堆棧自編碼降維的武器裝備體系效能預(yù)測(cè)
    主導(dǎo)電回路發(fā)生斷點(diǎn)故障判斷方法探討
    尋找勾股數(shù)組的歷程
    VB數(shù)組在for循環(huán)中的應(yīng)用
    考試周刊(2012年88期)2012-04-29 04:36:47
    TKScope仿真調(diào)試Cortex-M3內(nèi)核的高級(jí)手段
    一種用于分析MCS-51目標(biāo)碼堆棧深度的方法
    欧美成人免费av一区二区三区| 网址你懂的国产日韩在线| 黄色配什么色好看| 亚洲成人中文字幕在线播放| 欧美性猛交╳xxx乱大交人| 桃红色精品国产亚洲av| 国产色爽女视频免费观看| 白带黄色成豆腐渣| 波多野结衣高清无吗| 88av欧美| 国产亚洲精品久久久com| av女优亚洲男人天堂| 日本黄色片子视频| 精品久久久久久久久久久久久| 窝窝影院91人妻| 动漫黄色视频在线观看| 国产高清视频在线观看网站| 男人的好看免费观看在线视频| 国产久久久一区二区三区| 99国产精品一区二区三区| 国产男靠女视频免费网站| 久久久久久久午夜电影| aaaaa片日本免费| 丁香六月欧美| 日本免费一区二区三区高清不卡| 亚洲av电影在线进入| 99riav亚洲国产免费| 亚洲七黄色美女视频| 国产免费av片在线观看野外av| 久久久成人免费电影| 91久久精品国产一区二区成人| 久久草成人影院| 成人永久免费在线观看视频| www日本黄色视频网| 制服丝袜大香蕉在线| 免费在线观看亚洲国产| 日韩国内少妇激情av| 久久人人精品亚洲av| 噜噜噜噜噜久久久久久91| 一进一出抽搐动态| 国产伦在线观看视频一区| 日本五十路高清| 亚洲最大成人av| 热99re8久久精品国产| 国产av麻豆久久久久久久| 1000部很黄的大片| 亚洲最大成人av| 少妇人妻精品综合一区二区 | 精品人妻视频免费看| 国产精品爽爽va在线观看网站| 非洲黑人性xxxx精品又粗又长| 真人做人爱边吃奶动态| 91字幕亚洲| 琪琪午夜伦伦电影理论片6080| 能在线免费观看的黄片| 亚洲一区二区三区不卡视频| 最新中文字幕久久久久| 男插女下体视频免费在线播放| 亚洲天堂国产精品一区在线| 免费在线观看影片大全网站| 乱人视频在线观看| 两人在一起打扑克的视频| 免费av观看视频| av天堂在线播放| 国产精品自产拍在线观看55亚洲| 极品教师在线视频| 免费观看精品视频网站| 午夜精品一区二区三区免费看| 精品久久久久久久久久免费视频| 亚洲 国产 在线| 成年女人永久免费观看视频| 国产精品久久久久久久久免 | 露出奶头的视频| 免费在线观看亚洲国产| 免费无遮挡裸体视频| 久久这里只有精品中国| 在现免费观看毛片| 国产亚洲精品av在线| 神马国产精品三级电影在线观看| 观看美女的网站| 免费看日本二区| 丰满人妻熟妇乱又伦精品不卡| 欧美激情久久久久久爽电影| 欧美黄色片欧美黄色片| 精品无人区乱码1区二区| 亚洲午夜理论影院| 亚洲精品成人久久久久久| 岛国在线免费视频观看| 天堂影院成人在线观看| 亚洲专区中文字幕在线| 我要看日韩黄色一级片| 亚洲一区高清亚洲精品| 欧美激情久久久久久爽电影| 在线免费观看的www视频| 亚洲精品久久国产高清桃花| 夜夜躁狠狠躁天天躁| 国产精品一区二区性色av| 精品久久国产蜜桃| 免费在线观看成人毛片| 少妇高潮的动态图| 国产成年人精品一区二区| 日韩有码中文字幕| 亚洲av成人精品一区久久| 亚洲欧美日韩高清在线视频| 熟女人妻精品中文字幕| 非洲黑人性xxxx精品又粗又长| 成人亚洲精品av一区二区| 欧美一级a爱片免费观看看| 国产激情偷乱视频一区二区| 久久精品国产亚洲av涩爱 | 草草在线视频免费看| 午夜福利免费观看在线| 老鸭窝网址在线观看| 亚洲欧美日韩高清专用| 美女高潮的动态| 级片在线观看| 搡老熟女国产l中国老女人| 99久久久亚洲精品蜜臀av| 波多野结衣高清作品| 欧美色视频一区免费| 少妇的逼水好多| 国产午夜精品久久久久久一区二区三区 | 好男人在线观看高清免费视频| 美女被艹到高潮喷水动态| 波多野结衣高清无吗| 一夜夜www| 亚洲国产精品久久男人天堂| 国产乱人视频| 毛片一级片免费看久久久久 | netflix在线观看网站| 日韩成人在线观看一区二区三区| 亚洲五月婷婷丁香| 亚洲无线观看免费| 丰满人妻一区二区三区视频av| 国产真实乱freesex| 18+在线观看网站| 久久国产乱子免费精品| 一本一本综合久久| 欧美日韩国产亚洲二区| 波野结衣二区三区在线| 看片在线看免费视频| 91狼人影院| 亚洲 欧美 日韩 在线 免费| 亚洲片人在线观看| 淫秽高清视频在线观看| 十八禁人妻一区二区| 亚洲美女搞黄在线观看 | 18禁裸乳无遮挡免费网站照片| 老司机午夜十八禁免费视频| 国产综合懂色| 欧美激情久久久久久爽电影| 亚洲成人中文字幕在线播放| 国产精品三级大全| 精品熟女少妇八av免费久了| 亚洲欧美日韩东京热| 久久中文看片网| 国产美女午夜福利| 亚洲专区国产一区二区| 一个人免费在线观看的高清视频| 亚洲天堂国产精品一区在线| 亚洲乱码一区二区免费版| 老鸭窝网址在线观看| 啦啦啦观看免费观看视频高清| 国产精品久久久久久亚洲av鲁大| 中国美女看黄片| 亚洲三级黄色毛片| 最新中文字幕久久久久| 久9热在线精品视频| 亚洲无线观看免费| 精品一区二区免费观看| 成年免费大片在线观看| 免费av不卡在线播放| 国产私拍福利视频在线观看| 嫩草影院精品99| 欧美精品国产亚洲| 女生性感内裤真人,穿戴方法视频| 免费大片18禁| 一本一本综合久久| 欧美高清性xxxxhd video| 中文资源天堂在线| 悠悠久久av| 国产精品,欧美在线| 色精品久久人妻99蜜桃| 欧美黄色淫秽网站| 久久人妻av系列| 波野结衣二区三区在线| 精品国产三级普通话版| 亚洲七黄色美女视频| 亚洲天堂国产精品一区在线| 美女大奶头视频| 午夜免费激情av| 国产亚洲精品综合一区在线观看| 欧美黄色片欧美黄色片| 亚洲久久久久久中文字幕| 99久久久亚洲精品蜜臀av| 狠狠狠狠99中文字幕| av在线老鸭窝| 久久精品久久久久久噜噜老黄 | 国产av麻豆久久久久久久| 日韩中字成人| 国产真实乱freesex| 婷婷亚洲欧美| 十八禁网站免费在线| 成年女人毛片免费观看观看9| 成人特级黄色片久久久久久久| 亚洲av电影在线进入| 亚洲美女搞黄在线观看 | 变态另类成人亚洲欧美熟女| 丰满乱子伦码专区| 日本一本二区三区精品| 午夜a级毛片| 精品人妻熟女av久视频| 亚洲中文字幕日韩| 亚洲国产精品成人综合色| 99热精品在线国产| 人妻制服诱惑在线中文字幕| 三级国产精品欧美在线观看| 久久国产乱子伦精品免费另类| 在线免费观看的www视频| 高清毛片免费观看视频网站| 成熟少妇高潮喷水视频| 激情在线观看视频在线高清| 精品人妻1区二区| 国内毛片毛片毛片毛片毛片| 真人一进一出gif抽搐免费| 精品久久久久久久久久免费视频| 国产老妇女一区| 他把我摸到了高潮在线观看| 一区二区三区四区激情视频 | 色噜噜av男人的天堂激情| 能在线免费观看的黄片| 欧美三级亚洲精品| 一个人免费在线观看电影| 日韩大尺度精品在线看网址| 久久久成人免费电影| 亚洲成a人片在线一区二区| 亚洲成人免费电影在线观看| 欧美在线一区亚洲| 国产成+人综合+亚洲专区| 88av欧美| 级片在线观看| 久久精品夜夜夜夜夜久久蜜豆| 亚洲人与动物交配视频| 日本黄大片高清| 亚洲av熟女| 中文字幕高清在线视频| 免费高清视频大片| 天堂影院成人在线观看| av欧美777| 精品一区二区三区视频在线| 成人欧美大片| 老司机深夜福利视频在线观看| 欧美激情久久久久久爽电影| 亚洲av.av天堂| 很黄的视频免费| 成人特级黄色片久久久久久久| 亚洲七黄色美女视频| 天堂av国产一区二区熟女人妻| 国产免费av片在线观看野外av| 国产亚洲欧美98| 我的老师免费观看完整版| 亚洲精华国产精华精| 欧美日韩国产亚洲二区| 噜噜噜噜噜久久久久久91| 精品久久久久久久久久免费视频| 国产欧美日韩一区二区三| 一级av片app| 国产爱豆传媒在线观看| 久9热在线精品视频| 国产精品1区2区在线观看.| 亚洲狠狠婷婷综合久久图片| 天堂av国产一区二区熟女人妻| 国产精品一及| 丰满人妻熟妇乱又伦精品不卡| 亚洲美女黄片视频| aaaaa片日本免费| 欧美+日韩+精品| 亚洲自拍偷在线| 亚洲av一区综合| 很黄的视频免费| 亚洲经典国产精华液单 | 国产久久久一区二区三区| 欧美日韩黄片免| 99国产综合亚洲精品| 免费黄网站久久成人精品 | 日韩高清综合在线| 怎么达到女性高潮| 好男人电影高清在线观看| 免费高清视频大片| 好男人在线观看高清免费视频| 国产激情偷乱视频一区二区| 一进一出抽搐gif免费好疼| 床上黄色一级片| 亚洲成人久久爱视频| 国产伦一二天堂av在线观看| 国产午夜精品久久久久久一区二区三区 | 最近中文字幕高清免费大全6 | 亚洲av电影在线进入| 97超级碰碰碰精品色视频在线观看| 欧美激情久久久久久爽电影| 亚洲国产精品999在线| 舔av片在线| 日本撒尿小便嘘嘘汇集6| 日日摸夜夜添夜夜添av毛片 | av欧美777| 国产精品久久久久久人妻精品电影| 亚洲第一电影网av| 夜夜看夜夜爽夜夜摸| 国产精品爽爽va在线观看网站| 国产69精品久久久久777片| 国产精品亚洲美女久久久| 自拍偷自拍亚洲精品老妇| 极品教师在线免费播放| 亚洲男人的天堂狠狠| 国产高清视频在线播放一区| 免费看美女性在线毛片视频| 亚洲成av人片在线播放无| 精品久久国产蜜桃| 免费一级毛片在线播放高清视频| 成年女人永久免费观看视频| 成人精品一区二区免费| 丰满乱子伦码专区| 欧美潮喷喷水| 亚洲国产欧美人成| 麻豆一二三区av精品| 亚洲熟妇熟女久久| 日日夜夜操网爽| 亚州av有码| 级片在线观看| 97超视频在线观看视频| 中文字幕人妻熟人妻熟丝袜美| 久久亚洲精品不卡| 久久精品国产亚洲av天美| 一级a爱片免费观看的视频| 99热这里只有是精品在线观看 | 欧美极品一区二区三区四区| 在线观看一区二区三区| 久久精品国产亚洲av天美| 一a级毛片在线观看| 极品教师在线视频| 午夜a级毛片| 亚洲av电影不卡..在线观看| 国产主播在线观看一区二区| 日本在线视频免费播放| 他把我摸到了高潮在线观看| 蜜桃亚洲精品一区二区三区| 国产一级毛片七仙女欲春2| 久久久久久大精品| 亚洲人成电影免费在线| 色av中文字幕| 日本撒尿小便嘘嘘汇集6| 天堂影院成人在线观看| 精品人妻偷拍中文字幕| 亚洲av第一区精品v没综合| 黄色丝袜av网址大全| 亚洲av成人不卡在线观看播放网| 少妇裸体淫交视频免费看高清| 在线播放国产精品三级| 人妻夜夜爽99麻豆av| 午夜亚洲福利在线播放| 亚洲人成网站高清观看| 97碰自拍视频| 日本 欧美在线| 白带黄色成豆腐渣| 97热精品久久久久久| 日本成人三级电影网站| 禁无遮挡网站| 亚洲成人久久性| 日韩亚洲欧美综合| 中文字幕av成人在线电影| 熟女人妻精品中文字幕| 精品人妻1区二区| 97超级碰碰碰精品色视频在线观看| 日本五十路高清| 国产视频内射| 美女大奶头视频| 精品午夜福利视频在线观看一区| 久久这里只有精品中国| 真实男女啪啪啪动态图| 哪里可以看免费的av片| 久久久久久久久中文| or卡值多少钱| 老司机深夜福利视频在线观看| 精品免费久久久久久久清纯| h日本视频在线播放| 色精品久久人妻99蜜桃| 精品国产亚洲在线| 日韩有码中文字幕| 2021天堂中文幕一二区在线观| 桃色一区二区三区在线观看| 18禁黄网站禁片免费观看直播| 色av中文字幕| 国产91精品成人一区二区三区| 九色国产91popny在线| 亚洲av美国av| 看片在线看免费视频| 亚洲最大成人av| 一本综合久久免费| 91久久精品国产一区二区成人| 国产精品1区2区在线观看.| 久久久久国内视频| 两个人的视频大全免费| 国产中年淑女户外野战色| 亚洲真实伦在线观看| 成人鲁丝片一二三区免费| 亚洲成人中文字幕在线播放| 亚洲第一电影网av| 免费高清视频大片| 91在线观看av| 欧美在线一区亚洲| 亚洲 欧美 日韩 在线 免费| 国产成人aa在线观看| 国产精品影院久久| 极品教师在线视频| 91麻豆精品激情在线观看国产| av在线老鸭窝| 成人特级av手机在线观看| 国产熟女xx| 精品免费久久久久久久清纯| 免费av不卡在线播放| 美女cb高潮喷水在线观看| 99久久久亚洲精品蜜臀av| 中文字幕精品亚洲无线码一区| 人人妻人人澡欧美一区二区| 亚洲人成网站在线播| 高清日韩中文字幕在线| av专区在线播放| 欧美精品国产亚洲| 成人亚洲精品av一区二区| 12—13女人毛片做爰片一| 日本免费a在线| 内射极品少妇av片p| 国产精品久久久久久人妻精品电影| 女同久久另类99精品国产91| 麻豆成人午夜福利视频| 日本五十路高清| 精品午夜福利视频在线观看一区| 国产精品一及| 波多野结衣巨乳人妻| 在线观看美女被高潮喷水网站 | 亚洲狠狠婷婷综合久久图片| 黄色配什么色好看| 久久性视频一级片| 国产三级中文精品| 色av中文字幕| 美女高潮喷水抽搐中文字幕| 在线国产一区二区在线| 欧美成人性av电影在线观看| 欧美区成人在线视频| 国产真实乱freesex| 免费看a级黄色片| 欧美极品一区二区三区四区| 亚洲精品色激情综合| 啦啦啦观看免费观看视频高清| or卡值多少钱| 精品福利观看| 亚洲国产色片| 国产真实伦视频高清在线观看 | 精品不卡国产一区二区三区| 日韩有码中文字幕| 亚洲精品成人久久久久久| 中出人妻视频一区二区| 久久国产精品影院| 日本a在线网址| 国产精品99久久久久久久久| 九九热线精品视视频播放| 午夜免费男女啪啪视频观看 | 午夜福利免费观看在线| 国产毛片a区久久久久| 高清毛片免费观看视频网站| 国产精品久久久久久亚洲av鲁大| 亚洲人成网站在线播| 日本精品一区二区三区蜜桃| 欧美日本视频| 夜夜爽天天搞| 国产精品综合久久久久久久免费| 久久精品国产99精品国产亚洲性色| 日韩欧美一区二区三区在线观看| 丁香六月欧美| 女人十人毛片免费观看3o分钟| 国产视频一区二区在线看| 国产精品99久久久久久久久| 亚洲五月天丁香| 12—13女人毛片做爰片一| 欧美3d第一页| 国产精品免费一区二区三区在线| 日韩欧美在线乱码| 亚洲精华国产精华精| 成人av一区二区三区在线看| 婷婷丁香在线五月| 波多野结衣高清作品| 搡老熟女国产l中国老女人| 嫩草影院入口| 中文字幕av成人在线电影| 老司机福利观看| 亚洲18禁久久av| 欧美日韩国产亚洲二区| 日韩高清综合在线| 婷婷精品国产亚洲av在线| 日韩欧美在线二视频| 九色成人免费人妻av| 亚洲va日本ⅴa欧美va伊人久久| a在线观看视频网站| 国产精品久久久久久亚洲av鲁大| 别揉我奶头 嗯啊视频| 国产一区二区在线av高清观看| 伊人久久精品亚洲午夜| 给我免费播放毛片高清在线观看| 2021天堂中文幕一二区在线观| www.熟女人妻精品国产| 露出奶头的视频| 婷婷精品国产亚洲av| 熟女人妻精品中文字幕| avwww免费| 啦啦啦韩国在线观看视频| а√天堂www在线а√下载| 精品一区二区三区视频在线观看免费| 夜夜夜夜夜久久久久| 高清日韩中文字幕在线| 日日摸夜夜添夜夜添av毛片 | 高清毛片免费观看视频网站| 久久国产精品影院| www.www免费av| 一区二区三区激情视频| 免费观看的影片在线观看| av在线蜜桃| 久久精品国产99精品国产亚洲性色| 亚洲,欧美精品.| 一本综合久久免费| 青草久久国产| 97人妻精品一区二区三区麻豆| 亚洲在线自拍视频| 最近中文字幕高清免费大全6 | 男女做爰动态图高潮gif福利片| av专区在线播放| 免费搜索国产男女视频| 精品人妻偷拍中文字幕| 别揉我奶头 嗯啊视频| 淫秽高清视频在线观看| 小说图片视频综合网站| 夜夜夜夜夜久久久久| 久久久久久久久久黄片| 欧美激情国产日韩精品一区| 久久九九热精品免费| 亚洲欧美日韩无卡精品| 一本精品99久久精品77| 我要看日韩黄色一级片| 日本黄色视频三级网站网址| 老司机午夜福利在线观看视频| 十八禁网站免费在线| 又黄又爽又免费观看的视频| 国产成人aa在线观看| 99久久精品热视频| 亚洲成av人片在线播放无| 高清毛片免费观看视频网站| 亚洲国产精品sss在线观看| 99热这里只有是精品50| 两个人视频免费观看高清| 国产精品综合久久久久久久免费| 内地一区二区视频在线| 中文字幕熟女人妻在线| 亚洲成人免费电影在线观看| 免费看日本二区| 99在线人妻在线中文字幕| 激情在线观看视频在线高清| 午夜激情福利司机影院| 美女黄网站色视频| 日本熟妇午夜| 国产真实乱freesex| 婷婷六月久久综合丁香| 中文资源天堂在线| 亚洲av免费高清在线观看| 午夜福利欧美成人| 成人精品一区二区免费| 性色avwww在线观看| 深夜a级毛片| 欧美潮喷喷水| 97热精品久久久久久| 久久国产乱子伦精品免费另类| 怎么达到女性高潮| 欧美黑人巨大hd| 人人妻,人人澡人人爽秒播| 男女那种视频在线观看| 一区二区三区四区激情视频 | 欧洲精品卡2卡3卡4卡5卡区| 亚洲狠狠婷婷综合久久图片| 国产午夜福利久久久久久| 欧美日韩亚洲国产一区二区在线观看| 欧美性猛交黑人性爽| 熟女电影av网| 中出人妻视频一区二区| 亚洲av日韩精品久久久久久密| 中文亚洲av片在线观看爽| 如何舔出高潮| 哪里可以看免费的av片| 一级黄色大片毛片| 首页视频小说图片口味搜索| 久久久久久久久久黄片| 婷婷亚洲欧美| 亚洲成a人片在线一区二区| 长腿黑丝高跟| 在线观看66精品国产| 国产精品亚洲av一区麻豆| 九色成人免费人妻av| 国产老妇女一区| 如何舔出高潮| 亚洲av电影在线进入| 色哟哟哟哟哟哟| 直男gayav资源| 午夜亚洲福利在线播放| 中文字幕av成人在线电影| 国产色爽女视频免费观看| 免费人成视频x8x8入口观看| 免费看a级黄色片| 日日夜夜操网爽|