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

    面向ARM Cortex-M系列MCU的RT-Thread駐留方法

    2022-02-21 00:45許明宇王宜懷
    現(xiàn)代電子技術(shù) 2022年4期
    關(guān)鍵詞:小燈線程嵌入式

    許明宇,王宜懷,汪 恒

    (蘇州大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006)

    0 引言

    RT-Thread是上海睿賽德公司于2006年開始發(fā)布的一款面向嵌入式人工智能與物聯(lián)網(wǎng)國產(chǎn)實時操作系統(tǒng)(Real Time Operating System,RTOS),具有自主知識產(chǎn)權(quán)?;趦?yōu)先級、可搶占的調(diào)度算法,該系統(tǒng)服務(wù)包括線程管理、實時調(diào)度管理、中斷管理和系統(tǒng)時鐘管理等,已在國內(nèi)逐步推廣應(yīng)用。

    基于微控制器進(jìn)行RTOS應(yīng)用程序開發(fā)時,操作系統(tǒng)內(nèi)核源程序與用戶程序作為一個整體進(jìn)行編譯、鏈接生成機器碼,具有編譯時間較長、功能分割模糊、程序調(diào)試不便等缺點。若能實現(xiàn)RTOS的機器碼與用戶程序的物理隔離、有機連接并先后下載到FLASH中,則可以縮短應(yīng)用開發(fā)編譯時間,降低編程難度,方便用戶程序的調(diào)試。已有學(xué)者進(jìn)行了初步探索,文獻(xiàn)[4-5]在PC機上實現(xiàn)了XP系統(tǒng)在EPROM中固化;文獻(xiàn)[6]在VxWorks653操作系統(tǒng)下實現(xiàn)了一種分區(qū)啟動的方案。但對于嵌入式實時操作系統(tǒng)的駐留方法研究少見報道。RTOS的駐留可以實現(xiàn)RTOS與應(yīng)用程序的物理隔離,對降低RTOS下應(yīng)用開發(fā)門檻十分有益,可以有效降低嵌入式人工智能與物聯(lián)網(wǎng)終端的開發(fā)難度。

    要實現(xiàn)某一種實時操作系統(tǒng)在一類微控制器芯片上的駐留,首先要將該實時操作系統(tǒng)移植到相應(yīng)的芯片上。關(guān)于實時操作系統(tǒng)的移植方法已有較多的文獻(xiàn)可供借鑒,文獻(xiàn)[7]基于Cortex-M3內(nèi)核的STM32F103移植了μC/OS-Ⅱ,并設(shè)計實現(xiàn)了蛇形機器人。文獻(xiàn)[8]將mbed OS移植到Cortex M0+內(nèi)核的MKL36Z64VLH4以及Cortex M4內(nèi)核的MSP432上。此外,文獻(xiàn)[9]實現(xiàn)了μC/OS-Ⅲ的移植,文獻(xiàn)[10]實現(xiàn)了MQX的移植。

    ARM Cortex-M是安謀公司推出的面向微控制器領(lǐng)域的微處理器,被廣泛應(yīng)用于嵌入式系統(tǒng)領(lǐng)域。本文以ARM Cortex-M系列的STM32L431微控制器為藍(lán)本研究RT-Thread的駐留方法。

    為了增加普適性,本文研究基于通用嵌入式計算機(General Embeded Computer,GEC)架構(gòu),把RT-Thread駐留于基本輸入/輸出系統(tǒng)(Basic Input/Output System,BIOS)中,實現(xiàn)BIOS與User程序的物理隔離。首先給出通用嵌入式計算機架構(gòu)簡介;然后給出在GEC架構(gòu)下將RT-Thread駐留在BIOS中的方法,主要包括存儲區(qū)域的分割、BIOS到User的銜接以及操作系統(tǒng)服務(wù)接口映射機制等;最后給出實踐樣例,檢驗該方法的可行性。

    1 通用嵌入式計算機架構(gòu)

    為了提高嵌入式應(yīng)用的編程顆粒度并提高可移植性,借鑒通用計算機的概念與做法,將基本輸入輸出系統(tǒng)(BIOS)與用戶程序(User)分離,構(gòu)建出通用嵌入式計算機(GEC),如圖1所示,為實現(xiàn)RT-Thread的駐留提供技術(shù)基礎(chǔ)。在硬件方面,通用嵌入式計算機由MCU硬件最小系統(tǒng)及其功能組件構(gòu)成;在軟件方面,其軟件由BIOS與User兩個部分構(gòu)成,類似于通用計算機。本文以此為基礎(chǔ)進(jìn)行RT-Thread駐留方法研究,將RTThread包含在BIOS內(nèi),以提高其可移植性和用戶程序的可復(fù)用性。

    圖1 GEC架構(gòu)

    1.1 BIOS功能概述

    BIOS是先于User固化在MCU中的一段程序,主要包括硬件抽象層、設(shè)備描述、RT-Thread內(nèi)核和API調(diào)用接口。

    硬件抽象層將GPIO、UART、SPI等抽象成與硬件無關(guān)的驅(qū)動構(gòu)件供設(shè)備描述。

    設(shè)備描述是在硬件驅(qū)動構(gòu)件的基礎(chǔ)上,對具體開發(fā)板上的小燈、傳感器等設(shè)備進(jìn)行功能描述,形成對應(yīng)的設(shè)備驅(qū)動構(gòu)件。

    RT-Thread內(nèi)核即駐留的操作系統(tǒng),包含內(nèi)存管理、線程管理、同步與互斥等操作系統(tǒng)服務(wù)。

    API調(diào)用接口將硬件驅(qū)動構(gòu)件、設(shè)備驅(qū)動構(gòu)件和操作系統(tǒng)服務(wù)的實現(xiàn)隱藏起來,將其以接口的形式供User程序調(diào)用。

    1.2 User功能概述

    User程序主要包括設(shè)備描述、軟件構(gòu)件和用戶程序。設(shè)備描述是對未在BIOS中進(jìn)行描述的設(shè)備進(jìn)行補充,通過API調(diào)用接口調(diào)用硬件驅(qū)動構(gòu)件來實現(xiàn)。軟件構(gòu)件是與硬件無關(guān)的C庫函數(shù),比如整數(shù)轉(zhuǎn)字符串。用戶程序即最終實現(xiàn)的嵌入式應(yīng)用,主要通過調(diào)用軟件構(gòu)件、設(shè)備驅(qū)動構(gòu)件以及通過API調(diào)用接口調(diào)用BIOS中的操作系統(tǒng)服務(wù)、設(shè)備驅(qū)動構(gòu)件和硬件驅(qū)動構(gòu)件來實現(xiàn)。

    1.3 GEC架構(gòu)啟動流程

    在GEC架構(gòu)下,芯片上電后先運行BIOS程序,然后由BIOS跳轉(zhuǎn)到User程序運行。BIOS程序從Reset_Handler開始運行,首先將全局變量拷貝到RAM中并初始化,然后初始化系統(tǒng)時鐘,接著進(jìn)入BIOS的main函數(shù)進(jìn)行外設(shè)模塊初始化,最后跳轉(zhuǎn)到User程序。User程序也從Reset_Handler開始運行,User的Reset_Handler先將API表的地址賦值給一個全局函數(shù)指針數(shù)組(初始化API向量表),然后進(jìn)入User的main函數(shù),最后在main函數(shù)中啟動RT-Thread。GEC架構(gòu)啟動流程如圖2所示。

    圖2 GEC架構(gòu)啟動流程

    2 RT-Thread駐留于BIOS內(nèi)的基本方法

    要實現(xiàn)RT-Thread在GEC架構(gòu)下的駐留,需要對存儲空間進(jìn)行合理劃分,并設(shè)計符合軟件工程的可復(fù)用、可移植的接口函數(shù)。

    2.1 存儲空間劃分

    ARM Cortex-M系列的微控制器使用的是哈佛結(jié)構(gòu),代碼和數(shù)據(jù)使用2個不同的存儲器,分別為FLASH和RAM。FLASH中存放代碼、常量和默認(rèn)的中斷向量表,RAM中存放全局變量、靜態(tài)變量和局部變量。要實現(xiàn)RT-Thread的駐留,需要合理劃分BIOS和User的存儲空間,使其代碼不重疊,變量不沖突。

    2.1.1 FLASH空間劃分

    在非GEC框架下,MCU的FLASH空間通常劃分為中斷向量表段(.vector)、代碼段(.text)和常量段(.rodata)三段。中斷向量表段存放中斷處理程序的入口地址,代碼段存放程序的機器碼,常量段存放程序中使用到的常量數(shù)據(jù)。GEC框架中將FLASH劃分為BIOS和User兩部分,User部分按上述的三段式劃分,BIOS部分則在三段式基礎(chǔ)上又切分出API向量表段,用來存放向User提供的接口函數(shù)地址,也就是七段式劃分。BIOS部分的FLASH按緊湊原則分配,即需要多少就分配多少空間,這樣可以盡可能多地把空間留給User,從而裝入更大空間需求的應(yīng)用層程序,實現(xiàn)更多的應(yīng)用層功能。FLASH空間的劃分如圖3所示,括號內(nèi)是以STM32L431RC芯片為例劃分地址的示例。

    圖3 FLASH空間劃分

    BIOS程序的FLASH空間應(yīng)遵循緊湊原則,避免分配過大或過小,過大會導(dǎo)致FLASH空間浪費甚至犧牲User程序功能來滿足程序的需要,過小會使得程序編譯不通過。

    2.1.2 RAM空間劃分

    RAM也需要劃分成BIOS和User兩部分,一般來說,它們都由已初始化的全局靜態(tài)變量數(shù)據(jù)段(data段)、未初始化的全局靜態(tài)變量數(shù)據(jù)段(bss段)、堆空間(heap段)和??臻g(stack段)組成。由于RT-Thread使用靜態(tài)全局變量定義了操作系統(tǒng)的線程堆空間,這一部分占用了BIOS的bss段,所以BIOS的RAM需要劃分足夠大的空間供線程的創(chuàng)建。因為BIOS占用了較大的RAM空間導(dǎo)致User可用空間減少,因此在資源緊湊的MCU上考慮使用共享棧分配方式對RAM進(jìn)行劃分,即BIOS和User使用相同的棧空間但其他部分不共享,如圖4所示,起始地址和結(jié)束地址后括號內(nèi)的數(shù)表示STM32L431RC芯片的RAM地址分配。

    圖4 RAM共享棧分配方式

    由于BIOS和User使用共享??臻g進(jìn)行RAM分配,所以User實際的RAM空間是與BIOS的堆和棧重疊的。BIOS中的功能應(yīng)盡可能少地使用new或malloc申請空間,避免數(shù)據(jù)沖入User的data段和bss段。此外,由于RT-Thread的線程堆定義在BIOS的bss段,所以需要給BIOS分配較多的RAM空間。

    2.2 API向量表

    合理劃分存儲空間后,RT-Thread就可以駐留在BIOS中,但要在User中使用操作系統(tǒng)提供的內(nèi)存管理、線程管理等功能,還需要獲得對應(yīng)功能的函數(shù)地址。為此,在BIOS中設(shè)計了API向量表來登記接口函數(shù)的入口地址并固化在FLASH的指定地址,User通過讀取該地址獲取API向量表。生成API向量表主要包括接口函數(shù)定義、接口函數(shù)聲明和接口函數(shù)登記三部分。

    1)接口函數(shù)定義。該方式與一般的函數(shù)沒有區(qū)別,主要包含函數(shù)名、返回值類型、參數(shù)和函數(shù)體等,并且除了RT-Thread相關(guān)的函數(shù)外還可以包含各類硬件驅(qū)動構(gòu)件函數(shù)和軟件構(gòu)件函數(shù)。

    2)接口函數(shù)聲明。接口函數(shù)定義完成之后,需要在頭文件中聲明該函數(shù),通常頭文件名稱與其所在源文件同名。函數(shù)聲明需要給出改接口的函數(shù)名、返回值、參數(shù)和函數(shù)功能說明,從而提高代碼可讀性和可維護(hù)性。

    3)接口函數(shù)登記。接口函數(shù)完成定義和聲明后,需要將其入口地址登記到API向量表中。登記的方法借鑒中斷向量表的定義,對所有的接口函數(shù)進(jìn)行編號,并將函數(shù)名按編號有序地存放在指定區(qū)域中,這個區(qū)域就是API向量表。API向量表通常使用數(shù)組來表示(如BIOS_API),接口函數(shù)的編號與數(shù)組的下標(biāo)一致,即0號函 數(shù) 對 應(yīng)BIOS_API[0],1號 對 應(yīng)BIOS_API[1],以 此類推。

    2.3 User獲取接口函數(shù)

    在BIOS跳轉(zhuǎn)到User程序運行后,需要獲取API向量表首地址并對其記錄的接口函數(shù)地址進(jìn)行重映射后,才能調(diào)用BIOS提供的操作系統(tǒng)服務(wù)接口。

    2.3.1 獲取API向量表首地址

    API向量表首地址以宏定義的形式在User程序中給出,當(dāng)BIOS程序跳轉(zhuǎn)到User程序后,會在User的Reset_Handler中將宏定義的值賦值給一個全局函數(shù)指針數(shù)值變量,從而實現(xiàn)獲取BIOS中API向量表的地址。

    2.3.2 接口函數(shù)重映射

    獲取到API向量表后,還不能直接調(diào)用API,因為表中的每一條記錄都只是一個函數(shù)地址,并沒有與之對應(yīng)的返回值和參數(shù)類型信息,因此需要對這些地址記錄進(jìn)行重映射。重映射使用宏定義的方式將地址記錄映射成函數(shù)指針,并且函數(shù)指針的參數(shù)和返回值類型必須與登記的相同,從而保證程序調(diào)用時的正確性。表1給出了部分RT-Thread的系統(tǒng)服務(wù)接口函數(shù)的重映射,重映射形式如下:

    表1 部分對外接口函數(shù)重定向表

    格式:

    #define函數(shù)名((接口函數(shù)指針表達(dá)形式)(API向量表數(shù)組[接口函數(shù)序號]))

    示例:

    3 RT-Thread駐留測試

    實驗使用STM32L431RC芯片在STM32CubeIDE開發(fā)環(huán)境下進(jìn)行測試。測試程序分為BIOS和User兩個部分,BIOS中實現(xiàn)了RT-Thread的駐留并先固化到FLASH中,User調(diào)用駐留的操作系統(tǒng)服務(wù)接口和硬件驅(qū)動接口實現(xiàn)具體應(yīng)用。

    3.1 FLASH和RAM實際劃分

    STM32L431RC片內(nèi)FLASH大小為256 KB,共128個扇區(qū),每個扇區(qū)大小為2 KB。在駐留了RT-Thread后,BIOS共分配14個扇區(qū),其中2個扇區(qū)分配給API向量表,另外12個扇區(qū)分配給BIOS的vector段、text段和rodata段。片內(nèi)RAM大小為64 KB,前16 KB分配給BIOS的data段、bss段和heap段,后48 KB分配給User和共享??臻g。具體的空間分配如表2所示。

    表2 STM32L431RC中BIOS和User空間劃分表

    3.2 駐留測試實驗設(shè)計

    駐留測試實驗利用三色燈和串口輸出對RT-Thread的互斥量、事件機制、信號量和延時函數(shù)等系統(tǒng)服務(wù)接口進(jìn)行測試。實驗中設(shè)計紅、綠、藍(lán)三色小燈線程,分別控制三色燈的三種顏色,并且藍(lán)燈線程優(yōu)先級小于紅燈和綠燈,4個系統(tǒng)服務(wù)的測試設(shè)計如下:

    1)互斥量

    每個小燈線程使用串口向PC機發(fā)送點亮或熄滅狀態(tài),并且使用互斥量控制串口輸出,即必須有一個線程發(fā)送完消息后其他線程才可以占用串口。

    2)事件機制

    三個小燈按紅、綠、藍(lán)順序依次進(jìn)入就緒隊列,綠燈線程設(shè)置了綠燈事件,必須等待事件觸發(fā)才能執(zhí)行點亮小燈操作,綠燈事件由藍(lán)燈線程點亮藍(lán)燈后觸發(fā)。

    3)信號量

    每個小燈線程在執(zhí)行點亮操作前,需要獲取一個最大數(shù)量為2的三色燈信號量,該信號量使得只能有兩個小燈同時點亮,即只能是紅藍(lán)、紅綠或藍(lán)綠合成色小燈。

    4)延時函數(shù)

    每個線程點亮小燈后會等待5 s,然后熄滅小燈再嘗試獲取三色燈信號量點亮小燈。

    按線程進(jìn)入點亮、等待和阻塞狀態(tài)的順序進(jìn)行分析,點亮狀態(tài)是獲得三色燈信號量點亮小燈,等待狀態(tài)是暫未獲得三色燈信號量進(jìn)入等待,阻塞是綠燈線程等待綠燈事件。從上電后每隔5 s的理論情況如圖5所示。

    圖5 三色燈混合實驗運行效果

    上電后第一個5 s情況與后面不同,5 s后是5~15 s情況的循環(huán),整體上是三色燈在紫色和黃色之間切換。

    3.3 測試實驗結(jié)果

    測試程序上電后,按GEC架構(gòu)啟動流程進(jìn)行,首先執(zhí)行BIOS程序,然后跳轉(zhuǎn)到User程序啟動操作系統(tǒng),接著啟動紅、綠、藍(lán)三個小燈線程。小燈線程啟動后各自執(zhí)行對應(yīng)顏色燈的點亮,并從串口向PC機發(fā)送消息。PC機使用串口調(diào)試助手接收到的消息如圖6所示。

    圖6 測試實驗運行流程

    在實驗中使用STM32CubeIDE編譯該測試程序,與非GEC架構(gòu)下不使用駐留技術(shù)的工程相比,耗時減少了約12,編譯時間節(jié)約效果顯著。

    4 結(jié) 語

    本文以Arm Cortex-M內(nèi)核的STM32L431芯片為例,給出了在通用嵌入式計算機GEC架構(gòu)下RT-Thread實時操作系統(tǒng)的駐留方法,可有效降低RTOS下應(yīng)用程序的開發(fā)難度,解決了在微控制器上使用RTOS編寫應(yīng)用的編譯時間較長、功能分割模糊、程序調(diào)試不便等問題,為嵌入式人工智能與物聯(lián)網(wǎng)終端的快速開發(fā)提供了技術(shù)基礎(chǔ)。駐留RT-Thread的關(guān)鍵要點主要有:FLASH空間的合理劃分,RAM的合理應(yīng)用,利用API接口向量表實現(xiàn)RTOS服務(wù)函數(shù)映射、BIOS及User的有機銜接等。實驗在蘇州大學(xué)自主研發(fā)的集成開發(fā)環(huán)境AHLGEC-IDE下進(jìn)行,得到了良好效果,測試用例可以在蘇州大學(xué)嵌入式學(xué)習(xí)社區(qū)官網(wǎng)獲得。本文方法可以為其他實時操作系統(tǒng)的駐留提供借鑒。后續(xù)將在此基礎(chǔ)上進(jìn)行RTOS下用戶程序統(tǒng)一性研究,以實現(xiàn)不同RTOS下應(yīng)用程序的可移植性。

    猜你喜歡
    小燈線程嵌入式
    小燈與外婆
    我的小燈
    搭建基于Qt的嵌入式開發(fā)平臺
    淺談linux多線程協(xié)作
    嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
    歐曼GTL牽引車小燈電路及控制邏輯
    無線電力小燈的制作
    Altera加入嵌入式視覺聯(lián)盟
    倍福 CX8091嵌入式控制器
    基于上下文定界的Fork/Join并行性的并發(fā)程序可達(dá)性分析*
    日产精品乱码卡一卡2卡三| 禁无遮挡网站| 99国产精品一区二区蜜桃av| 男插女下体视频免费在线播放| 能在线免费看毛片的网站| 午夜福利视频1000在线观看| 久久人人爽人人片av| 成人二区视频| 精品99又大又爽又粗少妇毛片| 成人二区视频| 日本黄色片子视频| 国产视频内射| 亚洲欧美日韩高清专用| 午夜激情欧美在线| 国产精品蜜桃在线观看 | 日韩成人av中文字幕在线观看| 夜夜爽天天搞| 亚洲精品久久国产高清桃花| 一本久久中文字幕| 国产人妻一区二区三区在| 老司机影院成人| 久久久国产成人免费| 一进一出抽搐动态| 欧美3d第一页| 国产精品嫩草影院av在线观看| 精品久久久久久久末码| 亚洲va在线va天堂va国产| 1024手机看黄色片| 校园春色视频在线观看| 在线播放无遮挡| 麻豆久久精品国产亚洲av| 91aial.com中文字幕在线观看| 丰满乱子伦码专区| 午夜激情福利司机影院| 波多野结衣巨乳人妻| 边亲边吃奶的免费视频| 少妇的逼好多水| 国产亚洲精品久久久com| 国产av一区在线观看免费| 欧美不卡视频在线免费观看| 五月伊人婷婷丁香| 少妇裸体淫交视频免费看高清| 久久久久性生活片| 91精品一卡2卡3卡4卡| 91午夜精品亚洲一区二区三区| 一边亲一边摸免费视频| 99在线视频只有这里精品首页| 又黄又爽又刺激的免费视频.| 国产高清不卡午夜福利| 日日撸夜夜添| 禁无遮挡网站| 联通29元200g的流量卡| 精品人妻偷拍中文字幕| 成人特级av手机在线观看| 午夜爱爱视频在线播放| 国产av麻豆久久久久久久| 日韩欧美 国产精品| 国产男人的电影天堂91| 18禁裸乳无遮挡免费网站照片| 久久九九热精品免费| 97热精品久久久久久| 成人二区视频| 搞女人的毛片| 国产不卡一卡二| 91久久精品国产一区二区成人| 如何舔出高潮| 国产白丝娇喘喷水9色精品| 日韩精品有码人妻一区| 欧美成人一区二区免费高清观看| 国产色爽女视频免费观看| 中文亚洲av片在线观看爽| 日韩欧美三级三区| 99在线视频只有这里精品首页| 免费人成在线观看视频色| 欧美精品一区二区大全| 久久久精品94久久精品| 成年免费大片在线观看| 久久久久国产网址| 午夜a级毛片| 好男人视频免费观看在线| 国产av一区在线观看免费| 九九在线视频观看精品| 国产高清视频在线观看网站| 国产精品久久久久久精品电影小说 | 麻豆精品久久久久久蜜桃| 亚洲成av人片在线播放无| 波多野结衣高清无吗| 最近视频中文字幕2019在线8| 少妇熟女欧美另类| 国产探花极品一区二区| 亚洲精品成人久久久久久| av在线播放精品| 免费看日本二区| 久久久久国产网址| 亚洲av.av天堂| 男插女下体视频免费在线播放| 亚洲在线观看片| av在线蜜桃| 男女边吃奶边做爰视频| 人妻系列 视频| 国产午夜精品论理片| 美女大奶头视频| 成人午夜高清在线视频| 亚洲人成网站在线播| 少妇的逼水好多| 三级经典国产精品| 午夜爱爱视频在线播放| 日韩欧美三级三区| 少妇丰满av| 国产精品一及| 舔av片在线| 免费大片18禁| 亚洲高清免费不卡视频| 亚洲欧美日韩高清专用| 中出人妻视频一区二区| 国产日韩欧美在线精品| 午夜福利在线观看吧| 亚洲欧美日韩高清专用| 特大巨黑吊av在线直播| 免费一级毛片在线播放高清视频| 大香蕉久久网| 国产亚洲5aaaaa淫片| 国产成人福利小说| 乱人视频在线观看| 亚洲最大成人手机在线| 亚洲国产精品久久男人天堂| 联通29元200g的流量卡| 久久精品国产亚洲网站| 欧美成人精品欧美一级黄| 精品人妻一区二区三区麻豆| av专区在线播放| 人人妻人人澡人人爽人人夜夜 | 亚洲精品日韩av片在线观看| 中文精品一卡2卡3卡4更新| 国产黄片视频在线免费观看| 国产片特级美女逼逼视频| 高清毛片免费看| 国产亚洲精品av在线| 天堂中文最新版在线下载 | 欧美日韩精品成人综合77777| 97在线视频观看| 午夜老司机福利剧场| 一卡2卡三卡四卡精品乱码亚洲| 免费av不卡在线播放| 亚洲国产欧洲综合997久久,| 夜夜夜夜夜久久久久| 国产精品国产高清国产av| 亚洲美女视频黄频| 超碰av人人做人人爽久久| 亚洲欧美中文字幕日韩二区| 久久草成人影院| 小说图片视频综合网站| 国产高潮美女av| 国产蜜桃级精品一区二区三区| 舔av片在线| 少妇人妻精品综合一区二区 | 九色成人免费人妻av| 成年免费大片在线观看| 亚洲人成网站在线播放欧美日韩| 97在线视频观看| 蜜桃亚洲精品一区二区三区| 亚洲中文字幕日韩| 综合色av麻豆| 欧美高清性xxxxhd video| 国产极品精品免费视频能看的| or卡值多少钱| av黄色大香蕉| 神马国产精品三级电影在线观看| 一个人观看的视频www高清免费观看| 国产成人a区在线观看| 久久精品人妻少妇| 亚洲aⅴ乱码一区二区在线播放| 国产色爽女视频免费观看| 久久欧美精品欧美久久欧美| 一区二区三区免费毛片| 免费av观看视频| 亚洲美女视频黄频| 午夜激情欧美在线| 在线观看66精品国产| 九色成人免费人妻av| 人妻系列 视频| 不卡视频在线观看欧美| 九九在线视频观看精品| 久久精品国产亚洲网站| 日本一本二区三区精品| 伦精品一区二区三区| 成人毛片a级毛片在线播放| 国产蜜桃级精品一区二区三区| 我要看日韩黄色一级片| 99热全是精品| 免费人成在线观看视频色| 在线天堂最新版资源| 亚洲综合色惰| 麻豆国产av国片精品| 伊人久久精品亚洲午夜| 天堂√8在线中文| 国产v大片淫在线免费观看| 免费观看在线日韩| 亚洲七黄色美女视频| 精品久久久久久久久久免费视频| 国产一区二区三区av在线 | 免费无遮挡裸体视频| 亚洲内射少妇av| 一卡2卡三卡四卡精品乱码亚洲| 成年女人看的毛片在线观看| 99热只有精品国产| 国产片特级美女逼逼视频| 欧美高清性xxxxhd video| 毛片一级片免费看久久久久| 中文字幕精品亚洲无线码一区| 国产大屁股一区二区在线视频| 午夜免费男女啪啪视频观看| 在线观看av片永久免费下载| 国产成人精品婷婷| 国产精品久久电影中文字幕| 我的老师免费观看完整版| 欧美性感艳星| 亚洲一区高清亚洲精品| 国产伦精品一区二区三区四那| 亚洲av二区三区四区| 亚洲精品日韩在线中文字幕 | 成人性生交大片免费视频hd| 一本精品99久久精品77| 国产精品.久久久| 国产一区二区在线观看日韩| 亚洲欧美日韩卡通动漫| 一级av片app| 一个人看视频在线观看www免费| 国产精品免费一区二区三区在线| 成人二区视频| 91午夜精品亚洲一区二区三区| 亚洲婷婷狠狠爱综合网| 日韩成人伦理影院| 又粗又硬又长又爽又黄的视频 | 久久久午夜欧美精品| 能在线免费看毛片的网站| 国产伦理片在线播放av一区 | 五月玫瑰六月丁香| 国产一级毛片在线| 国产极品精品免费视频能看的| 爱豆传媒免费全集在线观看| 一本久久精品| 又爽又黄a免费视频| 国产精品国产高清国产av| 最新中文字幕久久久久| 免费人成视频x8x8入口观看| 精品人妻一区二区三区麻豆| 黄片无遮挡物在线观看| 在线免费十八禁| 免费无遮挡裸体视频| 淫秽高清视频在线观看| 国产色婷婷99| 久久婷婷人人爽人人干人人爱| 麻豆精品久久久久久蜜桃| 国产午夜福利久久久久久| 校园人妻丝袜中文字幕| 精品久久久久久久人妻蜜臀av| 日韩制服骚丝袜av| 成年免费大片在线观看| 久久热精品热| 男人和女人高潮做爰伦理| 人妻制服诱惑在线中文字幕| a级毛片a级免费在线| 丝袜喷水一区| 草草在线视频免费看| 韩国av在线不卡| av天堂中文字幕网| 亚洲国产欧洲综合997久久,| 国内精品宾馆在线| 亚洲欧美日韩高清在线视频| 亚洲人成网站在线播放欧美日韩| 久久99热这里只有精品18| 亚洲va在线va天堂va国产| 成人一区二区视频在线观看| av.在线天堂| 精品国产三级普通话版| 好男人视频免费观看在线| 青春草视频在线免费观看| av天堂中文字幕网| 91麻豆精品激情在线观看国产| 一本久久中文字幕| 人人妻人人看人人澡| 日本色播在线视频| 国产成人a∨麻豆精品| 精品久久久久久成人av| 内射极品少妇av片p| 美女国产视频在线观看| 国产高清有码在线观看视频| 99久久人妻综合| 小蜜桃在线观看免费完整版高清| 国产不卡一卡二| 三级毛片av免费| 国产在线男女| 在线观看一区二区三区| 亚洲欧美日韩高清专用| 国产欧美日韩精品一区二区| eeuss影院久久| 午夜免费激情av| 国产精品人妻久久久久久| 搡女人真爽免费视频火全软件| 久久精品国产亚洲网站| 国语自产精品视频在线第100页| 亚洲欧洲日产国产| 成年av动漫网址| 不卡一级毛片| av视频在线观看入口| 日韩一区二区视频免费看| 亚洲欧洲国产日韩| 99热全是精品| 国产白丝娇喘喷水9色精品| 国产精品国产三级国产av玫瑰| 亚洲人与动物交配视频| 国产精品1区2区在线观看.| 天堂√8在线中文| 51国产日韩欧美| 欧美最新免费一区二区三区| or卡值多少钱| 久久久久久久亚洲中文字幕| 亚洲精品日韩在线中文字幕 | 91狼人影院| 久久人人精品亚洲av| 夜夜爽天天搞| 人人妻人人看人人澡| 欧美bdsm另类| 在线免费十八禁| 婷婷亚洲欧美| 久久精品影院6| 日本在线视频免费播放| 边亲边吃奶的免费视频| 国产一区二区三区在线臀色熟女| 麻豆乱淫一区二区| 亚洲经典国产精华液单| 国产一区二区激情短视频| 99热这里只有精品一区| 插逼视频在线观看| 成年女人永久免费观看视频| 欧美极品一区二区三区四区| 日本-黄色视频高清免费观看| 丰满乱子伦码专区| 亚洲天堂国产精品一区在线| 日韩av不卡免费在线播放| 嫩草影院新地址| 小蜜桃在线观看免费完整版高清| 国产精品免费一区二区三区在线| 久久精品国产99精品国产亚洲性色| 国产精品一区二区性色av| 狠狠狠狠99中文字幕| 老师上课跳d突然被开到最大视频| 日韩精品青青久久久久久| 一级二级三级毛片免费看| 校园春色视频在线观看| 欧美又色又爽又黄视频| 亚洲va在线va天堂va国产| 亚洲人成网站在线观看播放| 久久久久久久久大av| 韩国av在线不卡| 久久久久国产网址| 日韩三级伦理在线观看| 国产精品蜜桃在线观看 | 在线观看美女被高潮喷水网站| 丝袜喷水一区| eeuss影院久久| 中国美女看黄片| 联通29元200g的流量卡| eeuss影院久久| 亚洲欧美清纯卡通| 黄色配什么色好看| 91久久精品国产一区二区三区| 国产精品永久免费网站| 成年女人看的毛片在线观看| 国内揄拍国产精品人妻在线| 超碰av人人做人人爽久久| 可以在线观看毛片的网站| 国产成人91sexporn| 免费看av在线观看网站| 精品人妻偷拍中文字幕| 国产精华一区二区三区| av在线亚洲专区| 亚洲熟妇中文字幕五十中出| 老司机福利观看| 午夜福利在线观看免费完整高清在 | 一本一本综合久久| 久久久久久久久久久免费av| 深爱激情五月婷婷| 99热这里只有是精品50| 国内揄拍国产精品人妻在线| 麻豆乱淫一区二区| 日本免费一区二区三区高清不卡| 校园春色视频在线观看| 日韩人妻高清精品专区| 一本久久精品| 国产伦在线观看视频一区| 日韩欧美一区二区三区在线观看| 午夜精品国产一区二区电影 | 久久热精品热| 禁无遮挡网站| 免费无遮挡裸体视频| 我的女老师完整版在线观看| 国产精品久久久久久久久免| av在线观看视频网站免费| 国产精品久久久久久精品电影小说 | 非洲黑人性xxxx精品又粗又长| 亚洲经典国产精华液单| 岛国在线免费视频观看| 97超碰精品成人国产| 高清日韩中文字幕在线| 校园春色视频在线观看| 亚洲欧美精品专区久久| 亚洲欧美中文字幕日韩二区| 国产亚洲精品久久久久久毛片| 搡老妇女老女人老熟妇| 99精品在免费线老司机午夜| 日韩三级伦理在线观看| 精品久久久久久成人av| 日韩人妻高清精品专区| 一本久久精品| 亚洲成av人片在线播放无| 久久久久久大精品| 亚洲人成网站高清观看| 看非洲黑人一级黄片| 乱系列少妇在线播放| 美女脱内裤让男人舔精品视频 | 国产久久久一区二区三区| 亚洲欧美精品专区久久| 午夜精品在线福利| 亚洲国产高清在线一区二区三| 亚洲欧美日韩卡通动漫| 看黄色毛片网站| 一区福利在线观看| 久久人人爽人人片av| 欧美精品一区二区大全| 精品一区二区三区视频在线| 永久网站在线| 国产黄片视频在线免费观看| 国产午夜精品论理片| 欧美性猛交黑人性爽| 一级毛片aaaaaa免费看小| 亚洲av免费在线观看| 欧美极品一区二区三区四区| 只有这里有精品99| 亚洲国产色片| 欧美精品一区二区大全| 男人的好看免费观看在线视频| 久久鲁丝午夜福利片| 久久久久久国产a免费观看| 日韩大尺度精品在线看网址| 高清日韩中文字幕在线| 极品教师在线视频| 91午夜精品亚洲一区二区三区| 精品欧美国产一区二区三| 中文亚洲av片在线观看爽| 18禁在线无遮挡免费观看视频| 搞女人的毛片| 九九热线精品视视频播放| 国产日本99.免费观看| 久久亚洲国产成人精品v| 又粗又硬又长又爽又黄的视频 | 成人毛片60女人毛片免费| 国产精品女同一区二区软件| 国产乱人偷精品视频| 91av网一区二区| 国产真实乱freesex| 天堂中文最新版在线下载 | 日韩欧美精品免费久久| 天天一区二区日本电影三级| а√天堂www在线а√下载| 欧美日韩国产亚洲二区| 欧美性猛交黑人性爽| a级一级毛片免费在线观看| 国产国拍精品亚洲av在线观看| 亚洲在线自拍视频| 国产成人91sexporn| 亚洲av电影不卡..在线观看| www日本黄色视频网| 国产91av在线免费观看| 亚洲欧美成人综合另类久久久 | 亚洲图色成人| 欧美+亚洲+日韩+国产| 午夜激情福利司机影院| 日韩av不卡免费在线播放| 精品无人区乱码1区二区| 国产高潮美女av| 麻豆成人午夜福利视频| 国产伦在线观看视频一区| 综合色av麻豆| 青春草视频在线免费观看| АⅤ资源中文在线天堂| 99热精品在线国产| 欧美性猛交黑人性爽| 少妇的逼水好多| 中国国产av一级| 中国美白少妇内射xxxbb| 国国产精品蜜臀av免费| av专区在线播放| 亚洲av男天堂| 男人狂女人下面高潮的视频| 久久99精品国语久久久| 国产精品一区www在线观看| 麻豆久久精品国产亚洲av| 麻豆国产av国片精品| 1000部很黄的大片| 可以在线观看的亚洲视频| 日产精品乱码卡一卡2卡三| 国产69精品久久久久777片| 少妇人妻一区二区三区视频| 免费黄网站久久成人精品| 男女下面进入的视频免费午夜| 国产亚洲欧美98| 22中文网久久字幕| 亚洲成人久久爱视频| 22中文网久久字幕| 亚洲精品影视一区二区三区av| 国产伦理片在线播放av一区 | 三级毛片av免费| 91午夜精品亚洲一区二区三区| 最近2019中文字幕mv第一页| 又粗又爽又猛毛片免费看| 亚洲人与动物交配视频| 亚洲欧美成人综合另类久久久 | 国产精品久久久久久亚洲av鲁大| 国产久久久一区二区三区| 男女边吃奶边做爰视频| 三级经典国产精品| 熟女人妻精品中文字幕| avwww免费| 99精品在免费线老司机午夜| 99国产精品一区二区蜜桃av| 欧美一区二区精品小视频在线| 老司机福利观看| 99在线人妻在线中文字幕| 亚洲在久久综合| 给我免费播放毛片高清在线观看| 自拍偷自拍亚洲精品老妇| av黄色大香蕉| 美女xxoo啪啪120秒动态图| 国产高清不卡午夜福利| 人妻系列 视频| 久久精品国产清高在天天线| kizo精华| 亚洲精品国产av成人精品| 久久99蜜桃精品久久| 十八禁国产超污无遮挡网站| 亚洲乱码一区二区免费版| av黄色大香蕉| 美女xxoo啪啪120秒动态图| 免费无遮挡裸体视频| 性插视频无遮挡在线免费观看| 成人亚洲欧美一区二区av| 99在线视频只有这里精品首页| 日本五十路高清| 精品久久久久久成人av| 爱豆传媒免费全集在线观看| 赤兔流量卡办理| 日本爱情动作片www.在线观看| 成人亚洲欧美一区二区av| 人妻少妇偷人精品九色| 亚洲成人精品中文字幕电影| 校园春色视频在线观看| 97超视频在线观看视频| 午夜视频国产福利| 观看美女的网站| 国产白丝娇喘喷水9色精品| 久久久久九九精品影院| 我的老师免费观看完整版| 欧美xxxx性猛交bbbb| 国产精品福利在线免费观看| 欧美另类亚洲清纯唯美| 国产精品久久久久久精品电影| 国内精品久久久久精免费| 欧美一区二区国产精品久久精品| 国产成人一区二区在线| 99久久无色码亚洲精品果冻| 亚洲中文字幕日韩| 国产真实乱freesex| 神马国产精品三级电影在线观看| 久久草成人影院| 久久精品国产亚洲av香蕉五月| 99久久人妻综合| 精品午夜福利在线看| 国产激情偷乱视频一区二区| 免费看美女性在线毛片视频| 亚洲色图av天堂| 一边摸一边抽搐一进一小说| 亚洲自拍偷在线| 99热精品在线国产| 亚洲五月天丁香| 99国产极品粉嫩在线观看| 国产精品麻豆人妻色哟哟久久 | 国产精品日韩av在线免费观看| 在线a可以看的网站| 国产精品一二三区在线看| 亚洲国产欧美在线一区| 99久久九九国产精品国产免费| 久久人人爽人人片av| av又黄又爽大尺度在线免费看 | 成人毛片a级毛片在线播放| 国产91av在线免费观看| 中国国产av一级| 麻豆久久精品国产亚洲av| 日本三级黄在线观看| 最近视频中文字幕2019在线8| 日本黄大片高清| 99久久人妻综合| 欧美日韩乱码在线| 一进一出抽搐gif免费好疼| av黄色大香蕉| 狠狠狠狠99中文字幕| 此物有八面人人有两片| 最近最新中文字幕大全电影3| 成人午夜高清在线视频| 亚洲精品久久久久久婷婷小说 | 久久精品国产亚洲av涩爱 | 最新中文字幕久久久久| 尾随美女入室| 国产人妻一区二区三区在|