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

    一種支持Cortex-M3的Simulink自定義目標(biāo)系統(tǒng)設(shè)計(jì)

    2021-08-23 09:02:20常廣暉王宇欣劉樹勇
    關(guān)鍵詞:代碼生成電路板代碼

    常廣暉,陳 誠,吳 越,王宇欣,劉樹勇

    (海軍工程大學(xué) 動(dòng)力工程學(xué)院, 武漢 430033)

    0 引言

    Matlab/Simulink被廣泛應(yīng)用于工程教育,特別是控制類課程??刂评碚摰牡南到y(tǒng)建模、特性分析及控制器設(shè)計(jì)都可以在Matlab/Simulink環(huán)境下實(shí)現(xiàn)[1-3]。而另外一方面,控制理論在實(shí)際物理系統(tǒng)中的生根落地,離不開微控制器(MCU, microcontroller unit)編程以及將其與物理系統(tǒng)的集成過程。實(shí)現(xiàn)控制算法的主要工具是C和C++編譯器,設(shè)計(jì)實(shí)際的控制系統(tǒng),必須具備扎實(shí)的控制理論知識(shí)。而基于Simulink的控制算法的設(shè)計(jì)與最終C或C++控制算法實(shí)現(xiàn)之間的鴻溝,往往使的控制系統(tǒng)的設(shè)計(jì)變得復(fù)雜,尤其是各種智能控制算法逐步走向?qū)嵱玫慕裉?,這個(gè)問題顯得格外突出。

    Simulink環(huán)境下的Embedded Coder工具箱,提供了將Simulink模型或Matlab程序直接轉(zhuǎn)換為C和C++代碼的功能[4-8]。更近一步為實(shí)現(xiàn)與物理系統(tǒng)的交互集成,還需要Simulink模型對(duì)數(shù)字和模擬輸入/輸出等外設(shè)以及其他MCU特性的直接支持[9]。為了實(shí)現(xiàn)這個(gè)目的,可以通過開發(fā)第三方的Simulink目標(biāo)工具箱來實(shí)現(xiàn)。目前主要有dSpace,xPC Target前者價(jià)格昂貴,后者僅僅是實(shí)時(shí)系統(tǒng)的PC機(jī)解決途徑,而且兩者往往只能進(jìn)行硬件在環(huán)的半物理仿真驗(yàn)證,很難作為最終的控制器應(yīng)用到實(shí)際嵌入式控制系統(tǒng)。

    Cortex-M3是ARM公司的新一代32位低成本、高性能通用微控制器內(nèi)核,它引入了大量最新設(shè)計(jì),出色地平衡了強(qiáng)計(jì)算能力、低功耗和低成本之間的矛盾,廣泛應(yīng)用于工業(yè)控制領(lǐng)域。很多芯片制造商正在生產(chǎn)Cortex-M3內(nèi)核的MCU,其中意法半導(dǎo)體生產(chǎn)的STM32F1系列MCU就是其中杰出的代表。目前支持Cortex-M3 MCU的Matlab/Simulink第三方目標(biāo)主要有用于ST Discovery開發(fā)板的Embedded Coder支持包、用于ST Nucleo開發(fā)板的Simlink Coder支持包、STM23-MAT/TARGET,前兩種目標(biāo)僅支持GNU GCC編譯器,后者還需要STM32CubeMX軟件包的支持,開發(fā)相對(duì)復(fù)雜,主要的共同缺點(diǎn)是:它們都是封閉的,無法實(shí)現(xiàn)功能的自行擴(kuò)展。為此,本文設(shè)計(jì)開發(fā)了一種開放式的STM32F1XTarget目標(biāo)系統(tǒng),并給出軟、硬件設(shè)計(jì)方案。硬件電路上支持工業(yè)嵌入式控制常見的輸入輸出通道及網(wǎng)絡(luò)通信功能[10],目標(biāo)軟件通過自定義Simulink模塊封裝的形式給出各功能硬件驅(qū)動(dòng)程序。通過目標(biāo)系統(tǒng)文件控制代碼的生成過程將自動(dòng)生成的代碼文件通過XML文件讀寫的方式集成到標(biāo)準(zhǔn)Keil MDK V5工程模版上去。通過該實(shí)時(shí)目標(biāo)進(jìn)行嵌入式控制系統(tǒng)開發(fā),首先建立整個(gè)控制系統(tǒng)的Simulink模型并進(jìn)行仿真分析,仿真通過后對(duì)控制器的輸入、輸出通道驅(qū)動(dòng)進(jìn)行配置來替換建模仿真當(dāng)中被控對(duì)象模型,然后利用Embedded Coder代碼生成機(jī)制,實(shí)現(xiàn)控制器和硬件驅(qū)動(dòng)代碼的自動(dòng)生成。代碼生成完畢后自動(dòng)后臺(tái)調(diào)用Keil uVision5編譯器對(duì)代碼進(jìn)行編譯鏈接等操作,全程不需要人為干預(yù),實(shí)現(xiàn)控制程序的一鍵式下載。

    1 自定義目標(biāo)嵌入式控制電路板設(shè)計(jì)

    在一般工業(yè)嵌入式控制系統(tǒng)開發(fā)中,常用的物理反饋通道包括數(shù)字輸入、模擬輸入、頻率輸入,控制輸出通道包括數(shù)字輸出、模擬輸出、PWM輸出等,通信總線則包括以太網(wǎng)、CAN總線、USART等。為了提高STM32F1XTarget目標(biāo)系統(tǒng)的適用性,其配套的嵌入式控制電路板包含以上全部物理通道。電路板采用核心板+底板結(jié)構(gòu)的模塊化設(shè)計(jì)方案。核心板采用ST公司的Cortex-M3內(nèi)核STM32F103ZET6作為MCU,在此基礎(chǔ)上集成DM9000BI以太網(wǎng)通信電路和FLASH存儲(chǔ)電路等,底板主要是各類物理通道電路,電路板總體組成如圖1所示。

    圖1 STM32F1XTarget目標(biāo)工具箱的驅(qū)動(dòng)模塊

    2 自定義目標(biāo)軟件系統(tǒng)設(shè)計(jì)

    STM32F1XTarge是完全開放并可以擴(kuò)展的,所有的代碼和配置文件,如Matlab代碼、模板、配置等可以作為源代碼使用,并可以在此基礎(chǔ)上擴(kuò)充。STM32F1XTarget基于uCOS-II實(shí)時(shí)操作系統(tǒng),它使用Keil MDK V5來編譯生成的源代碼。目標(biāo)編譯此后生成完整的支持Keil MDK IDE的項(xiàng)目文件,有了這些項(xiàng)目文件,在不運(yùn)行Simulink模型或開發(fā)自己的模塊時(shí),也可以手動(dòng)編譯和/或調(diào)試生成的代碼。Simulink塊庫包含兩組功能塊:一類是MCU自帶硬件資源驅(qū)動(dòng)塊;另一類是功能擴(kuò)展模塊。第一類模塊包括:DIO,ADC,DAC, PWM驅(qū)動(dòng),編碼器輸入,TCP/UDP、RS485、CAN網(wǎng)絡(luò)通信等。第二類模塊包括倒立擺模型、LQR控制器等主要是控制對(duì)象和控制算法模塊,可以自行擴(kuò)展。STM32F1XTarget同時(shí)支持具有Simulink模型代碼生成功能的Simulink Coder和Embedded Coder。要生成、編譯、鏈接和下載一個(gè)Simulink模型的C代碼,只需要一個(gè)步驟點(diǎn)擊Simulink工具欄上的Build一鍵即可部署到配套的電路板上。

    圖2 STM32F1X目標(biāo)自帶硬件資源模塊

    圖3 STM32F1X目標(biāo)功能擴(kuò)展模塊

    2.1 STM32F1X目標(biāo)代碼生成原理

    將Simulink模型自動(dòng)轉(zhuǎn)換為可執(zhí)行二進(jìn)制文件的原理工作流程如圖4所示。

    圖4 Simulink模型轉(zhuǎn)換為可執(zhí)行代碼的工作流程

    Simulink Coder或Embedded Coder首先從Simulink模型生成rtw文件[11]。rtw文件是一種模型的特定文本表示文件格式。在自定義目標(biāo)tlc文件(目標(biāo)語言編譯器文件)的配置下,目標(biāo)語言編譯器(TLC)會(huì)生成幾個(gè)c/h文件和一個(gè)Make文件,與此同時(shí)這個(gè)過程會(huì)受到hook文件調(diào)用的控制。

    STM32F10X目標(biāo)代碼自動(dòng)生成過程由以下幾個(gè)tlc文件控制:stm32f1x.tlc用于Embedded Coder或stm32f1x_grt.tlc用于Simulink Coder的起點(diǎn)。從rtw到c文件的轉(zhuǎn)換過程中,TLC提供了幾個(gè)鉤子來定制代碼生成過程。STM32F1XTarget主要使用兩個(gè)鉤子:after_make用于代碼處理進(jìn)程和更新編譯信息文件,exit用于創(chuàng)建系統(tǒng)工程文件并將生成的代碼添加到工程中。

    整個(gè)過程可歸納為以下幾個(gè)步驟:

    1)TLC使用當(dāng)前Matlab工作路徑將所有生成的文件存儲(chǔ)在一個(gè)文件夾中,該文件夾的名稱使用Simulink模型名和’_stm32f1x_rtw’后綴,例如Invertedpendulum_stm32f1x_rtw。在此過程中,Simulink 提供的tlc文件用于每個(gè)標(biāo)準(zhǔn)的Simulink模塊。對(duì)于每個(gè)非simulink模塊,STM32F1XTarget提供自定義的的tlc文件。除了由tlc文件生成的c/h文件之外,還基于makefiles模板stm32f1x.tmf創(chuàng)建了一個(gè)makefile。這個(gè)makefile需要一個(gè)額外的make include文件,該文件在第2步中描述的鉤子函數(shù)中生成。

    2)在步驟1)之后,在鉤子調(diào)用after_make期間,創(chuàng)建一個(gè)特定目標(biāo)文件夾。將所有生成的文件復(fù)制到該文件夾中,并生成一個(gè)特定于stm32f1x的make include文件。這包括文件非常類似于一個(gè)標(biāo)準(zhǔn)的gcc使用的makefile。

    3)在執(zhí)行exit鉤子時(shí),會(huì)通過項(xiàng)目工程模板生成模型對(duì)應(yīng)的工程文件,并通過命令行自動(dòng)調(diào)用Keil MDK V5軟件,自動(dòng)對(duì)項(xiàng)目進(jìn)行編譯生成一個(gè)hex可執(zhí)行文件。

    4)hex可執(zhí)行文件通過ST-link下載器下載到目標(biāo)嵌入式電路板的MCU中。

    2.2 STM32F1X目標(biāo)控制文件設(shè)計(jì)

    TLC通過執(zhí)行目標(biāo)系統(tǒng)中的控制文件來控制代碼生成過程。設(shè)計(jì)目標(biāo)控制文件目的是為了設(shè)置代碼生成過程中的目標(biāo)參數(shù)、定制用戶代碼、調(diào)用Keil uVision5等 ,STM32F1X目標(biāo)控制文件主要包括:stm32f1x.tlc、stm32f1x_file_process.tlc、stm32f1x_callback_handler.m、stm32f1x_make_rtw_hook.m。系統(tǒng)TLC文件stm32f1x.tlc是通過修改Simulink標(biāo)準(zhǔn)的嵌入式實(shí)時(shí)系統(tǒng)目標(biāo)文件(ert.tlc)來實(shí)現(xiàn),用來實(shí)現(xiàn)指定TLC配置變量、設(shè)定自定義目標(biāo)選項(xiàng)和指定tlc文件入口等功能;自定義文件處理模板stm32f1x_file_process.tlc用于組織代碼生成的格式,生成的全部代碼文件的格式都應(yīng)與模板文件一致;回調(diào)函數(shù)stm32f1x_callback_handler是對(duì)一些目標(biāo)系統(tǒng)常用默認(rèn)設(shè)置項(xiàng)進(jìn)行設(shè)置,比如:針對(duì)嵌入式開發(fā)需要將步長(zhǎng)設(shè)置為硬件支持的固定步長(zhǎng)并禁止修改,設(shè)置求解器、采樣時(shí)間等。鉤子文件stm32f1x_make_rtw_hook.m用于對(duì)代碼生成的各個(gè)階段對(duì)自定義操作的處理,為了實(shí)現(xiàn)代碼生成、編譯、下載過程的一鍵式操作,主要是在exit階段通過編寫m腳本文件,自動(dòng)調(diào)用并指導(dǎo)Keil uVision5來實(shí)現(xiàn)。

    2.3 STM32F1X目標(biāo)系統(tǒng)代碼組件設(shè)計(jì)

    代碼組件指封裝各類設(shè)備驅(qū)動(dòng)或各類控制算法的自定義Simulink模塊,要實(shí)現(xiàn)自定義的Simulink模塊,需要以下元素:一塊封裝、一個(gè)S函數(shù)文件、一個(gè)tlc和C代碼混合而成的tlc文件[12-13]。塊封裝定義了在Simulink模型編輯器中顯示的模塊的外觀,定義了在塊掩碼對(duì)話框中可用的輸入?yún)?shù)。它還定義模塊的標(biāo)題、模塊幫助文本和幫助菜單條目。模塊參數(shù)連接模塊塊與S函數(shù),即一個(gè)由C語言實(shí)現(xiàn)的二進(jìn)制的mexw64文件。和與S文件同名的tlc文件。在STM32F1XTarget中,S函數(shù)主要描述模塊的行為:輸入和輸出端口的數(shù)量和類型,檢查參數(shù)并準(zhǔn)備將這些參數(shù)傳遞給TLC編譯器。

    tlc文件是tlc代碼、類似腳本的語言和代碼片段形式的C代碼的混合物[14-15]。腳本代碼控制和組織C代碼片段在生成的C文件中怎樣和在哪里放置.tlc文件主要包含三個(gè)功能:Setup、Start和Output。Setup函數(shù)控制包含額外的頭文件和源文件,Start函數(shù)執(zhí)行一次以生成初始化代碼,Output在每個(gè)simulation循環(huán)中調(diào)用一次。即使名字是輸出,函數(shù)也必須處理通過Simullink傳送到輸入端口的輸入值。例如Digital Output模塊以上3種函數(shù)代碼如下:

    %function Setup(block, system) void

    %assign hFile = LibCreateSourceFile("Header", "Custom", "%")

    %assign HW_Lib_cFile = LibCreateSourceFile("Source", "Custom", "%")

    %if (EXISTS(::__STM32F10X_GPIO__) == 0)

    %assign :: __STM32F10X_GPIO__ = 1

    %openfile tmpBuf

    include "stm32f10x_gpio.h"

    %closefile tmpBuf

    %

    %

    %endif

    %endfunction

    %function Start(block, system) Output

    %assign nPars = SIZE(SFcnParamSettings.Bits,1)

    %assign isByte = SFcnParamSettings.IsByte

    %assign nextChannel = 0

    %assign port = getPort(SFcnParamSettings.DIOPort)

    %if ISEQUAL(port,"PORTA")

    %assign port = "PORTA"

    %assign ddr = "DDRA"

    %else

    %assign port="PORTB"

    %assign ddr = "DDRB"

    %endif

    %if isByte

    % = 0x00;

    %else

    %foreach idx=nPars

    %assign bitIdx = CAST("Number",SFcnParamSettings.Bits[idx])

    %assign rhs = setBitVal(ddr, idx, 0)

    % = %;

    %assign nextChannel = nextChannel+1

    %endforeach

    %endif

    %endfunction

    %function Outputs(block, system) Output

    %assign Channel = 0

    %foreach idx = nbr_pins

    %assign pin = CAST("Number",%)

    %assign y = LibBlockOutputSignal(%, "", "", 0)

    %assign y_type = LibBlockOutputSignalDataTypeName(Channel, "tRealPart")

    % = *%_%;

    %assign Channel = Channel + 1

    %endforeach

    %endfunction

    3 基于自定義目標(biāo)的嵌入式控制器開發(fā)實(shí)例

    倒立擺是一個(gè)典型的不穩(wěn)定非線性系統(tǒng),是控制領(lǐng)域檢驗(yàn)各種控制策略有效性的典型控制對(duì)象。為了驗(yàn)證STM32F1XTarget目標(biāo)系統(tǒng)的有效性,利用該目標(biāo)設(shè)計(jì)一級(jí)直線倒立擺的嵌入式控制器。首先通過Matlab2018b中的SimscapeMultibody工具箱建立了與實(shí)驗(yàn)室倒立擺物理特性一致的多體動(dòng)力學(xué)仿真模型,為了推導(dǎo)其LQR控制器,在平衡點(diǎn)將模型線性化為:

    (1)

    其中:x為小車的位移,θ為擺桿旋轉(zhuǎn)角度,u為小車的作用力。

    根據(jù)Riccati代數(shù)方程,得到倒立擺LQR控制器K=[10.0 6.171 22.128 2.625],為了克服實(shí)際位移、角度測(cè)量中的噪聲干擾在LQR控制器前端增加卡爾曼濾波狀態(tài)觀測(cè)器[16-20],將上述倒立擺模型及控制器模型在Simulink環(huán)境下集成,得到的系統(tǒng)仿真模型如圖5所示。

    圖5 倒立擺控制仿真模型

    經(jīng)過仿真驗(yàn)證所設(shè)計(jì)的控制器可以有效的進(jìn)行穩(wěn)擺控制,接下來通過STM32F1XTarget目標(biāo)工具箱的驅(qū)動(dòng)模塊快速替換建模仿真當(dāng)中的倒立擺模型,所用模塊如表1所示。

    表1 倒立擺控制嵌入式目標(biāo)所用模塊列表

    對(duì)硬件驅(qū)動(dòng)進(jìn)行配置后的控制器模型如圖6所示。

    圖6 帶硬件驅(qū)動(dòng)配置的控制器模型

    接下來在Simulink配置對(duì)話框中,選用STM32F1XTarget.tlc系統(tǒng)目標(biāo)文件,硬件類型選擇ARM Cortex類型,仿真設(shè)置為定步長(zhǎng),步長(zhǎng)為0.005(即5 ms),設(shè)置好之后就可以將使用build命令利用Embedded Coder一鍵生成嵌入式控制工程如圖7所示,工程自動(dòng)編譯下載到配套的嵌入式控制板中。整個(gè)過程不需要用戶編寫任何C語言代碼。

    圖7 生成代碼圖

    4 實(shí)驗(yàn)結(jié)果與分析

    在基于自定義目標(biāo)的實(shí)際倒立擺的控制試驗(yàn)中,上位計(jì)算機(jī)通過Simulink的TCP/IP Receive模塊接受嵌入式控制電路板實(shí)時(shí)上傳的小車位移和擺桿角度兩個(gè)數(shù)據(jù)并顯示,同時(shí)與運(yùn)行的仿真體數(shù)據(jù)比對(duì),實(shí)驗(yàn)結(jié)果如圖8、9所示。

    圖8 小車位移的實(shí)物與仿真對(duì)比

    圖9 倒立擺角度的實(shí)物與仿真對(duì)比

    實(shí)驗(yàn)結(jié)果表明,采用基于模型設(shè)計(jì)的控制算法通過自動(dòng)代碼生成直接移植到嵌入式控制器,幾乎取得了同仿真一致的控制效果,所設(shè)計(jì)的自定義目標(biāo)有效可行,使嵌入式控制系統(tǒng)開發(fā)簡(jiǎn)潔高效。

    5 結(jié)束語

    STM32F1XTarget的開發(fā)是為了改善和簡(jiǎn)化MCU在傳感器/執(zhí)行系統(tǒng)等嵌入式控制系統(tǒng)等模塊中的使用,工具箱所提供的模塊涵蓋了配套嵌入式電路板所支持的各類硬件驅(qū)動(dòng)。利用STM32F1XTarget目標(biāo)軟件嵌入式電路板配套使用,可勝任大部分工業(yè)嵌入式控制應(yīng)用,使開發(fā)者僅僅關(guān)注算法的開發(fā),不用把大量的精力投入到底層硬件設(shè)計(jì)和C語言的驅(qū)動(dòng)設(shè)計(jì)。通過倒立擺實(shí)際穩(wěn)擺控制試驗(yàn),驗(yàn)證了使用MBD方法簡(jiǎn)化了嵌入式控制器的設(shè)計(jì)過程,減少了設(shè)計(jì)失敗的風(fēng)險(xiǎn),相比通過手動(dòng)編寫代碼設(shè)計(jì)控制其而言,縮短了設(shè)計(jì)時(shí)間提高了設(shè)計(jì)效率。該MDB方法流程為其它復(fù)雜機(jī)械系統(tǒng)控制器的設(shè)計(jì)提高了很好的借鑒。

    猜你喜歡
    代碼生成電路板代碼
    為什么有電路板,機(jī)器才能運(yùn)行?
    Lustre語言可信代碼生成器研究進(jìn)展
    創(chuàng)世代碼
    創(chuàng)世代碼
    創(chuàng)世代碼
    創(chuàng)世代碼
    代碼生成技術(shù)在軟件開發(fā)中的應(yīng)用
    電子世界(2016年15期)2016-08-29 02:14:28
    廢棄電路板拆解技術(shù)研究現(xiàn)狀及展望
    基于XML的代碼自動(dòng)生成工具
    電子科技(2015年2期)2015-12-20 01:09:20
    單片機(jī)實(shí)驗(yàn)電路板的安裝與調(diào)試
    免费观看在线日韩| 精品人妻视频免费看| 亚洲真实伦在线观看| 少妇丰满av| avwww免费| 一区福利在线观看| 欧美精品国产亚洲| av福利片在线观看| 日韩一本色道免费dvd| 亚洲av中文av极速乱| 婷婷色综合大香蕉| 一级毛片电影观看 | 永久网站在线| 亚洲国产欧美人成| 一边摸一边抽搐一进一小说| 中文字幕免费在线视频6| 国产精品野战在线观看| 身体一侧抽搐| av免费在线看不卡| 女人十人毛片免费观看3o分钟| 国产人妻一区二区三区在| 国产精品蜜桃在线观看 | 哪个播放器可以免费观看大片| 丰满人妻一区二区三区视频av| 搡老妇女老女人老熟妇| 美女高潮的动态| 免费观看精品视频网站| 国内精品久久久久精免费| 国产伦一二天堂av在线观看| 我的老师免费观看完整版| 村上凉子中文字幕在线| 91av网一区二区| 日韩精品青青久久久久久| 亚洲欧洲国产日韩| 青春草亚洲视频在线观看| 国产成人a∨麻豆精品| 亚洲精品影视一区二区三区av| 亚洲国产色片| 又爽又黄a免费视频| 亚洲人成网站在线观看播放| 成人特级黄色片久久久久久久| 色哟哟哟哟哟哟| 久久热精品热| 色吧在线观看| 久久久久久国产a免费观看| 国产高清有码在线观看视频| 一进一出抽搐动态| 亚洲精品456在线播放app| 国产色爽女视频免费观看| 欧美日本视频| 欧美精品一区二区大全| 少妇丰满av| 国国产精品蜜臀av免费| 国产精华一区二区三区| 国产久久久一区二区三区| 亚洲av中文字字幕乱码综合| 九九在线视频观看精品| 只有这里有精品99| 波多野结衣高清作品| 69人妻影院| 老司机影院成人| 蜜桃亚洲精品一区二区三区| 欧美变态另类bdsm刘玥| 全区人妻精品视频| 亚洲成人中文字幕在线播放| 久久久久久大精品| 久久久久网色| 级片在线观看| 老熟妇乱子伦视频在线观看| 精品人妻视频免费看| 国产av不卡久久| 亚洲av熟女| 亚洲国产色片| 黄色欧美视频在线观看| 婷婷亚洲欧美| 插逼视频在线观看| avwww免费| 91久久精品国产一区二区三区| 美女内射精品一级片tv| 国产精品伦人一区二区| 久久久久久久久中文| 三级男女做爰猛烈吃奶摸视频| 国产精品久久久久久亚洲av鲁大| 我要看日韩黄色一级片| 午夜激情福利司机影院| 日本三级黄在线观看| 日韩在线高清观看一区二区三区| 欧美区成人在线视频| av在线观看视频网站免费| 日韩欧美三级三区| 国产精品久久视频播放| 欧美成人免费av一区二区三区| 免费观看精品视频网站| 亚洲欧美精品自产自拍| 亚洲av男天堂| 亚洲五月天丁香| 久久精品久久久久久久性| 欧美最黄视频在线播放免费| 免费观看在线日韩| 免费不卡的大黄色大毛片视频在线观看 | 亚洲一级一片aⅴ在线观看| 偷拍熟女少妇极品色| 老司机影院成人| 内地一区二区视频在线| 熟妇人妻久久中文字幕3abv| av天堂在线播放| 国产成人91sexporn| 免费观看人在逋| 乱系列少妇在线播放| 熟女人妻精品中文字幕| 99久国产av精品| kizo精华| 国产三级在线视频| 99九九线精品视频在线观看视频| 久久久久性生活片| 午夜精品一区二区三区免费看| 夫妻性生交免费视频一级片| 久久婷婷人人爽人人干人人爱| av免费在线看不卡| videossex国产| 国产麻豆成人av免费视频| 一本精品99久久精品77| 亚洲人成网站在线播放欧美日韩| 欧美又色又爽又黄视频| 欧美性猛交黑人性爽| 欧美xxxx黑人xx丫x性爽| 免费看日本二区| 亚洲在线观看片| 婷婷精品国产亚洲av| 国产av在哪里看| 国产精品美女特级片免费视频播放器| 狂野欧美白嫩少妇大欣赏| 国产亚洲av片在线观看秒播厂 | av免费在线看不卡| a级毛片免费高清观看在线播放| 国产亚洲精品久久久com| 精品99又大又爽又粗少妇毛片| 国产伦在线观看视频一区| 日本免费一区二区三区高清不卡| 久久精品影院6| 亚洲国产精品成人综合色| 国产69精品久久久久777片| 成人午夜精彩视频在线观看| 可以在线观看毛片的网站| 国产精品国产高清国产av| 国产亚洲5aaaaa淫片| 久久久久久久午夜电影| 日韩 亚洲 欧美在线| 国产成人a区在线观看| 亚洲欧美精品自产自拍| 日韩国内少妇激情av| 1000部很黄的大片| 久久久精品欧美日韩精品| 成年免费大片在线观看| h日本视频在线播放| 男女做爰动态图高潮gif福利片| av卡一久久| 国产亚洲av片在线观看秒播厂 | 内地一区二区视频在线| 我的老师免费观看完整版| 久久久精品94久久精品| 99热6这里只有精品| 亚洲av不卡在线观看| 日韩成人伦理影院| 国产伦精品一区二区三区视频9| 嫩草影院入口| 亚洲在线自拍视频| 免费无遮挡裸体视频| 欧美日韩精品成人综合77777| 99在线人妻在线中文字幕| 亚洲五月天丁香| av在线老鸭窝| 亚洲精品久久久久久婷婷小说 | 成人午夜高清在线视频| 久久人妻av系列| 午夜福利在线观看免费完整高清在 | 可以在线观看的亚洲视频| 成人午夜精彩视频在线观看| 男女下面进入的视频免费午夜| 亚洲五月天丁香| 国产精品麻豆人妻色哟哟久久 | 亚洲最大成人中文| 最新中文字幕久久久久| 国产片特级美女逼逼视频| 天堂av国产一区二区熟女人妻| 亚洲av中文av极速乱| 国产黄色小视频在线观看| 精品99又大又爽又粗少妇毛片| 九九在线视频观看精品| 国产精品精品国产色婷婷| 久久草成人影院| 婷婷亚洲欧美| 天堂√8在线中文| 少妇人妻精品综合一区二区 | 长腿黑丝高跟| 一级av片app| 一个人看的www免费观看视频| 黑人高潮一二区| 国产美女午夜福利| 免费av不卡在线播放| av免费在线看不卡| 成年免费大片在线观看| 精品熟女少妇av免费看| 成人特级av手机在线观看| 麻豆av噜噜一区二区三区| 欧美不卡视频在线免费观看| 亚洲欧洲日产国产| 久久精品国产99精品国产亚洲性色| 婷婷亚洲欧美| 国产精品一区二区三区四区久久| 久久草成人影院| 插逼视频在线观看| 少妇裸体淫交视频免费看高清| 亚洲人成网站在线播| 日本黄色视频三级网站网址| 国产成人福利小说| 99热这里只有精品一区| 男人舔奶头视频| 亚洲aⅴ乱码一区二区在线播放| 国产亚洲av片在线观看秒播厂 | 午夜精品一区二区三区免费看| 2022亚洲国产成人精品| 亚洲欧美日韩卡通动漫| 精品久久久噜噜| 国产av在哪里看| 男女视频在线观看网站免费| 成人综合一区亚洲| 日韩中字成人| 精品欧美国产一区二区三| kizo精华| 国产一区亚洲一区在线观看| 日本黄色片子视频| 成人毛片60女人毛片免费| 舔av片在线| 亚洲美女搞黄在线观看| 亚洲精品自拍成人| 春色校园在线视频观看| 夫妻性生交免费视频一级片| 爱豆传媒免费全集在线观看| 青春草国产在线视频 | 中文字幕熟女人妻在线| 国产亚洲av片在线观看秒播厂 | 成人一区二区视频在线观看| 少妇丰满av| 精品一区二区三区视频在线| .国产精品久久| 色综合站精品国产| 乱码一卡2卡4卡精品| 91午夜精品亚洲一区二区三区| 亚洲aⅴ乱码一区二区在线播放| 日韩视频在线欧美| 久久这里只有精品中国| 久久精品国产99精品国产亚洲性色| 国产老妇女一区| 欧美性猛交黑人性爽| 亚洲美女搞黄在线观看| 久久人人精品亚洲av| 狠狠狠狠99中文字幕| 又黄又爽又刺激的免费视频.| 日本与韩国留学比较| 国模一区二区三区四区视频| 国产成人一区二区在线| 欧美精品国产亚洲| 直男gayav资源| 又粗又爽又猛毛片免费看| 欧美在线一区亚洲| 成人综合一区亚洲| 日韩欧美一区二区三区在线观看| 免费看日本二区| 三级国产精品欧美在线观看| 国产成人a∨麻豆精品| 麻豆一二三区av精品| 男女做爰动态图高潮gif福利片| 51国产日韩欧美| 三级经典国产精品| 天美传媒精品一区二区| 成人综合一区亚洲| 91麻豆精品激情在线观看国产| 午夜激情欧美在线| 全区人妻精品视频| 两个人视频免费观看高清| 免费人成在线观看视频色| 26uuu在线亚洲综合色| 一本一本综合久久| 成人一区二区视频在线观看| 亚洲成人精品中文字幕电影| 能在线免费看毛片的网站| 国产精品麻豆人妻色哟哟久久 | 欧美色欧美亚洲另类二区| 国产单亲对白刺激| 成人一区二区视频在线观看| 熟女电影av网| 亚洲精品成人久久久久久| 听说在线观看完整版免费高清| 亚洲国产精品成人久久小说 | 日日撸夜夜添| 亚洲最大成人av| 午夜激情福利司机影院| 国产久久久一区二区三区| 国产伦一二天堂av在线观看| 男女啪啪激烈高潮av片| 国产亚洲91精品色在线| 1024手机看黄色片| 国产成人精品一,二区 | 午夜精品在线福利| 成人美女网站在线观看视频| 91av网一区二区| 熟女人妻精品中文字幕| 麻豆久久精品国产亚洲av| 天天躁日日操中文字幕| 搞女人的毛片| 久久久久久国产a免费观看| 日韩欧美国产在线观看| 男女做爰动态图高潮gif福利片| 国产视频内射| 欧美+亚洲+日韩+国产| 性色avwww在线观看| 免费看光身美女| 成年女人永久免费观看视频| 日韩大尺度精品在线看网址| 国产蜜桃级精品一区二区三区| 麻豆av噜噜一区二区三区| 91久久精品电影网| 99久久精品国产国产毛片| 岛国毛片在线播放| 免费大片18禁| 在线播放无遮挡| 久久精品影院6| 日本三级黄在线观看| 精品人妻视频免费看| 国产黄色视频一区二区在线观看 | 搡女人真爽免费视频火全软件| 国产亚洲欧美98| 两个人的视频大全免费| 在线观看午夜福利视频| 99久久九九国产精品国产免费| 最近视频中文字幕2019在线8| 亚洲av成人精品一区久久| 草草在线视频免费看| 色视频www国产| 一进一出抽搐gif免费好疼| 久久久久九九精品影院| 人体艺术视频欧美日本| 少妇猛男粗大的猛烈进出视频 | 成人午夜高清在线视频| 国产成人freesex在线| 久久久久久久午夜电影| 看片在线看免费视频| 国产高清视频在线观看网站| 国产色爽女视频免费观看| 亚洲美女视频黄频| 精品99又大又爽又粗少妇毛片| 欧美日本亚洲视频在线播放| 桃色一区二区三区在线观看| 久久欧美精品欧美久久欧美| 99热6这里只有精品| 日韩欧美 国产精品| 18禁裸乳无遮挡免费网站照片| 伦理电影大哥的女人| 一级毛片久久久久久久久女| 尾随美女入室| 久久久精品欧美日韩精品| 美女被艹到高潮喷水动态| 国产精品免费一区二区三区在线| 亚洲国产精品国产精品| 免费av毛片视频| 蜜桃久久精品国产亚洲av| 人人妻人人澡欧美一区二区| 久久精品国产亚洲网站| 亚洲精品亚洲一区二区| 秋霞在线观看毛片| 国产三级中文精品| 午夜激情欧美在线| 神马国产精品三级电影在线观看| 美女 人体艺术 gogo| 国产爱豆传媒在线观看| 可以在线观看的亚洲视频| 三级国产精品欧美在线观看| 亚洲国产色片| 在线观看av片永久免费下载| 人妻少妇偷人精品九色| 日本熟妇午夜| 精品午夜福利在线看| 桃色一区二区三区在线观看| 国产精品国产高清国产av| 变态另类丝袜制服| 国产单亲对白刺激| 国产毛片a区久久久久| 美女黄网站色视频| 最近2019中文字幕mv第一页| 欧美变态另类bdsm刘玥| 日韩精品青青久久久久久| 少妇裸体淫交视频免费看高清| 亚洲图色成人| 成年女人看的毛片在线观看| a级毛片a级免费在线| 一卡2卡三卡四卡精品乱码亚洲| 三级男女做爰猛烈吃奶摸视频| 亚洲精品国产成人久久av| 久久草成人影院| 国产探花极品一区二区| 国产高清视频在线观看网站| 午夜福利视频1000在线观看| 国产精品野战在线观看| 欧美又色又爽又黄视频| 99国产精品一区二区蜜桃av| 女的被弄到高潮叫床怎么办| 美女脱内裤让男人舔精品视频 | 你懂的网址亚洲精品在线观看 | 成人特级av手机在线观看| 亚洲精品乱码久久久v下载方式| 日日啪夜夜撸| 97热精品久久久久久| 日韩成人伦理影院| 波多野结衣高清作品| 男人狂女人下面高潮的视频| 卡戴珊不雅视频在线播放| 中文在线观看免费www的网站| 国产午夜福利久久久久久| 日本免费a在线| 精品久久久久久成人av| 日韩av不卡免费在线播放| 女人十人毛片免费观看3o分钟| 精品久久久噜噜| 只有这里有精品99| 国国产精品蜜臀av免费| 午夜精品国产一区二区电影 | 成人亚洲精品av一区二区| 日韩欧美 国产精品| 中国国产av一级| 色尼玛亚洲综合影院| 男女啪啪激烈高潮av片| 男女视频在线观看网站免费| 精品久久久久久久人妻蜜臀av| 国产不卡一卡二| 午夜爱爱视频在线播放| 国产精品一区二区三区四区免费观看| av在线播放精品| 久久久久国产网址| 嫩草影院入口| 午夜福利在线观看免费完整高清在 | 免费av观看视频| 国产一区二区三区在线臀色熟女| 内射极品少妇av片p| 亚洲av熟女| 黄色日韩在线| 亚洲av免费高清在线观看| 99久久久亚洲精品蜜臀av| 久99久视频精品免费| 亚洲av中文av极速乱| 久久99热6这里只有精品| 亚洲国产精品sss在线观看| 亚洲三级黄色毛片| 丰满的人妻完整版| 国产精品麻豆人妻色哟哟久久 | eeuss影院久久| 日本三级黄在线观看| 免费电影在线观看免费观看| 可以在线观看毛片的网站| 九九热线精品视视频播放| 欧美高清成人免费视频www| 观看美女的网站| 亚洲国产精品合色在线| 插阴视频在线观看视频| 91久久精品电影网| 夜夜夜夜夜久久久久| 黄片wwwwww| 国内久久婷婷六月综合欲色啪| 免费不卡的大黄色大毛片视频在线观看 | 欧美在线一区亚洲| 国产精品久久久久久久电影| 国产美女午夜福利| 亚洲国产精品sss在线观看| 国产久久久一区二区三区| 在线免费观看的www视频| 啦啦啦观看免费观看视频高清| 成人特级av手机在线观看| 久久久久久久久久成人| 一区二区三区免费毛片| 99久久久亚洲精品蜜臀av| 久久精品国产亚洲网站| 最新中文字幕久久久久| 国产在线精品亚洲第一网站| 97在线视频观看| 欧美日韩国产亚洲二区| 好男人视频免费观看在线| 国内精品美女久久久久久| 国产中年淑女户外野战色| 18禁黄网站禁片免费观看直播| 亚洲不卡免费看| 亚洲一级一片aⅴ在线观看| 久久这里有精品视频免费| 听说在线观看完整版免费高清| 少妇熟女aⅴ在线视频| 欧美在线一区亚洲| 精品一区二区三区人妻视频| 国产视频内射| 菩萨蛮人人尽说江南好唐韦庄 | 看片在线看免费视频| 噜噜噜噜噜久久久久久91| 日本熟妇午夜| 99久久精品国产国产毛片| 亚洲精品亚洲一区二区| 一卡2卡三卡四卡精品乱码亚洲| 97超视频在线观看视频| 麻豆一二三区av精品| 亚洲av第一区精品v没综合| 亚洲欧美日韩东京热| 超碰av人人做人人爽久久| 男人的好看免费观看在线视频| 国产成人精品一,二区 | 日韩亚洲欧美综合| 岛国毛片在线播放| 岛国在线免费视频观看| 国产探花极品一区二区| 免费看美女性在线毛片视频| 91狼人影院| 久久精品影院6| 中文在线观看免费www的网站| 国内揄拍国产精品人妻在线| 九九爱精品视频在线观看| 男人舔女人下体高潮全视频| 99热这里只有精品一区| 91av网一区二区| 久久久国产成人精品二区| 国产亚洲5aaaaa淫片| 久久久久性生活片| 蜜臀久久99精品久久宅男| 久久人人爽人人片av| 精品人妻偷拍中文字幕| 成人性生交大片免费视频hd| 久久热精品热| 99热6这里只有精品| 国产av在哪里看| 性欧美人与动物交配| 中文欧美无线码| 干丝袜人妻中文字幕| 成人三级黄色视频| 亚洲一区高清亚洲精品| 国产精品久久久久久亚洲av鲁大| 一进一出抽搐动态| 亚洲激情五月婷婷啪啪| 午夜老司机福利剧场| 99久久九九国产精品国产免费| 我要看日韩黄色一级片| 午夜免费男女啪啪视频观看| 亚洲精品粉嫩美女一区| 欧美最黄视频在线播放免费| 精品午夜福利在线看| 久久人妻av系列| 丰满人妻一区二区三区视频av| 真实男女啪啪啪动态图| 在线免费观看的www视频| 国产综合懂色| 爱豆传媒免费全集在线观看| 亚洲av成人精品一区久久| 亚洲国产欧洲综合997久久,| 精品久久久噜噜| 亚洲综合色惰| 国产大屁股一区二区在线视频| 久久久成人免费电影| 国产精品久久电影中文字幕| 草草在线视频免费看| 中文字幕人妻熟人妻熟丝袜美| 国产精品,欧美在线| 日韩欧美国产在线观看| 美女国产视频在线观看| 久久久a久久爽久久v久久| 国产亚洲精品久久久久久毛片| 日韩成人av中文字幕在线观看| 亚洲性久久影院| 国产精品爽爽va在线观看网站| 国产在视频线在精品| av免费在线看不卡| 99精品在免费线老司机午夜| 欧美一区二区国产精品久久精品| 国产精品电影一区二区三区| 91麻豆精品激情在线观看国产| 成人亚洲精品av一区二区| 久久亚洲精品不卡| 乱码一卡2卡4卡精品| 精品午夜福利在线看| 天堂av国产一区二区熟女人妻| 一级二级三级毛片免费看| 搞女人的毛片| 夜夜爽天天搞| 美女脱内裤让男人舔精品视频 | 美女cb高潮喷水在线观看| 国产免费一级a男人的天堂| 国内精品宾馆在线| 欧美一区二区精品小视频在线| 在线免费十八禁| 欧美+亚洲+日韩+国产| 欧美色欧美亚洲另类二区| av国产免费在线观看| 国产久久久一区二区三区| 99久久中文字幕三级久久日本| 国产色婷婷99| 久久精品综合一区二区三区| 中国美白少妇内射xxxbb| 精品免费久久久久久久清纯| 久久久久久久久久久免费av| 欧美成人一区二区免费高清观看| 寂寞人妻少妇视频99o| 99久久精品国产国产毛片| 成人毛片a级毛片在线播放| 麻豆乱淫一区二区| 欧美日韩精品成人综合77777| 成年av动漫网址| 爱豆传媒免费全集在线观看| 麻豆一二三区av精品| 欧美日韩乱码在线| .国产精品久久| 久久久色成人| 国产av在哪里看|