• <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á)性分析*
    亚洲最大成人中文| 国产欧美日韩精品一区二区| 亚洲精品中文字幕在线视频 | 久久久精品欧美日韩精品| 中国国产av一级| 精品午夜福利在线看| 国产精品爽爽va在线观看网站| 欧美zozozo另类| 亚洲精品日本国产第一区| 在线免费观看不下载黄p国产| 精品久久久噜噜| 少妇熟女aⅴ在线视频| 亚洲真实伦在线观看| 色综合站精品国产| 成人漫画全彩无遮挡| 超碰av人人做人人爽久久| 男女国产视频网站| 最近视频中文字幕2019在线8| 国产精品一区二区三区四区久久| 色综合亚洲欧美另类图片| 我的女老师完整版在线观看| 免费播放大片免费观看视频在线观看| 日韩精品有码人妻一区| 亚洲一级一片aⅴ在线观看| 国产精品日韩av在线免费观看| 欧美性猛交╳xxx乱大交人| 综合色丁香网| 亚洲最大成人av| 嫩草影院新地址| 色综合站精品国产| 噜噜噜噜噜久久久久久91| 少妇裸体淫交视频免费看高清| 日韩欧美精品免费久久| 成人性生交大片免费视频hd| 成人鲁丝片一二三区免费| av黄色大香蕉| 赤兔流量卡办理| 欧美激情久久久久久爽电影| 高清午夜精品一区二区三区| 亚洲精品日韩在线中文字幕| 成人国产麻豆网| 亚洲国产欧美人成| 国产av国产精品国产| 亚洲欧美中文字幕日韩二区| 精品久久久久久成人av| 中文字幕av在线有码专区| 国产探花极品一区二区| 99久久九九国产精品国产免费| 你懂的网址亚洲精品在线观看| 人人妻人人澡人人爽人人夜夜 | av专区在线播放| 黄色欧美视频在线观看| 国产免费又黄又爽又色| 亚洲国产日韩欧美精品在线观看| 欧美一级a爱片免费观看看| 小蜜桃在线观看免费完整版高清| 日韩在线高清观看一区二区三区| 午夜福利在线在线| 国产精品1区2区在线观看.| 黄色日韩在线| 亚洲成色77777| 国产熟女欧美一区二区| 亚洲熟妇中文字幕五十中出| 一级毛片 在线播放| 女人久久www免费人成看片| 三级经典国产精品| 欧美潮喷喷水| 久久久久久久久久久免费av| 亚洲成人av在线免费| 男人舔奶头视频| 91av网一区二区| 国产一区亚洲一区在线观看| 淫秽高清视频在线观看| 日韩精品有码人妻一区| 日韩欧美精品v在线| 成人国产麻豆网| 欧美性感艳星| 国产久久久一区二区三区| 免费观看精品视频网站| 免费高清在线观看视频在线观看| 我的女老师完整版在线观看| 成人无遮挡网站| 精品人妻一区二区三区麻豆| 欧美最新免费一区二区三区| 一级片'在线观看视频| 丰满少妇做爰视频| 真实男女啪啪啪动态图| 免费av不卡在线播放| 菩萨蛮人人尽说江南好唐韦庄| 校园人妻丝袜中文字幕| 高清毛片免费看| 亚洲在久久综合| 五月伊人婷婷丁香| 一夜夜www| 成年av动漫网址| 人人妻人人看人人澡| 蜜臀久久99精品久久宅男| 国产精品一区二区三区四区久久| 久久精品久久久久久久性| 日韩电影二区| 久久久久久九九精品二区国产| 色综合站精品国产| 青春草国产在线视频| 国产探花极品一区二区| 久久精品久久久久久噜噜老黄| 精品久久久久久久末码| 亚洲人成网站在线播| 国产高清不卡午夜福利| 亚洲精品乱久久久久久| 亚洲精品成人av观看孕妇| 男女那种视频在线观看| 2022亚洲国产成人精品| 欧美成人a在线观看| 成人二区视频| h日本视频在线播放| av国产免费在线观看| 丝袜美腿在线中文| 久久精品国产鲁丝片午夜精品| 亚洲国产高清在线一区二区三| 久久久久久久久大av| 亚洲四区av| 欧美3d第一页| 免费看不卡的av| 身体一侧抽搐| 亚洲国产av新网站| 亚洲精品影视一区二区三区av| 又黄又爽又刺激的免费视频.| 人人妻人人澡人人爽人人夜夜 | 卡戴珊不雅视频在线播放| 亚洲图色成人| 老司机影院毛片| 亚洲自偷自拍三级| 水蜜桃什么品种好| 特级一级黄色大片| 免费看a级黄色片| 日韩强制内射视频| 精品久久久久久久久久久久久| 白带黄色成豆腐渣| 一级毛片电影观看| 国产中年淑女户外野战色| 国产成人精品一,二区| 国产午夜福利久久久久久| 国产成人免费观看mmmm| 非洲黑人性xxxx精品又粗又长| 可以在线观看毛片的网站| av在线观看视频网站免费| 日韩av免费高清视频| 人妻系列 视频| 久久精品熟女亚洲av麻豆精品 | 欧美日韩国产mv在线观看视频 | videossex国产| 国产成人a区在线观看| 国产午夜精品论理片| 免费播放大片免费观看视频在线观看| 天天躁日日操中文字幕| 可以在线观看毛片的网站| 国产一区二区三区av在线| 在线观看美女被高潮喷水网站| 99热全是精品| 高清视频免费观看一区二区 | 久久精品夜色国产| 国产午夜精品一二区理论片| eeuss影院久久| 69av精品久久久久久| 中文字幕免费在线视频6| 亚洲人成网站在线观看播放| 亚洲精品日韩在线中文字幕| av在线播放精品| 乱码一卡2卡4卡精品| 国产精品久久久久久久电影| 日韩av免费高清视频| 日韩 亚洲 欧美在线| www.av在线官网国产| 精品人妻偷拍中文字幕| 亚洲婷婷狠狠爱综合网| 中国美白少妇内射xxxbb| 九九久久精品国产亚洲av麻豆| 国产淫片久久久久久久久| av在线亚洲专区| 国产黄色免费在线视频| 有码 亚洲区| av在线播放精品| 日本爱情动作片www.在线观看| 男插女下体视频免费在线播放| 男插女下体视频免费在线播放| 午夜免费激情av| 亚洲最大成人手机在线| 乱人视频在线观看| 婷婷六月久久综合丁香| 美女国产视频在线观看| 一级片'在线观看视频| 成人午夜高清在线视频| 亚洲精品国产av成人精品| 少妇熟女欧美另类| 亚洲精品国产av蜜桃| 一级毛片aaaaaa免费看小| 亚洲电影在线观看av| 尾随美女入室| 亚洲精品一二三| 伊人久久精品亚洲午夜| 伦理电影大哥的女人| 国产免费一级a男人的天堂| 成人毛片a级毛片在线播放| 波野结衣二区三区在线| 亚洲最大成人中文| 免费无遮挡裸体视频| 美女脱内裤让男人舔精品视频| 只有这里有精品99| 2021天堂中文幕一二区在线观| 日产精品乱码卡一卡2卡三| 看非洲黑人一级黄片| 久久99蜜桃精品久久| 国产伦精品一区二区三区视频9| 99久久精品热视频| 夫妻午夜视频| 成年人午夜在线观看视频 | 久久久久久久久中文| av福利片在线观看| 亚洲av.av天堂| 丰满少妇做爰视频| 午夜精品国产一区二区电影 | 亚洲av成人精品一二三区| 亚洲成人精品中文字幕电影| 日韩欧美三级三区| 中国国产av一级| 免费看av在线观看网站| 成人午夜精彩视频在线观看| 1000部很黄的大片| 七月丁香在线播放| 女人十人毛片免费观看3o分钟| 国产中年淑女户外野战色| 天堂影院成人在线观看| 九九在线视频观看精品| 国产极品天堂在线| www.色视频.com| 成人漫画全彩无遮挡| 超碰97精品在线观看| 天堂av国产一区二区熟女人妻| 成年女人看的毛片在线观看| 国产午夜精品久久久久久一区二区三区| 超碰av人人做人人爽久久| 午夜爱爱视频在线播放| 蜜桃久久精品国产亚洲av| 久久精品国产亚洲av涩爱| 男人舔奶头视频| 久久久国产一区二区| 高清欧美精品videossex| 久久精品国产亚洲网站| 联通29元200g的流量卡| 免费看a级黄色片| 亚洲高清免费不卡视频| 日本熟妇午夜| a级毛片免费高清观看在线播放| 久久精品国产鲁丝片午夜精品| 日本与韩国留学比较| 亚洲四区av| 国产亚洲精品av在线| 少妇丰满av| 午夜激情欧美在线| 欧美激情国产日韩精品一区| 身体一侧抽搐| 亚洲av中文av极速乱| 精品国内亚洲2022精品成人| 成年av动漫网址| 国产高清三级在线| 国内精品一区二区在线观看| 亚洲av国产av综合av卡| 国产精品人妻久久久影院| 久久久久九九精品影院| 中文字幕亚洲精品专区| 欧美极品一区二区三区四区| 日韩电影二区| 人人妻人人澡人人爽人人夜夜 | 日产精品乱码卡一卡2卡三| 七月丁香在线播放| 国产高清有码在线观看视频| 一级黄片播放器| 亚洲av中文字字幕乱码综合| 久久精品久久久久久噜噜老黄| 高清欧美精品videossex| 午夜免费男女啪啪视频观看| 97超视频在线观看视频| 久久草成人影院| 亚洲av中文av极速乱| 91精品伊人久久大香线蕉| 日本一本二区三区精品| 日韩av不卡免费在线播放| 欧美另类一区| 狠狠精品人妻久久久久久综合| 三级男女做爰猛烈吃奶摸视频| 欧美一区二区亚洲| 亚洲在线观看片| 国产精品久久久久久精品电影| 在线免费观看不下载黄p国产| 永久网站在线| 欧美zozozo另类| 中国美白少妇内射xxxbb| 久久这里只有精品中国| 亚洲欧美中文字幕日韩二区| 日本熟妇午夜| 高清av免费在线| 丝袜喷水一区| 国产乱人视频| 久久午夜福利片| 成人综合一区亚洲| 久久国产乱子免费精品| 少妇人妻精品综合一区二区| 国产高清不卡午夜福利| 一级片'在线观看视频| 美女高潮的动态| 精品国产露脸久久av麻豆 | 国产色爽女视频免费观看| 日韩人妻高清精品专区| 好男人视频免费观看在线| 国产色爽女视频免费观看| 国产av在哪里看| 国产黄色视频一区二区在线观看| 色网站视频免费| 国产精品日韩av在线免费观看| 99热这里只有精品一区| 大话2 男鬼变身卡| 国产老妇伦熟女老妇高清| 看免费成人av毛片| 色哟哟·www| 午夜精品国产一区二区电影 | 美女xxoo啪啪120秒动态图| 精品亚洲乱码少妇综合久久| 免费看a级黄色片| 97热精品久久久久久| 少妇的逼水好多| 日韩不卡一区二区三区视频在线| 色视频www国产| 免费大片黄手机在线观看| 综合色av麻豆| 国产色爽女视频免费观看| 国产一区二区三区av在线| 精品欧美国产一区二区三| 国产成人freesex在线| 国产精品av视频在线免费观看| 又爽又黄无遮挡网站| 精品熟女少妇av免费看| 亚洲aⅴ乱码一区二区在线播放| 天堂网av新在线| 国产精品一区二区性色av| 亚洲综合精品二区| 久久久欧美国产精品| 欧美日韩精品成人综合77777| 男插女下体视频免费在线播放| 成人欧美大片| 我的女老师完整版在线观看| 男人狂女人下面高潮的视频| 一区二区三区高清视频在线| 一级毛片我不卡| 欧美人与善性xxx| 国产黄a三级三级三级人| 夜夜爽夜夜爽视频| 成人国产麻豆网| 久久精品国产亚洲网站| 两个人的视频大全免费| 亚洲高清免费不卡视频| 一个人看的www免费观看视频| 91久久精品国产一区二区三区| 精品亚洲乱码少妇综合久久| 欧美bdsm另类| 丰满少妇做爰视频| 久久久久久久久久成人| 久久久久久久午夜电影| 亚洲综合精品二区| 国产午夜精品一二区理论片| 亚洲精品国产成人久久av| 国产精品麻豆人妻色哟哟久久 | 免费观看的影片在线观看| 人体艺术视频欧美日本| 毛片一级片免费看久久久久| 成人午夜精彩视频在线观看| 久久精品久久久久久噜噜老黄| av在线播放精品| 2018国产大陆天天弄谢| 一区二区三区免费毛片| 又黄又爽又刺激的免费视频.| 永久免费av网站大全| 色综合站精品国产| 非洲黑人性xxxx精品又粗又长| 全区人妻精品视频| 亚洲最大成人av| 蜜桃亚洲精品一区二区三区| 成人毛片60女人毛片免费| 乱人视频在线观看| 内地一区二区视频在线| 欧美日韩一区二区视频在线观看视频在线 | 美女脱内裤让男人舔精品视频| 亚洲精品色激情综合| 久久久久精品性色| 看黄色毛片网站| 五月伊人婷婷丁香| 97热精品久久久久久| 中文在线观看免费www的网站| 日韩欧美精品v在线| 最近中文字幕高清免费大全6| 乱码一卡2卡4卡精品| freevideosex欧美| 亚洲国产最新在线播放| 国产免费又黄又爽又色| 亚洲激情五月婷婷啪啪| av又黄又爽大尺度在线免费看| 亚洲真实伦在线观看| 国产精品av视频在线免费观看| 91精品伊人久久大香线蕉| 亚洲av在线观看美女高潮| 亚洲国产高清在线一区二区三| 国产亚洲午夜精品一区二区久久 | 91午夜精品亚洲一区二区三区| 精品久久久久久久末码| 大又大粗又爽又黄少妇毛片口| 午夜日本视频在线| 日本爱情动作片www.在线观看| 精品久久久久久成人av| av在线观看视频网站免费| 大片免费播放器 马上看| 少妇的逼水好多| 国产一区亚洲一区在线观看| 51国产日韩欧美| 熟女电影av网| 综合色av麻豆| 欧美高清性xxxxhd video| 日韩精品青青久久久久久| 免费观看的影片在线观看| 老司机影院毛片| 国内精品宾馆在线| 国产免费福利视频在线观看| 欧美xxxx性猛交bbbb| 欧美精品一区二区大全| 午夜激情欧美在线| 男人舔奶头视频| 一级av片app| 免费看a级黄色片| 中文字幕制服av| 亚洲自拍偷在线| 狠狠精品人妻久久久久久综合| 国产人妻一区二区三区在| 91狼人影院| 免费电影在线观看免费观看| a级毛色黄片| 欧美bdsm另类| 成年av动漫网址| 欧美日韩在线观看h| 国产精品蜜桃在线观看| 哪个播放器可以免费观看大片| 亚洲不卡免费看| 日韩欧美精品v在线| 丝瓜视频免费看黄片| 欧美bdsm另类| 国产精品麻豆人妻色哟哟久久 | 亚洲人成网站高清观看| 日韩不卡一区二区三区视频在线| 欧美一级a爱片免费观看看| 国产三级在线视频| 又爽又黄无遮挡网站| 国产男女超爽视频在线观看| 国产精品一区www在线观看| 性插视频无遮挡在线免费观看| 尾随美女入室| 免费大片18禁| 亚洲无线观看免费| 午夜亚洲福利在线播放| 成人美女网站在线观看视频| 五月玫瑰六月丁香| 国产午夜精品论理片| 久久综合国产亚洲精品| 最近中文字幕2019免费版| 天天躁日日操中文字幕| 中文天堂在线官网| 少妇熟女欧美另类| 婷婷六月久久综合丁香| 日韩欧美国产在线观看| 丰满乱子伦码专区| 日韩在线高清观看一区二区三区| 丝袜美腿在线中文| 伦理电影大哥的女人| 亚洲av免费高清在线观看| 亚洲欧美一区二区三区黑人 | 日本wwww免费看| 欧美日韩亚洲高清精品| 看非洲黑人一级黄片| 亚洲精品国产av蜜桃| 五月玫瑰六月丁香| 夜夜爽夜夜爽视频| 校园人妻丝袜中文字幕| 伦精品一区二区三区| 91在线精品国自产拍蜜月| 精品国产一区二区三区久久久樱花 | 好男人在线观看高清免费视频| 精品国产露脸久久av麻豆 | 九草在线视频观看| 国产黄色小视频在线观看| 久久久久久久久久成人| 成人特级av手机在线观看| 女人久久www免费人成看片| 性插视频无遮挡在线免费观看| 国产高潮美女av| 亚洲国产精品成人久久小说| 国产 一区精品| 亚洲精品456在线播放app| 久久久久久久久久黄片| 可以在线观看毛片的网站| 69人妻影院| 人妻制服诱惑在线中文字幕| 禁无遮挡网站| 久久久久久九九精品二区国产| 国产精品蜜桃在线观看| 亚洲国产av新网站| 秋霞伦理黄片| 国产亚洲最大av| 亚洲av二区三区四区| 能在线免费看毛片的网站| 亚洲激情五月婷婷啪啪| 日本黄色片子视频| 亚洲伊人久久精品综合| 久久久a久久爽久久v久久| 激情 狠狠 欧美| 亚洲,欧美,日韩| 一个人免费在线观看电影| 日韩,欧美,国产一区二区三区| 2021少妇久久久久久久久久久| 国产免费一级a男人的天堂| 国产精品伦人一区二区| 免费播放大片免费观看视频在线观看| 国产精品蜜桃在线观看| 少妇的逼好多水| 国产伦精品一区二区三区四那| 少妇猛男粗大的猛烈进出视频 | 大陆偷拍与自拍| 能在线免费观看的黄片| 神马国产精品三级电影在线观看| 日日啪夜夜爽| 又粗又硬又长又爽又黄的视频| 少妇熟女aⅴ在线视频| 亚洲高清免费不卡视频| 2022亚洲国产成人精品| 干丝袜人妻中文字幕| 国产成年人精品一区二区| 天堂av国产一区二区熟女人妻| 国产成人a∨麻豆精品| 全区人妻精品视频| 国产单亲对白刺激| 日韩伦理黄色片| 国产色爽女视频免费观看| 一边亲一边摸免费视频| 国产日韩欧美在线精品| 精品一区在线观看国产| 中文字幕久久专区| 亚洲av免费在线观看| videos熟女内射| 免费av毛片视频| 国产精品久久久久久久久免| 日韩中字成人| 国产v大片淫在线免费观看| 国产成人精品婷婷| 亚洲人成网站在线观看播放| 久久午夜福利片| 边亲边吃奶的免费视频| 欧美 日韩 精品 国产| 国产成人91sexporn| 国产亚洲精品av在线| 舔av片在线| 亚洲电影在线观看av| 51国产日韩欧美| 国产成人免费观看mmmm| 秋霞伦理黄片| 最后的刺客免费高清国语| 亚洲欧美精品自产自拍| 亚洲av电影不卡..在线观看| 精品一区二区免费观看| 国产伦在线观看视频一区| 久久97久久精品| 中文字幕av成人在线电影| 国产成人aa在线观看| 五月伊人婷婷丁香| 天堂av国产一区二区熟女人妻| 美女xxoo啪啪120秒动态图| 国内精品美女久久久久久| 一级黄片播放器| 97超视频在线观看视频| 中文字幕久久专区| 亚洲精品影视一区二区三区av| 最近中文字幕2019免费版| 亚洲欧美一区二区三区国产| 黄片无遮挡物在线观看| 蜜桃久久精品国产亚洲av| 我的女老师完整版在线观看| 精品久久久久久久久久久久久| 国产精品一区二区三区四区久久| 免费av观看视频| 亚洲av免费高清在线观看| 亚洲精品,欧美精品| 大又大粗又爽又黄少妇毛片口| 激情五月婷婷亚洲| 在线天堂最新版资源| 日韩亚洲欧美综合| 国产伦精品一区二区三区视频9| 国产在视频线在精品| 在线观看美女被高潮喷水网站| 色综合色国产| 在现免费观看毛片| 久久这里只有精品中国| 亚洲在线自拍视频| 国产免费视频播放在线视频 | 毛片一级片免费看久久久久| 久久精品人妻少妇| 观看免费一级毛片| 久久久精品欧美日韩精品| 麻豆久久精品国产亚洲av| 久久99热6这里只有精品| 亚洲美女视频黄频| 欧美高清性xxxxhd video|