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

    基于Qt的多線程嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    2017-03-25 16:48:15向明尚張志華潘麗艷
    科技與創(chuàng)新 2017年4期
    關(guān)鍵詞:多線程嵌入式系統(tǒng)驅(qū)動(dòng)程序

    向明尚++張志華++潘麗艷

    摘 要:以飛凌6410開發(fā)板上的外部設(shè)備為例,介紹了GPIO工作原理,講解了Linux字符驅(qū)動(dòng)程序的工作原理和設(shè)計(jì)步驟,介紹了Linux內(nèi)核模塊設(shè)計(jì)、編譯、加載和卸載等的實(shí)現(xiàn)方法,闡述了嵌入式系統(tǒng)圖形用戶界面Qt的應(yīng)用和多線程工作機(jī)制,給出了軟硬件的設(shè)計(jì)方法,以完成多線程嵌入式控制系統(tǒng)的設(shè)計(jì)。

    關(guān)鍵詞:字符設(shè)備;驅(qū)動(dòng)程序;多線程;嵌入式系統(tǒng)

    中圖分類號(hào):TP368.1 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.15913/j.cnki.kjycx.2017.04.011

    嵌入式系統(tǒng)被廣泛應(yīng)用于航天、航空、鐵路、公路、汽車和家居生活等各個(gè)領(lǐng)域。系統(tǒng)中有大量的外部設(shè)備,比如用于測量溫度、壓力、流量和速度等的傳感器,以及馬達(dá)、電機(jī)等執(zhí)行機(jī)構(gòu)。這些外部設(shè)備往往需要協(xié)同、并行工作,即所謂的多任務(wù)、實(shí)時(shí)系統(tǒng),對系統(tǒng)的設(shè)計(jì)有較高的要求。設(shè)計(jì)系統(tǒng)時(shí),既要考慮每一個(gè)外部硬件設(shè)備能夠可靠工作,又要考慮多個(gè)設(shè)備之間的資源共享,所以,軟件、硬件系統(tǒng)的設(shè)計(jì)要考慮到多任務(wù)、實(shí)時(shí)性的要求。Linux操作系統(tǒng)因其多任務(wù)、實(shí)時(shí)性的特點(diǎn),被廣泛應(yīng)用于嵌入式系統(tǒng)的設(shè)計(jì)中。Qt作為一種基于C++跨平臺(tái)GUI系統(tǒng),能夠?yàn)橛脩籼峁?gòu)造圖形界面的強(qiáng)大功能,提供豐富的多線程支持,并被應(yīng)用于嵌入式系統(tǒng)的GUI設(shè)計(jì)中。本文基于Linux+Qt,實(shí)現(xiàn)了多任務(wù)、多線程嵌入式控制系統(tǒng)。

    1 字符設(shè)備驅(qū)動(dòng)程序工作原理

    對于嵌入式系統(tǒng)中的外部設(shè)備,有一大類在Linux系統(tǒng)中被定義為字符設(shè)備,它需要專用的設(shè)備驅(qū)動(dòng)程序驅(qū)動(dòng)才能正常工作。Linux設(shè)備驅(qū)動(dòng)程序是為了特定的硬件提供給用戶程序的一組標(biāo)準(zhǔn)化接口,它隱藏了設(shè)備工作的細(xì)節(jié)。它是用來控制和管理硬件設(shè)備、完成數(shù)據(jù)傳送的專用軟件,是用戶的應(yīng)用程序與外部設(shè)備信息交換的橋梁。設(shè)備驅(qū)動(dòng)程序作為操作系統(tǒng)的一部分運(yùn)行在操作系統(tǒng)內(nèi)核中,用戶的應(yīng)用程序通過系統(tǒng)調(diào)用與內(nèi)核打交道,內(nèi)核根據(jù)系統(tǒng)通調(diào)用號(hào)來調(diào)用相應(yīng)的驅(qū)動(dòng)程序所對應(yīng)的接口函數(shù),實(shí)現(xiàn)對外部設(shè)備的管理。Linux中字符設(shè)備驅(qū)動(dòng)程序以內(nèi)核模塊的形式編寫,驅(qū)動(dòng)程序的加載方式之一就是采用內(nèi)核模塊方式動(dòng)態(tài)加載,具有靈活、高效的特點(diǎn)。

    Linux的字符設(shè)備是能夠像字節(jié)流一樣被訪問的設(shè)備,由字符設(shè)備驅(qū)動(dòng)程序來實(shí)現(xiàn)這種特性。字符設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì),就是實(shí)現(xiàn)設(shè)備的讀寫、控制接口,即實(shí)現(xiàn)Linux的核心結(jié)構(gòu)體file_operation。該結(jié)構(gòu)體是Linux虛擬文件系統(tǒng)的文件接口,其中定義了用于設(shè)備操作的各種接口函數(shù)。在設(shè)計(jì)設(shè)備驅(qū)動(dòng)程序時(shí),只需要實(shí)現(xiàn)結(jié)構(gòu)體中的有關(guān)函數(shù)即可,比如設(shè)備的打開、讀、寫、控制、關(guān)閉所對應(yīng)的open、read、wtite、ioctl、release等函數(shù),即可像操作普通文件一樣來管理設(shè)備。Linux系統(tǒng)為每一個(gè)設(shè)備分配一個(gè)主設(shè)備號(hào)和次設(shè)備號(hào),驅(qū)動(dòng)程序以主設(shè)備號(hào)、次設(shè)備號(hào)唯一標(biāo)示一個(gè)具體的外設(shè),比如開發(fā)板上的LED、按鍵、蜂鳴器、溫度傳感器和AD轉(zhuǎn)換器,等等。

    2 Qt多線程工作機(jī)制

    嵌入式系統(tǒng)大多是多任務(wù)、實(shí)時(shí)系統(tǒng),多個(gè)外部設(shè)備同時(shí)并行工作,實(shí)時(shí)性要求比較嚴(yán)格。因?yàn)閷τ脩粝到y(tǒng)的設(shè)計(jì)要求比較高,所以,引入了多線程技術(shù)。

    在Qt系統(tǒng)中,與線程有關(guān)的類是與平臺(tái)無關(guān)的QThread類,提供線程的創(chuàng)建、運(yùn)行、管理等多種方法。線程通QThread類run函數(shù)重載執(zhí)行。應(yīng)用程序要想執(zhí)行自己的線程,需要繼承QThread類,實(shí)現(xiàn)run函數(shù)即可。GUI運(yùn)行主線程,從窗口獲取事件,并分發(fā)給相應(yīng)的組件處理,即實(shí)現(xiàn)主線程、子線程多個(gè)線程之間并發(fā)執(zhí)行,保證系統(tǒng)對多個(gè)外部設(shè)備的及時(shí)響應(yīng)。為了實(shí)現(xiàn)多個(gè)線程之間的通信,Qt提供了一整套工作機(jī)制。

    Qt系統(tǒng)中引入“可重入”“線程安全”的概念來說明函數(shù)與線程之間的關(guān)系。“可重入”繼承于C++,它指的是一個(gè)類的函數(shù)在該類的不同實(shí)例上可以被多個(gè)線程調(diào)用,則該類是“可重入”的;“線程安全”指的是不同的線程作用于同一個(gè)實(shí)例上可以正常工作。

    Qt提供的信號(hào)和槽機(jī)制支持跨線程連接,方便了GUI主線程與子線程之間的通信,其連接方式有3種:①直接連接。當(dāng)信號(hào)發(fā)出時(shí),對應(yīng)的槽函數(shù)立即調(diào)用執(zhí)行。槽函數(shù)在發(fā)出信號(hào)的線程中執(zhí)行,而不一定在接收對象所屬的線程中執(zhí)行。②排隊(duì)連接。信號(hào)發(fā)出后,要等到接收對象所屬線程的時(shí)間循環(huán)取得控制權(quán)時(shí)再調(diào)用對應(yīng)的槽函數(shù),并在信號(hào)接收對象所屬的同一個(gè)線程中執(zhí)行。③自動(dòng)連接。這是Qt默認(rèn)的連接方式。信號(hào)的發(fā)出與接收信號(hào)的對象在同一個(gè)線程,則工作在直接連接方式,否則工作在排隊(duì)方式。

    對于Qt線程與事件循環(huán)機(jī)制,每個(gè)Qt的線程都有自己的事件循環(huán)。GUI主線程是唯一可以創(chuàng)建Qapplication對象并調(diào)用exec函數(shù)啟動(dòng)事件循環(huán)的,而其他子線程則通過調(diào)用QTread類的exec函數(shù)啟動(dòng)自己的事件循環(huán)。

    3 系統(tǒng)設(shè)計(jì)

    系統(tǒng)以飛凌6410開發(fā)板為例,利用其上的外部設(shè)備,比如LED、按鍵、蜂鳴器、溫度傳感器和GPIO等字符設(shè)備來設(shè)計(jì)實(shí)現(xiàn)多線程系統(tǒng)。

    3.1 GPIO端口工作原理

    GPIO通用輸入/輸出端口。每個(gè)GPIO端口有多個(gè)對應(yīng)的寄存器,比如配制寄存器、數(shù)據(jù)寄存器等。它們可以通過軟件修改配制寄存器的值,將端口的功能分別配置成輸入、輸出等多種工作方式,而數(shù)據(jù)寄存器則用于保存端口數(shù)據(jù)。當(dāng)端口配置成輸入功能時(shí),可以讀取數(shù)據(jù)寄存器得到1個(gè)二進(jìn)制數(shù)值,它的每一位1,0分別代表1個(gè)引腳電平的高、低;當(dāng)端口配置成輸出功能時(shí),可以寫入1個(gè)二進(jìn)制數(shù)值到數(shù)據(jù)寄存器,它的每一位1,0分別控制1個(gè)引腳輸出高、低電平。

    3.2 驅(qū)動(dòng)程序設(shè)計(jì)

    以開發(fā)板上的LED為例,介紹字符設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)過程。6410開發(fā)板上有4個(gè)共陽極接法的LED指示燈,分別接到GPM0-GPM3上。當(dāng)GPM0-GPM3的4個(gè)引腳有低電平輸出時(shí),對應(yīng)的LED點(diǎn)亮,否則熄滅。

    LED驅(qū)動(dòng)程序的設(shè)計(jì)就是實(shí)現(xiàn)Linux的核心結(jié)構(gòu)體file_operation結(jié)構(gòu)體的接口函數(shù)的過程,即實(shí)現(xiàn)下列幾個(gè)函數(shù):

    struct file_operation LED_fops={

    .owner = THIS_LED, //模塊塊所有者

    .open = led_open, //設(shè)備打開函數(shù)

    .ioctl = led_ioctl, //設(shè)備操作函數(shù)

    .release = led_release} //設(shè)備關(guān)閉函數(shù)

    led_ioctl函數(shù)用來控制端口的操作,包括功能配置、輸出高低電平控制LED的亮滅燈等。

    驅(qū)動(dòng)程序設(shè)計(jì)采用內(nèi)核模塊方式,可以實(shí)現(xiàn)動(dòng)態(tài)加載,運(yùn)行靈活,便于調(diào)試。其在驅(qū)動(dòng)程中添加模塊代碼如下:

    模塊初始化函數(shù):

    static int led_init(void)

    { int ret;

    ret=register_chrdev(led_MAJOR,“l(fā)ed”,& LED_fops)

    //注冊字符設(shè)備,其中參數(shù)分別為:主設(shè)備號(hào)、設(shè)備名稱、設(shè)備操作函數(shù)入口其中設(shè)備名稱提供給用戶,以文件的形式打開并操控設(shè)備

    if (ret < 0) { printk(“Unable to register!”); return ret; }

    return 0;

    }

    模塊退出函數(shù):

    static void led_exit(void)

    {unregister_chrdev(led_MAJOR,“l(fā)ed”);

    Printk(“Unregister !”);}

    添加初始化、卸載接口:

    module_init(led_init)//模塊初始化接口

    module_exit(led_exit)//模塊卸載接口

    3.3 模塊編譯

    可加載的模塊化驅(qū)動(dòng)程序?qū)懞煤?,需要編譯成內(nèi)核模塊才能加載到內(nèi)核執(zhí)行,并編寫相應(yīng)的makefile文件,即:

    obj-m := led_module.o

    CROSS_COMPILE=arm-linux-

    KERNELDIR?=/home/linux-3.0.1

    PWD := $(shell pwd)

    default:

    $(MAKE) -C $(KERNELDIR) M=$(PWD) modules

    clean:

    $(MAKE) -C $(KERNELDIR) M=$(PWD) clean

    有了makefile文件后,可以用命令編譯生成模塊:

    make -C /linux-3.0.1/ M=/home/drivers6410 modules

    3.4 模塊加載

    模塊生成后,根據(jù)需要使用下列命令在內(nèi)核中加載、卸載模塊,即:

    insmod led_module.ko 加載模塊到內(nèi)核

    rmmod led_module.ko 卸載模塊

    4 系統(tǒng)實(shí)現(xiàn)

    4.1 系統(tǒng)測試程序設(shè)計(jì)

    為了保證驅(qū)動(dòng)程設(shè)計(jì)的正確性,需要編寫用戶程序來測試LED驅(qū)動(dòng)程序和用戶程序的正確性、可靠性。經(jīng)過測試可以正確運(yùn)行,測試代碼如下:

    int led_fd,i = 0,j;

    led_fd = open("/dev/led",0); //以輸出的形式打開設(shè)備,控制LED的亮滅

    if(led_fd < 0 )

    {printf("Error opening gpcio?。躰"); exit(0); }

    while(1)

    {

    for(i = 0;i < 4; i++)

    { ioctl(led_fd, 1, i); //輸出高電平,熄滅LED }

    for(i = 0;i < 4; i++)

    { ioctl(led_fd, 0, i); //端口低電平,點(diǎn)亮LED }

    }

    close(led_fd);

    4.2 多線程用戶程序設(shè)計(jì)

    由于該系統(tǒng)中控制多個(gè)外部設(shè)備,為了保證設(shè)備能夠及時(shí)得到系統(tǒng)的響應(yīng),在程序設(shè)計(jì)時(shí)引入了多線程操作,確保外部設(shè)備的工作不受影響,從而實(shí)現(xiàn)多線程實(shí)時(shí)系統(tǒng)。程序部分代碼如下:

    GUI主線程部分代碼如下:

    int main(int argc, char *argv[])

    {

    QApplication app1(argc, argv);//定義Qt應(yīng)用程序?qū)ο?,其?gòu)造函數(shù)接收與主函數(shù)相同的參數(shù),是Qt圖形界面程序的入口。

    MainWindow mainWindow;//定義主窗體、設(shè)置其屬性

    mainWindow.setOrientation(MainWindow::ScreenOrientationAuto);

    mainWindow.showExpanded();

    QCoreApplication app(argc, argv);

    Led led; //以下創(chuàng)建多個(gè)線程對象的實(shí)例,控制LED、ADC的設(shè)備的操作

    Adc adc;

    Buzzer buzzer;

    Keyscan keyscan;

    Ds18b20 ds18b20;

    led.start();//以下啟動(dòng)多個(gè)線程,實(shí)現(xiàn)多個(gè)設(shè)備的操作

    adc.start();

    buzzer.start();

    keyscan.start();

    ds18b20.start();

    led.wait(); //線程等待,調(diào)用它的線程暫停執(zhí)行,直到被喚醒或等待時(shí)間到。

    buzzer.wait();

    adc.wait();

    keyscan.wait();

    ds18b20.wait();

    return app1.exec();} //調(diào)用了QCoreApplication的exec函數(shù),創(chuàng)建消息循環(huán)

    LED 控制子線程部分代碼:

    class Led : public QThread //創(chuàng)建一個(gè)子線程,實(shí)例化QThread類

    { public: void run(); };

    void Led::run() //重寫run函數(shù)

    { int led_fd,i = 0,j;

    led _fd = ::open("/dev/led",0);//打開設(shè)備寫數(shù)據(jù)

    if(led _fd < 0 ){printf("Error opening gpcio?。躰"); exit(0); }

    while(1)

    { for(i = 0;i < 4; i++)

    {ioctl(led _fd, 1, i); sleep(1); //延時(shí)作用 }

    文章編號(hào):2095-6835(2017)04-0013-02

    for(i = 0;i < 4; i++)

    {ioctl(led _fd, 0, i); sleep(1); }

    }

    ::close(led _fd);

    }

    5 結(jié)束語

    該系統(tǒng)利用Linux內(nèi)核模塊技術(shù)開發(fā)了多個(gè)字符設(shè)備驅(qū)動(dòng)程序,同時(shí),利用Qt作為圖形界面開發(fā)了多線程、多任務(wù)嵌入式系統(tǒng),實(shí)現(xiàn)了外部設(shè)備的并發(fā)操作。經(jīng)測試,系統(tǒng)運(yùn)行穩(wěn)定、

    可靠。

    參考文獻(xiàn)

    [1]黃宇東,胡躍明,陳安.基于Qt的多線程技術(shù)應(yīng)用于研究[J].軟件導(dǎo)刊,2009,8(10):40-42.

    [2]王粉花.基于Linux字符設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2006,32(23):278-280.

    [3]張威,黃沖.嵌入式Linux設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)方法研究[J].江西師范大學(xué)學(xué)報(bào),2007,31(4):391-393.

    〔編輯:白潔〕

    猜你喜歡
    多線程嵌入式系統(tǒng)驅(qū)動(dòng)程序
    Java并發(fā)工具包對并發(fā)編程的優(yōu)化
    基于物聯(lián)網(wǎng)項(xiàng)目驅(qū)動(dòng)的嵌入式系統(tǒng)教學(xué)改革的研究與實(shí)踐
    嵌入式系統(tǒng)課程“中斷、異常與事件”教學(xué)實(shí)踐及啟示
    面向?qū)嵺`創(chuàng)新人才培養(yǎng)的嵌入式系統(tǒng)教學(xué)研究
    在DiskOnChip上構(gòu)建VxWorks系統(tǒng)開發(fā)環(huán)境
    基于多線程文件傳輸關(guān)鍵技術(shù)研究與實(shí)現(xiàn)
    網(wǎng)頁爬蟲技術(shù)的關(guān)鍵技術(shù)研究探索
    一種基于多線程的高速磁盤鏡像算法
    驅(qū)動(dòng)程序更新與推薦
    驅(qū)動(dòng)程序更新與推薦
    国产精品电影一区二区三区| 女人精品久久久久毛片| 18禁美女被吸乳视频| 国产精品免费一区二区三区在线| 亚洲伊人色综图| 日韩精品中文字幕看吧| 精品久久久久久久久久免费视频 | 国产精品一区二区在线不卡| 中文字幕人妻熟女乱码| 久久99一区二区三区| 久久精品国产清高在天天线| 午夜影院日韩av| 在线观看www视频免费| 亚洲中文日韩欧美视频| 亚洲国产中文字幕在线视频| 国产精品99久久99久久久不卡| 怎么达到女性高潮| 亚洲avbb在线观看| 18禁黄网站禁片午夜丰满| 久久精品成人免费网站| 久久精品影院6| 国产在线观看jvid| 日本免费一区二区三区高清不卡 | 亚洲中文字幕日韩| 亚洲精品av麻豆狂野| 日本撒尿小便嘘嘘汇集6| 国产三级黄色录像| 亚洲精品一区av在线观看| 亚洲 欧美 日韩 在线 免费| 丁香六月欧美| 亚洲人成电影免费在线| 欧美激情极品国产一区二区三区| 国产亚洲精品久久久久久毛片| 人妻丰满熟妇av一区二区三区| 亚洲avbb在线观看| 很黄的视频免费| 亚洲五月婷婷丁香| 久久99一区二区三区| 一个人免费在线观看的高清视频| 日韩欧美三级三区| 欧美激情 高清一区二区三区| 亚洲人成77777在线视频| 久久精品人人爽人人爽视色| 搡老熟女国产l中国老女人| 亚洲人成网站在线播放欧美日韩| 大型黄色视频在线免费观看| 丰满的人妻完整版| 亚洲九九香蕉| 午夜精品久久久久久毛片777| 可以免费在线观看a视频的电影网站| 国产片内射在线| 精品一区二区三区四区五区乱码| 他把我摸到了高潮在线观看| 成年人免费黄色播放视频| 亚洲精品国产区一区二| 国产av一区二区精品久久| 国产精品二区激情视频| 久久国产精品男人的天堂亚洲| xxx96com| 成人亚洲精品av一区二区 | 欧美性长视频在线观看| 午夜两性在线视频| 亚洲欧美日韩无卡精品| 少妇被粗大的猛进出69影院| 久久久水蜜桃国产精品网| 亚洲av电影在线进入| 精品一区二区三卡| 亚洲少妇的诱惑av| 自线自在国产av| 身体一侧抽搐| 少妇 在线观看| 俄罗斯特黄特色一大片| www.999成人在线观看| 国产av一区二区精品久久| 免费少妇av软件| 日本五十路高清| 亚洲专区中文字幕在线| 精品国产超薄肉色丝袜足j| 国产乱人伦免费视频| 国产免费男女视频| 亚洲午夜理论影院| 国产精品野战在线观看 | 亚洲片人在线观看| 巨乳人妻的诱惑在线观看| 久久人人精品亚洲av| 人人妻,人人澡人人爽秒播| 老熟妇仑乱视频hdxx| 女性被躁到高潮视频| 脱女人内裤的视频| 中文字幕最新亚洲高清| 法律面前人人平等表现在哪些方面| 亚洲成国产人片在线观看| 日韩一卡2卡3卡4卡2021年| 国产国语露脸激情在线看| 久久久国产成人免费| 一区在线观看完整版| 两性夫妻黄色片| 嫁个100分男人电影在线观看| 在线观看午夜福利视频| aaaaa片日本免费| 免费在线观看亚洲国产| 国产精华一区二区三区| 国产精华一区二区三区| 国内毛片毛片毛片毛片毛片| 国产精品爽爽va在线观看网站 | 极品人妻少妇av视频| 亚洲av第一区精品v没综合| 亚洲片人在线观看| 97碰自拍视频| 一级黄色大片毛片| 欧美日韩av久久| 欧美 亚洲 国产 日韩一| 91九色精品人成在线观看| 看黄色毛片网站| 国产精品电影一区二区三区| 免费在线观看日本一区| 精品国内亚洲2022精品成人| 一级a爱视频在线免费观看| 亚洲色图av天堂| 亚洲av五月六月丁香网| 777久久人妻少妇嫩草av网站| 曰老女人黄片| 亚洲精品一卡2卡三卡4卡5卡| 又紧又爽又黄一区二区| 亚洲欧美精品综合一区二区三区| 一级a爱视频在线免费观看| 一二三四在线观看免费中文在| 水蜜桃什么品种好| 午夜激情av网站| 又紧又爽又黄一区二区| 夜夜看夜夜爽夜夜摸 | 80岁老熟妇乱子伦牲交| 少妇被粗大的猛进出69影院| 亚洲成人国产一区在线观看| 99精品欧美一区二区三区四区| 天堂动漫精品| 亚洲中文av在线| 久久中文字幕人妻熟女| 亚洲av第一区精品v没综合| 男女下面插进去视频免费观看| 免费人成视频x8x8入口观看| 母亲3免费完整高清在线观看| 亚洲五月天丁香| 十八禁人妻一区二区| 两性夫妻黄色片| 国产国语露脸激情在线看| 亚洲成a人片在线一区二区| 99久久综合精品五月天人人| 日韩欧美在线二视频| 久久伊人香网站| 人人澡人人妻人| 精品国内亚洲2022精品成人| 久久国产亚洲av麻豆专区| 91在线观看av| 成人永久免费在线观看视频| www日本在线高清视频| 欧美日韩精品网址| 欧美成人午夜精品| 国产99白浆流出| 亚洲 国产 在线| 亚洲自拍偷在线| 国产av一区二区精品久久| 男女床上黄色一级片免费看| 色综合站精品国产| 欧美日韩乱码在线| 电影成人av| 国产欧美日韩一区二区精品| 日本vs欧美在线观看视频| 欧美一级毛片孕妇| 亚洲欧洲精品一区二区精品久久久| 人人妻人人添人人爽欧美一区卜| 国产精品野战在线观看 | 精品国产美女av久久久久小说| 亚洲精品久久成人aⅴ小说| 亚洲精品粉嫩美女一区| 电影成人av| 久久久久久久精品吃奶| 丝袜美腿诱惑在线| 亚洲五月天丁香| 欧美精品一区二区免费开放| 色婷婷av一区二区三区视频| 熟女少妇亚洲综合色aaa.| 精品第一国产精品| 人妻丰满熟妇av一区二区三区| 亚洲一区二区三区不卡视频| 激情在线观看视频在线高清| 在线观看免费视频日本深夜| 亚洲精品国产区一区二| av天堂在线播放| 国产不卡一卡二| 91精品三级在线观看| 99国产综合亚洲精品| 久久久国产成人精品二区 | 精品久久久久久久毛片微露脸| 亚洲国产精品一区二区三区在线| 69精品国产乱码久久久| 色精品久久人妻99蜜桃| 午夜亚洲福利在线播放| 亚洲av日韩精品久久久久久密| 啦啦啦 在线观看视频| 国产欧美日韩精品亚洲av| 国产午夜精品久久久久久| 成在线人永久免费视频| 最近最新免费中文字幕在线| 麻豆国产av国片精品| 亚洲一区高清亚洲精品| 中文字幕最新亚洲高清| 看黄色毛片网站| 9热在线视频观看99| 亚洲成人久久性| 欧美在线黄色| 免费在线观看完整版高清| 日韩av在线大香蕉| 亚洲国产欧美一区二区综合| 波多野结衣高清无吗| 午夜福利,免费看| 国产成人精品久久二区二区91| 久久精品国产99精品国产亚洲性色 | 欧美激情高清一区二区三区| 精品少妇一区二区三区视频日本电影| 热re99久久精品国产66热6| 亚洲精品在线美女| 久久精品影院6| 狂野欧美激情性xxxx| 亚洲色图综合在线观看| 色哟哟哟哟哟哟| 深夜精品福利| 一级作爱视频免费观看| 男男h啪啪无遮挡| 男女午夜视频在线观看| 国产伦人伦偷精品视频| 久久久久国产一级毛片高清牌| 美女国产高潮福利片在线看| 两个人免费观看高清视频| 国产精品久久久久久人妻精品电影| 欧美另类亚洲清纯唯美| 侵犯人妻中文字幕一二三四区| 亚洲,欧美精品.| 如日韩欧美国产精品一区二区三区| 看免费av毛片| 波多野结衣高清无吗| 香蕉丝袜av| 精品久久久久久成人av| 久久香蕉精品热| 国产成年人精品一区二区 | 色综合婷婷激情| 久久国产乱子伦精品免费另类| 一夜夜www| 午夜久久久在线观看| 变态另类成人亚洲欧美熟女 | 久久久久久久午夜电影 | 日本欧美视频一区| 国产伦人伦偷精品视频| 国产高清videossex| 一区二区三区激情视频| 久久人人97超碰香蕉20202| 91在线观看av| 亚洲 欧美 日韩 在线 免费| 成人三级黄色视频| 亚洲熟妇熟女久久| 亚洲一区二区三区欧美精品| 性欧美人与动物交配| 亚洲国产欧美网| 久久精品91蜜桃| 在线观看免费视频网站a站| 国产一区二区三区在线臀色熟女 | 99国产精品99久久久久| 精品少妇一区二区三区视频日本电影| 久久人人精品亚洲av| 长腿黑丝高跟| 母亲3免费完整高清在线观看| 女警被强在线播放| 国产高清videossex| 色婷婷久久久亚洲欧美| 韩国精品一区二区三区| 88av欧美| 中国美女看黄片| 一级片'在线观看视频| 午夜91福利影院| 久久婷婷成人综合色麻豆| 亚洲视频免费观看视频| 69av精品久久久久久| 女人精品久久久久毛片| av国产精品久久久久影院| 午夜两性在线视频| 在线观看免费视频网站a站| 国产亚洲精品久久久久5区| 日本wwww免费看| www日本在线高清视频| 十分钟在线观看高清视频www| 男女做爰动态图高潮gif福利片 | 亚洲色图av天堂| 亚洲第一青青草原| 极品人妻少妇av视频| 国产亚洲av高清不卡| 成在线人永久免费视频| 国产成人啪精品午夜网站| 老汉色∧v一级毛片| 亚洲精品中文字幕一二三四区| 久久国产精品人妻蜜桃| 亚洲少妇的诱惑av| 久久久久国内视频| 国产熟女xx| av视频免费观看在线观看| 人人妻人人澡人人看| 少妇 在线观看| 亚洲第一青青草原| 欧美黄色淫秽网站| 一级黄色大片毛片| 亚洲av日韩精品久久久久久密| 日本撒尿小便嘘嘘汇集6| 欧美性长视频在线观看| 欧美午夜高清在线| 制服诱惑二区| 中文字幕av电影在线播放| 波多野结衣高清无吗| 中文亚洲av片在线观看爽| 在线观看免费视频日本深夜| 一区二区日韩欧美中文字幕| 久久欧美精品欧美久久欧美| av网站免费在线观看视频| 国产成人免费无遮挡视频| 国产高清激情床上av| 美女 人体艺术 gogo| 老熟妇乱子伦视频在线观看| 老汉色av国产亚洲站长工具| 精品午夜福利视频在线观看一区| 少妇粗大呻吟视频| 最近最新免费中文字幕在线| 午夜日韩欧美国产| 国产蜜桃级精品一区二区三区| 无人区码免费观看不卡| 亚洲午夜精品一区,二区,三区| 大型黄色视频在线免费观看| 琪琪午夜伦伦电影理论片6080| 亚洲欧美精品综合久久99| 欧美不卡视频在线免费观看 | 精品国产超薄肉色丝袜足j| 国产精品久久久av美女十八| 亚洲熟妇中文字幕五十中出 | 亚洲精品成人av观看孕妇| 99精品欧美一区二区三区四区| 国产精品成人在线| 91在线观看av| 精品国产一区二区三区四区第35| 精品免费久久久久久久清纯| 久久影院123| 成年版毛片免费区| 亚洲第一av免费看| 黑丝袜美女国产一区| 日本一区二区免费在线视频| 欧美性长视频在线观看| 欧美黑人精品巨大| 国产国语露脸激情在线看| 亚洲精品成人av观看孕妇| 久久人妻福利社区极品人妻图片| av国产精品久久久久影院| 午夜a级毛片| 97超级碰碰碰精品色视频在线观看| 欧美老熟妇乱子伦牲交| 午夜免费成人在线视频| 日本精品一区二区三区蜜桃| 夜夜爽天天搞| x7x7x7水蜜桃| 一级毛片高清免费大全| 亚洲国产欧美日韩在线播放| 美女高潮喷水抽搐中文字幕| 18美女黄网站色大片免费观看| 婷婷丁香在线五月| 免费日韩欧美在线观看| 男女午夜视频在线观看| 午夜福利在线免费观看网站| 无人区码免费观看不卡| 久久香蕉精品热| 俄罗斯特黄特色一大片| 国产麻豆69| 在线国产一区二区在线| 久久人人97超碰香蕉20202| av有码第一页| 一进一出抽搐动态| 国产99久久九九免费精品| 999久久久精品免费观看国产| 亚洲av美国av| tocl精华| 伦理电影免费视频| 一级a爱视频在线免费观看| 亚洲精品久久成人aⅴ小说| 啪啪无遮挡十八禁网站| 一级毛片女人18水好多| 麻豆久久精品国产亚洲av | 精品久久蜜臀av无| 757午夜福利合集在线观看| 国产又爽黄色视频| 久久久久久久精品吃奶| 亚洲男人的天堂狠狠| 亚洲欧美精品综合一区二区三区| 一区二区日韩欧美中文字幕| 一边摸一边抽搐一进一小说| 制服人妻中文乱码| 成人特级黄色片久久久久久久| 午夜免费观看网址| 桃红色精品国产亚洲av| 久久人人爽av亚洲精品天堂| 国产一区二区三区视频了| 日韩三级视频一区二区三区| 中文字幕人妻熟女乱码| 亚洲中文日韩欧美视频| 亚洲伊人色综图| 免费女性裸体啪啪无遮挡网站| 国产成人欧美在线观看| 色老头精品视频在线观看| 国产精品香港三级国产av潘金莲| 亚洲黑人精品在线| av天堂久久9| 久久婷婷成人综合色麻豆| 亚洲精品粉嫩美女一区| 精品久久久久久电影网| 欧美人与性动交α欧美软件| 日韩 欧美 亚洲 中文字幕| 中亚洲国语对白在线视频| 国产日韩一区二区三区精品不卡| 欧美亚洲日本最大视频资源| 99在线人妻在线中文字幕| 人人妻人人澡人人看| 国产成+人综合+亚洲专区| 男女下面进入的视频免费午夜 | 精品日产1卡2卡| 麻豆成人av在线观看| 亚洲av成人av| 老司机午夜十八禁免费视频| 亚洲va日本ⅴa欧美va伊人久久| 午夜亚洲福利在线播放| 在线播放国产精品三级| 国产99白浆流出| 国产成人精品在线电影| 欧美一级毛片孕妇| 一边摸一边做爽爽视频免费| 免费高清视频大片| 老司机午夜十八禁免费视频| 色老头精品视频在线观看| 视频区图区小说| 国产成人欧美| 亚洲精华国产精华精| 韩国av一区二区三区四区| 叶爱在线成人免费视频播放| 国产成人免费无遮挡视频| 天堂动漫精品| 老司机午夜福利在线观看视频| 美女大奶头视频| 亚洲精品国产区一区二| 亚洲色图 男人天堂 中文字幕| 欧美日韩瑟瑟在线播放| 国产精品99久久99久久久不卡| 一二三四在线观看免费中文在| 国产精品 国内视频| 亚洲国产精品合色在线| 大陆偷拍与自拍| 99国产精品99久久久久| 19禁男女啪啪无遮挡网站| 黑人欧美特级aaaaaa片| 亚洲视频免费观看视频| 亚洲avbb在线观看| 国产又色又爽无遮挡免费看| www国产在线视频色| 欧美日韩瑟瑟在线播放| 亚洲自拍偷在线| 精品久久蜜臀av无| 亚洲五月天丁香| 午夜免费成人在线视频| 波多野结衣av一区二区av| 日韩中文字幕欧美一区二区| 亚洲自拍偷在线| 久久中文字幕人妻熟女| 桃色一区二区三区在线观看| 国产人伦9x9x在线观看| 国产熟女xx| 一进一出抽搐gif免费好疼 | 午夜激情av网站| 99国产精品一区二区三区| 美女福利国产在线| 午夜91福利影院| 一区二区三区国产精品乱码| 成人影院久久| 制服人妻中文乱码| 9色porny在线观看| 自拍欧美九色日韩亚洲蝌蚪91| 精品熟女少妇八av免费久了| 大香蕉久久成人网| 交换朋友夫妻互换小说| 18禁美女被吸乳视频| 亚洲国产欧美一区二区综合| 在线看a的网站| 51午夜福利影视在线观看| 国产精品久久久久久人妻精品电影| 黄片播放在线免费| 身体一侧抽搐| 精品国产乱码久久久久久男人| 国产区一区二久久| 亚洲一区二区三区不卡视频| 黄色 视频免费看| 亚洲熟妇中文字幕五十中出 | 国产精品 欧美亚洲| 亚洲欧美日韩另类电影网站| 国产又色又爽无遮挡免费看| 视频区欧美日本亚洲| 亚洲一区二区三区欧美精品| 精品欧美一区二区三区在线| a级毛片黄视频| 国产主播在线观看一区二区| 日韩av在线大香蕉| 在线观看日韩欧美| 国产日韩一区二区三区精品不卡| 九色亚洲精品在线播放| 欧美激情 高清一区二区三区| 亚洲五月天丁香| 欧美黄色片欧美黄色片| 一级片免费观看大全| 99久久精品国产亚洲精品| 国产成人精品久久二区二区免费| 亚洲专区中文字幕在线| 午夜福利免费观看在线| 桃色一区二区三区在线观看| av国产精品久久久久影院| 欧美日韩av久久| 国产午夜精品久久久久久| 成熟少妇高潮喷水视频| www.自偷自拍.com| 成人亚洲精品一区在线观看| 在线观看免费高清a一片| 国产91精品成人一区二区三区| 亚洲色图 男人天堂 中文字幕| 成人特级黄色片久久久久久久| 久久久国产精品麻豆| 亚洲精品国产色婷婷电影| 国产精品综合久久久久久久免费 | 中文字幕高清在线视频| 午夜免费成人在线视频| 亚洲色图 男人天堂 中文字幕| 国产亚洲av高清不卡| 黄色视频,在线免费观看| 日韩一卡2卡3卡4卡2021年| 一级毛片高清免费大全| 国产欧美日韩一区二区三区在线| 午夜免费观看网址| 99热只有精品国产| 欧美日韩视频精品一区| 中文字幕高清在线视频| 日韩 欧美 亚洲 中文字幕| 国产黄色免费在线视频| 久久精品国产综合久久久| 美女高潮喷水抽搐中文字幕| 少妇的丰满在线观看| 麻豆成人av在线观看| 日本精品一区二区三区蜜桃| 三级毛片av免费| 午夜激情av网站| 满18在线观看网站| 在线观看免费高清a一片| 精品人妻在线不人妻| 久久99一区二区三区| 99久久精品国产亚洲精品| 最近最新中文字幕大全电影3 | 亚洲成av片中文字幕在线观看| 男人操女人黄网站| av电影中文网址| 99国产精品免费福利视频| 黄色片一级片一级黄色片| 少妇粗大呻吟视频| 国产av又大| 麻豆成人av在线观看| www.www免费av| 午夜两性在线视频| 桃红色精品国产亚洲av| 亚洲一区二区三区色噜噜 | 脱女人内裤的视频| 亚洲久久久国产精品| 成人18禁高潮啪啪吃奶动态图| 久久欧美精品欧美久久欧美| 又大又爽又粗| 男男h啪啪无遮挡| 巨乳人妻的诱惑在线观看| 69av精品久久久久久| 亚洲情色 制服丝袜| 国产一区在线观看成人免费| bbb黄色大片| 成人特级黄色片久久久久久久| 69av精品久久久久久| 精品卡一卡二卡四卡免费| 丰满的人妻完整版| 性欧美人与动物交配| 大型黄色视频在线免费观看| 欧美乱妇无乱码| 国产精品亚洲一级av第二区| 成人黄色视频免费在线看| 国产欧美日韩一区二区三区在线| 免费在线观看亚洲国产| www.自偷自拍.com| 性欧美人与动物交配| 久久亚洲精品不卡| 两个人看的免费小视频| 亚洲久久久国产精品| 伦理电影免费视频| 亚洲全国av大片| 最近最新中文字幕大全免费视频| 久久久国产一区二区| 国产亚洲av高清不卡| 欧美日本中文国产一区发布| 久久久久久亚洲精品国产蜜桃av| 亚洲人成网站在线播放欧美日韩| 十八禁网站免费在线| 精品无人区乱码1区二区| 欧美日韩精品网址| 亚洲熟妇熟女久久| 大码成人一级视频| 99久久久亚洲精品蜜臀av|