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

    嵌入式Linux下ADS1256驅(qū)動(dòng)程序的設(shè)計(jì)與實(shí)現(xiàn)

    2015-01-15 00:22:28段月驍胡曉峰
    化工自動(dòng)化及儀表 2015年12期
    關(guān)鍵詞:驅(qū)動(dòng)程序字符內(nèi)核

    段月驍 郭 斌 胡曉峰 羅 哉 陸 藝

    (中國(guó)計(jì)量學(xué)院計(jì)量測(cè)試工程學(xué)院,杭州 310018)

    在自動(dòng)化測(cè)試系統(tǒng)中,處理器往往需要通過(guò)模數(shù)轉(zhuǎn)換器獲取傳感器采集到的原始數(shù)據(jù)。S3C2440A微處理器自帶八通道10位的AD轉(zhuǎn)換器,在測(cè)量精度要求不高時(shí)可以直接使用。在實(shí)際應(yīng)用中,為滿足高精度測(cè)量要求,需要外擴(kuò)模數(shù)轉(zhuǎn)換器。筆者選用24位分辨率帶SPI接口的模數(shù)轉(zhuǎn)換器ADS1256作為S3C2440A的外部AD轉(zhuǎn)換器。SPI是一種高速、全雙工、同步通信總線。因其傳輸穩(wěn)定、高效、占用引腳數(shù)量少,在模數(shù)轉(zhuǎn)換器、Flash及MCU等串行設(shè)備中應(yīng)用廣泛。Linux是全球知名的開源自由多任務(wù)操作系統(tǒng),任何人都可以在遵循GPL(General Public License)協(xié)議的基礎(chǔ)上修改其源代碼以適應(yīng)實(shí)際需求。正是Linux操作系統(tǒng)的免費(fèi)、開放源代碼及內(nèi)核可裁剪等諸多優(yōu)點(diǎn),使其廣泛應(yīng)用于智能儀表及工業(yè)控制等嵌入式系統(tǒng)中。

    筆者采用S3C2440A微處理器和嵌入式Linux操作系統(tǒng)作為開發(fā)平臺(tái),結(jié)合實(shí)際工程氣密性檢測(cè)系統(tǒng),設(shè)計(jì)S3C2440A與ADS1256的SPI接口,詳細(xì)分析了Linux2.6.32.2下ADS1256驅(qū)動(dòng)程序的設(shè)計(jì)、編譯、加載和測(cè)試過(guò)程。

    1.1 ARM微處理器S3C2440A

    筆者選用S3C2440A微處理器,該處理器采用ARM920T的核心,0.13μm的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)單元,主頻400MHz,最高工作頻率可達(dá)533MHz。S3C2440A提供了兩個(gè)SPI接口,每個(gè)接口分別包含兩個(gè)8位發(fā)送移位寄存器和接收移位寄存器,通過(guò)串行時(shí)鐘線(SCK)、主機(jī)輸出從機(jī)輸入(MOSI)、主機(jī)輸入從機(jī)輸出(MISO)和片選控制線(nSS)與外圍設(shè)備進(jìn)行通信。處理器帶有增強(qiáng)型ARM架構(gòu)內(nèi)存管理單元(MMU),支持Linux及Windows CE等多任務(wù)操作系統(tǒng),可擴(kuò)展能力強(qiáng)。

    1.2 模數(shù)轉(zhuǎn)換芯片ADS1256

    ADS1256是24位八通道Sigma-Delta(Σ-Δ)高分辨率低噪聲模數(shù)轉(zhuǎn)換芯片。ADS1256通過(guò)串行總線SPI與MCU進(jìn)行數(shù)據(jù)通信,簡(jiǎn)化了接口電路設(shè)計(jì)。芯片支持對(duì)PGA(可編程增益放大器)設(shè)置所造成的偏移與增益誤差進(jìn)行自校準(zhǔn)和系統(tǒng)校準(zhǔn)。芯片帶有通用數(shù)字I/O口和可編程時(shí)鐘輸出。

    1.3 穩(wěn)壓芯片LM285D-2.5

    LM285D-2.5是低動(dòng)態(tài)阻抗、低溫度系數(shù)和低噪聲的電壓基準(zhǔn)芯片。設(shè)計(jì)中LM285D-2.5的電源電壓為5.0V,輸出電壓2.5V,為ADS1256模數(shù)轉(zhuǎn)換提供穩(wěn)定的參考電壓。

    1.4 接口電路

    實(shí)際工程中需采集氣密性檢測(cè)系統(tǒng)中的壓差信號(hào)和壓力信號(hào)。差壓傳感器和壓力傳感器輸出的模擬信號(hào)由ADS1256轉(zhuǎn)換成數(shù)字信號(hào)后通過(guò)SPI接口傳入S3C2440A。ADS1256屬于高分辨率的模數(shù)轉(zhuǎn)換器,其外圍電路設(shè)計(jì)需要尤其注意以保證數(shù)據(jù)轉(zhuǎn)換精度。ADS1256外圍電路和S3C2440A的接口電路如圖1所示,ADS1256除了包含標(biāo)準(zhǔn)SPI總線的信號(hào)線SCLK、DIN、DOUT、CS外,還帶有指示數(shù)據(jù)是否已轉(zhuǎn)換好的標(biāo)志信號(hào)線DRDY(低有效)與串口配合使用。MCU可以把DRDY作為外部中斷源信號(hào),或者通過(guò)查詢方式訪問(wèn)ADS1256狀態(tài)寄存器中的DRDY位來(lái)判斷是否有數(shù)據(jù)可讀。此處ADS1256的信號(hào)線SCLK、DIN、DOUT、CS、DRDY分別接S3C2440A的信號(hào)線SPICLK0、SPIMOSI0、SPIMISO、nSS0、EINT0。LM285D-2.5與ADS1256的連接電路如圖2所示。LM285D-2.5的輸出VREFN和VREFP為ADS1256數(shù)模轉(zhuǎn)換提供穩(wěn)定的2.5V工作電壓。

    圖1 ADS1256外圍電路和S3C2440A的SPI接口電路

    圖2 LM285D-2.5與ADS1256的連接電路

    2 設(shè)備驅(qū)動(dòng)程序

    設(shè)備驅(qū)動(dòng)程序是連接應(yīng)用程序和實(shí)際硬件的紐帶,它使得應(yīng)用軟件只需要調(diào)用操作系統(tǒng)的應(yīng)用編程接口(API)就可讓硬件完成要求的工作。Linux的外設(shè)分為3類:字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)接口[1]。模數(shù)轉(zhuǎn)換器ADS1256屬于字符型設(shè)備,字符型設(shè)備是使用最廣泛的一類外設(shè)。筆者選用Linux2.6.32.2為嵌入式操作系統(tǒng),arm-linux-gcc 4.4.3交叉編譯器用于編譯生成目標(biāo)驅(qū)動(dòng)程序。Linux給用戶提供了兩種開發(fā)設(shè)備驅(qū)動(dòng)的方式:設(shè)計(jì)成可加載模塊和直接編譯到Linux內(nèi)核中。前者適合驅(qū)動(dòng)處于開發(fā)調(diào)試的階段,驅(qū)動(dòng)開發(fā)采用模塊化思想,使得不需要修改內(nèi)核代碼,單獨(dú)編譯所開發(fā)的驅(qū)動(dòng)模塊即可,可以使用命令insmod和rmmod動(dòng)態(tài)加載和卸載驅(qū)動(dòng)。后者適合驅(qū)動(dòng)功能已經(jīng)調(diào)試成功的階段,直接編譯進(jìn)內(nèi)核后,該驅(qū)動(dòng)就能隨機(jī)啟動(dòng),應(yīng)用程序可以直接調(diào)用相應(yīng)的接口以操作硬件。為方便調(diào)試,筆者使用前者。

    2.1 初始化和退出函數(shù)

    在加載驅(qū)動(dòng)程序時(shí),系統(tǒng)將首先調(diào)用驅(qū)動(dòng)的入口函數(shù)即初始化函數(shù),完成存儲(chǔ)空間分配、SPI0配置和字符設(shè)備注冊(cè)工作。初始化流程如圖3所示。

    圖3 初始化流程

    部分程序如下:

    static int __init ads1256_spi0_init(void)

    {

    int ret;

    spi_gpacon=ioremap(0x56000000, 4); //以下采用ioremap函數(shù)實(shí)現(xiàn)重定向功能,使定義的指針指向相應(yīng)的寄存器

    s3c2410_gpio_cfgpin(S3C2410_GPE(11), S3C2410_GPE11_SPIMISO0); //設(shè)置SPI0端口

    *spi_sppin0 = (0<<2) | (1<<1) | (0<<0) ; //配置SPI0的相關(guān)寄存器

    *spi_clkcon |= (1<<18); //使能SPI時(shí)鐘

    ret = register_chrdev(ADS1256_MAJOR, DEVICE_NAME, &ads1256_spi0_fops); //調(diào)用函數(shù)register_chrdev進(jìn)行設(shè)備注冊(cè)

    }

    在Linux下,無(wú)論是用戶程序還是內(nèi)核程序,都不能直接訪問(wèn)物理內(nèi)存,必須先通過(guò)函數(shù)ioremap()把物理地址映射成相應(yīng)的虛擬地址,再通過(guò)虛擬地址來(lái)對(duì)內(nèi)存進(jìn)行訪問(wèn)[2]。所以在ads1256_spi0_init中,首先完成SPI0配置寄存器的地址映射。其次完成SPI0端口和工作模式寄存器的設(shè)置。最后調(diào)用函數(shù)register_chrdev完成字符設(shè)備的注冊(cè)。退出函數(shù)static void _exit ads1256_spi0_exit(void)主要負(fù)責(zé)完成與初始化函數(shù)相反的操作,包括使用函數(shù)unregister_chrdev注銷設(shè)備和使用函數(shù)iounmap取消地址映射。

    2.2 文件操作

    結(jié)構(gòu)體file_operations中的成員全部是函數(shù)指針。這些函數(shù)指針?biāo)赶虻暮瘮?shù)就是驅(qū)動(dòng)程序與Linux內(nèi)核的接口,是用戶空間對(duì)Linux進(jìn)行系統(tǒng)調(diào)用最終的落實(shí)者[3]。編寫字符設(shè)備驅(qū)動(dòng)程序的主要任務(wù)就是實(shí)現(xiàn)file_operations結(jié)構(gòu)體中函數(shù)指針?biāo)赶虻暮瘮?shù)[4]。Linux內(nèi)核提供了功能豐富的接口函數(shù),如open、write及ioctl等,設(shè)計(jì)驅(qū)動(dòng)程序時(shí)只要實(shí)現(xiàn)實(shí)際需要的接口函數(shù),其他未實(shí)現(xiàn)的部分不對(duì)驅(qū)動(dòng)程序造成影響。

    本驅(qū)動(dòng)程序定義的file_operations為:

    static struct file_operations ads1256_spi0_fops = {

    .owner=THIS_MODULE,

    .open=ads1256_spi0_open,

    .write=ads1256_spi0_write,

    .read=ads1256_spi0_read,

    .release=ads1256_spi0_close,

    }

    函數(shù)ads1256_spi0_open和ads1256_spi0_close分別用于打開和關(guān)閉ADS1256設(shè)備,將模塊的使用計(jì)數(shù)加1和減1;ads1256_spi0_write用于向ADS1256寄存器組發(fā)送設(shè)置參數(shù)以控制設(shè)備的數(shù)據(jù)轉(zhuǎn)換模式,如PGA、數(shù)據(jù)輸出速率及是否自校準(zhǔn)等;ads1256_spi0_read用于讀取指定采集通道的轉(zhuǎn)換數(shù)據(jù)。

    2.3 寫函數(shù)

    讀寫設(shè)備時(shí)需要在內(nèi)核地址空間和用戶地址空間之間傳輸數(shù)據(jù)。在Linux中,跨空間復(fù)制是通過(guò)定義在里的特殊函數(shù)實(shí)現(xiàn)的[7]。

    在本驅(qū)動(dòng)程序中,用戶程序通過(guò)函數(shù)static ssize_t ads1256_spi0_write(struct file *filp, const char *buf, size_t count, loff_t *f_ops)實(shí)現(xiàn)對(duì)ADS1256的配置。在該函數(shù)中通過(guò)copy_from_user(dataTx, buf, count)把用戶空間的設(shè)置參數(shù)buf復(fù)制到內(nèi)核空間的dataTx中,然后在SPI0狀態(tài)寄存器的數(shù)據(jù)發(fā)送/接收準(zhǔn)備位為1時(shí),將dataTx寫入SPI0的發(fā)送數(shù)據(jù)寄存器中以實(shí)現(xiàn)對(duì)ADS1256工作模式的設(shè)置。

    函數(shù)的關(guān)鍵代碼如下:

    if(copy_from_user(dataTx, buf, count))

    {

    return-EFAULT;

    }

    *spi_gpgdat &= ~(1<<2); //使能ADS1256

    udelay(500); //等待ADS1256穩(wěn)定

    for(x = 0; x

    {

    while(!(*spi_spsta0&0x01)); //SPI0是否準(zhǔn)備好發(fā)送/接收數(shù)據(jù)?

    *spi_sptdat0 = dataTx[x];

    udelay(8);

    }

    *spi_gpgdat |= (1<<2); //停用 ADS1256

    2.4 讀函數(shù)

    本驅(qū)動(dòng)中的函數(shù)static ssize_t ads1256_spi0_read(struct file *filp,char *buf,size_t count,loff_t *f_ops)實(shí)現(xiàn)接收ADS1256的轉(zhuǎn)換結(jié)果。因?yàn)镾3C2440A的SPI接收寄存器為8位移位寄存器,要接收24位的ADS1256轉(zhuǎn)換數(shù)據(jù),需要分3次順序讀取SPI0的接收數(shù)據(jù)寄存器。函數(shù)copy_to_user(buf, dataRx, count)負(fù)責(zé)把內(nèi)核空間的數(shù)據(jù)dataRx復(fù)制到用戶空間的buf中。

    函數(shù)的關(guān)鍵代碼如下:

    *spi_gpgdat &= ~(1<<2); //使能 ADS1256

    udelay(500); //等待ADS1256穩(wěn)定

    for(x = 0; x

    {

    while(!(*spi_spsta0&0x01)); // SPI0是否準(zhǔn)備好發(fā)送/接收數(shù)據(jù)?

    dataRx[x] = *spi_sprdat0;

    *spi_sptdat0 = 0xFF;

    }

    *spi_gpgdat |= (1<<2); //停用ADS1256

    copy_to_user(buf, dataRx, count);

    2.5 驅(qū)動(dòng)模塊編譯和加載

    完成驅(qū)動(dòng)源程序后需要編寫Makefile文件用于編譯驅(qū)動(dòng)模塊,Makefile的作用是制定Linux內(nèi)核編譯設(shè)備驅(qū)動(dòng)程序的規(guī)則,如指定Linux的內(nèi)核版本、驅(qū)動(dòng)源文件所在的目錄及目標(biāo)驅(qū)動(dòng)的名稱等。本項(xiàng)目使用的Makefile文件格式如下:

    KERN_DIR = /opt/FriendlyARM/mini2440/linux-2.6.32.2 //編譯驅(qū)動(dòng)所需的內(nèi)核版本

    all:

    make -C S|(KERN_DIR) M=′pwd′ modules //使用KERN_DIR中的Makefile編譯當(dāng)前目錄下的驅(qū)動(dòng)源文件

    obj-m+= ads1256_drv.o //編譯生成目標(biāo)驅(qū)動(dòng)模塊ads1256_drv

    編譯完成驅(qū)動(dòng)程序后,在控制臺(tái)輸入insmod ads1256_drv.ko加載ADS1256驅(qū)動(dòng)模塊。Linux將實(shí)際的外圍硬件在內(nèi)核中映射為相應(yīng)的設(shè)備節(jié)點(diǎn),使用戶程序控制實(shí)際硬件如同操作普通文件,輸入命令mknod /dev/ads1256_spi0 c 153 0創(chuàng)建ADS1256的字符設(shè)備節(jié)點(diǎn),這里c代表此驅(qū)動(dòng)程序是字符型設(shè)備驅(qū)動(dòng),153是主設(shè)備號(hào),0是次設(shè)備號(hào)。應(yīng)用程序通過(guò)open("/dev/ads1256_spi0",O_RDWR | O_NOCTTY)打開設(shè)備,調(diào)用驅(qū)動(dòng)程序提供的接口函數(shù)即可對(duì)ADS1256進(jìn)行相應(yīng)的讀寫操作。

    圖4為ADS1256驅(qū)動(dòng)模塊加載后控制臺(tái)的輸出結(jié)果。

    圖4 ADS1256驅(qū)動(dòng)模塊加載測(cè)試結(jié)果

    由圖4可知,在加載模塊后,Linux依次正確地完成了寄存器映射、SPI0配置和驅(qū)動(dòng)模塊注冊(cè),輸入命令lsmod可以查詢到該驅(qū)動(dòng)。

    3 驅(qū)動(dòng)在氣密性檢測(cè)系統(tǒng)中的應(yīng)用

    將驅(qū)動(dòng)應(yīng)用在氣密性檢測(cè)系統(tǒng)中,ADS1256接壓力傳感器和差壓傳感器進(jìn)行工程測(cè)試。以壓力傳感器信號(hào)采集為例說(shuō)明驅(qū)動(dòng)測(cè)試情況,壓力傳感器采用Huba 511型陶瓷壓力傳感器,24V直流供電,采集的氣壓量程為0~1MPa。壓力傳感器的4~20mA電流信號(hào),通過(guò)250Ω精密電阻轉(zhuǎn)換成對(duì)應(yīng)的1~5V電壓信號(hào)。ADS1256輸入電壓量程為0~5V,24位分辨率對(duì)應(yīng)的輸出值為0~16 777 215。在控制臺(tái)輸入命令./ads1256_test,開始運(yùn)行工程測(cè)試程序。筆者設(shè)置采樣周期為1s,采樣10次,采樣結(jié)果如圖5所示,計(jì)算得到采樣平均值為11 817 308,對(duì)應(yīng)的測(cè)試氣壓為630.458kPa,與數(shù)字壓力表測(cè)量的630.500kPa相符,ADS1256驅(qū)動(dòng)成功。

    圖5 采樣通道的AD轉(zhuǎn)換結(jié)果

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

    設(shè)計(jì)了微處理器S3C2440A和模數(shù)轉(zhuǎn)換器ADS1256之間的硬件接口電路,詳細(xì)介紹了在嵌入式操作系統(tǒng)Linux 2.6.32.2下基于SPI總線的ADS1256驅(qū)動(dòng)程序的實(shí)現(xiàn)過(guò)程。將ADS1256應(yīng)用在氣密性檢測(cè)系統(tǒng)中,測(cè)試得到正確可靠的數(shù)據(jù)轉(zhuǎn)換結(jié)果,表明硬件設(shè)計(jì)正確,驅(qū)動(dòng)工作正常,為高精度多通道數(shù)據(jù)采集的嵌入式系統(tǒng)提供了一種解決方案。

    [1] 宋寶華.Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解[M].北京:人民郵電出版社,2011:118~138.

    [2] 尉軍軍.基于嵌入式系統(tǒng)的電流互感器準(zhǔn)確度測(cè)試儀的設(shè)計(jì)與實(shí)現(xiàn)[D].鎮(zhèn)江:江蘇大學(xué),2010:56~60.

    [3] 韋東山.嵌入式Linux應(yīng)用開發(fā)完全手冊(cè)[M].北京:人民郵電出版社,2008:384~389.

    [4] 朱園.嵌入式Linux設(shè)備驅(qū)動(dòng)的研究與開發(fā)[D].北京:北京郵電大學(xué),2008:29~32.

    猜你喜歡
    驅(qū)動(dòng)程序字符內(nèi)核
    萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
    尋找更強(qiáng)的字符映射管理器
    強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    字符代表幾
    一種USB接口字符液晶控制器設(shè)計(jì)
    電子制作(2019年19期)2019-11-23 08:41:50
    基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
    Linux內(nèi)核mmap保護(hù)機(jī)制研究
    消失的殖民村莊和神秘字符
    驅(qū)動(dòng)程序更新與推薦
    驅(qū)動(dòng)程序更新與推薦
    一边亲一边摸免费视频| 水蜜桃什么品种好| 午夜亚洲福利在线播放| 日韩不卡一区二区三区视频在线| 国产熟女欧美一区二区| 国产精品麻豆人妻色哟哟久久 | 亚洲成人av在线免费| 国产成人一区二区在线| 免费黄网站久久成人精品| 国产精品一区www在线观看| 一区二区三区四区激情视频| 噜噜噜噜噜久久久久久91| 国产成人免费观看mmmm| 91午夜精品亚洲一区二区三区| 三级男女做爰猛烈吃奶摸视频| 亚洲最大成人中文| 国产伦理片在线播放av一区| 国产欧美日韩精品一区二区| 真实男女啪啪啪动态图| 亚洲av电影不卡..在线观看| 久久99热6这里只有精品| 国产精品久久久久久精品电影小说 | 亚洲欧美日韩无卡精品| 国产精品久久久久久久电影| kizo精华| 日韩一区二区视频免费看| 中文字幕人妻熟人妻熟丝袜美| 中文字幕免费在线视频6| 日韩一区二区三区影片| 国产中年淑女户外野战色| 亚洲最大成人av| 成人国产麻豆网| 亚洲av日韩在线播放| 国产高潮美女av| 亚洲激情五月婷婷啪啪| 亚洲精品aⅴ在线观看| 大话2 男鬼变身卡| 午夜福利网站1000一区二区三区| 三级国产精品欧美在线观看| 三级国产精品欧美在线观看| 国产精品综合久久久久久久免费| 亚洲av国产av综合av卡| 国产午夜福利久久久久久| 午夜福利在线观看免费完整高清在| 大陆偷拍与自拍| 三级经典国产精品| 一个人看视频在线观看www免费| 天天一区二区日本电影三级| 久久久久国产网址| 日韩,欧美,国产一区二区三区| 一个人看视频在线观看www免费| 波野结衣二区三区在线| 夜夜看夜夜爽夜夜摸| 一级毛片黄色毛片免费观看视频| 国产熟女欧美一区二区| 天堂中文最新版在线下载 | 亚洲av在线观看美女高潮| 国产在视频线在精品| 久久精品国产鲁丝片午夜精品| 免费黄网站久久成人精品| 精品久久久噜噜| 啦啦啦韩国在线观看视频| 秋霞伦理黄片| 免费大片黄手机在线观看| 成人亚洲精品一区在线观看 | 亚洲精品色激情综合| 爱豆传媒免费全集在线观看| 国产av不卡久久| 国产精品精品国产色婷婷| 男女边吃奶边做爰视频| 听说在线观看完整版免费高清| 乱人视频在线观看| 亚洲经典国产精华液单| 亚洲精品日本国产第一区| 老司机影院成人| 在线免费十八禁| 午夜激情福利司机影院| 日本黄色片子视频| 中文字幕亚洲精品专区| 日韩欧美国产在线观看| 日本一本二区三区精品| 联通29元200g的流量卡| 亚洲精品一二三| 国产白丝娇喘喷水9色精品| 成人高潮视频无遮挡免费网站| 黄色配什么色好看| 欧美最新免费一区二区三区| 国产老妇女一区| 成人毛片60女人毛片免费| av在线蜜桃| 日韩欧美精品v在线| 又大又黄又爽视频免费| 久久人人爽人人爽人人片va| 久久人人爽人人爽人人片va| 超碰av人人做人人爽久久| 两个人视频免费观看高清| 99久久精品国产国产毛片| 一本一本综合久久| 日韩亚洲欧美综合| 午夜激情福利司机影院| 亚洲av电影不卡..在线观看| 日韩视频在线欧美| 免费无遮挡裸体视频| 天天躁夜夜躁狠狠久久av| 草草在线视频免费看| 激情五月婷婷亚洲| 一夜夜www| 欧美成人一区二区免费高清观看| 久久久色成人| 女的被弄到高潮叫床怎么办| 天堂av国产一区二区熟女人妻| 欧美激情国产日韩精品一区| 欧美高清成人免费视频www| 欧美日本视频| 亚洲成色77777| 国产精品综合久久久久久久免费| 只有这里有精品99| 亚洲欧美成人综合另类久久久| 国产精品av视频在线免费观看| 精品久久久久久久久av| 欧美激情在线99| 国产精品嫩草影院av在线观看| 国产单亲对白刺激| 国产高清三级在线| 天堂网av新在线| 午夜免费男女啪啪视频观看| 国产探花极品一区二区| 久久久久久久久久人人人人人人| 麻豆久久精品国产亚洲av| 日本熟妇午夜| 亚洲色图av天堂| 国产激情偷乱视频一区二区| 国产精品.久久久| 国内少妇人妻偷人精品xxx网站| 日本与韩国留学比较| 亚洲av.av天堂| 色综合站精品国产| 国产黄色小视频在线观看| 大片免费播放器 马上看| 熟女人妻精品中文字幕| 亚洲成人一二三区av| 国产亚洲av片在线观看秒播厂 | 大香蕉久久网| 我的老师免费观看完整版| 日本与韩国留学比较| 我的女老师完整版在线观看| 色哟哟·www| 91在线精品国自产拍蜜月| 久久久久九九精品影院| 日韩一区二区三区影片| 中文字幕免费在线视频6| 精品久久久噜噜| 不卡视频在线观看欧美| 成人毛片a级毛片在线播放| 欧美日韩在线观看h| 精华霜和精华液先用哪个| 免费电影在线观看免费观看| 久久久久久国产a免费观看| 卡戴珊不雅视频在线播放| 人妻少妇偷人精品九色| 天堂俺去俺来也www色官网 | 中国美白少妇内射xxxbb| 久久久久国产网址| 欧美日韩一区二区视频在线观看视频在线 | av在线播放精品| 日韩av在线大香蕉| 亚洲精品日本国产第一区| 欧美成人精品欧美一级黄| 亚洲国产精品国产精品| 亚洲人成网站在线观看播放| 欧美不卡视频在线免费观看| 男的添女的下面高潮视频| 26uuu在线亚洲综合色| 精品久久久久久电影网| 亚洲av二区三区四区| 国产伦一二天堂av在线观看| 国产av码专区亚洲av| 国产 一区精品| 我的女老师完整版在线观看| 国产精品爽爽va在线观看网站| 一夜夜www| 国产美女午夜福利| 建设人人有责人人尽责人人享有的 | 国产精品蜜桃在线观看| 亚洲丝袜综合中文字幕| 国产毛片a区久久久久| 精品人妻偷拍中文字幕| 国产一区二区在线观看日韩| 麻豆国产97在线/欧美| 少妇猛男粗大的猛烈进出视频 | 丰满少妇做爰视频| 最近的中文字幕免费完整| 午夜久久久久精精品| 国产伦一二天堂av在线观看| 亚洲国产高清在线一区二区三| 亚洲成人中文字幕在线播放| 黄片无遮挡物在线观看| 99re6热这里在线精品视频| 少妇的逼好多水| 亚洲欧美日韩卡通动漫| 国产单亲对白刺激| 丝袜美腿在线中文| 最近中文字幕高清免费大全6| 午夜激情欧美在线| 最近最新中文字幕大全电影3| 亚洲丝袜综合中文字幕| 看免费成人av毛片| 午夜福利在线在线| 美女国产视频在线观看| 青春草亚洲视频在线观看| 99久久精品国产国产毛片| 中文字幕亚洲精品专区| 中文字幕久久专区| 久久鲁丝午夜福利片| 亚洲精品日韩在线中文字幕| 亚州av有码| 欧美性感艳星| 在线免费十八禁| 中文字幕人妻熟人妻熟丝袜美| 免费大片黄手机在线观看| 亚洲精品久久久久久婷婷小说| 在线免费观看的www视频| 一区二区三区四区激情视频| 免费在线观看成人毛片| 日本一本二区三区精品| 少妇高潮的动态图| 精品一区二区三区人妻视频| 99久久精品热视频| 成人漫画全彩无遮挡| 男人和女人高潮做爰伦理| 久久久久久久久久久丰满| 色尼玛亚洲综合影院| 国产高清三级在线| 午夜视频国产福利| 日日摸夜夜添夜夜添av毛片| 亚洲电影在线观看av| 精华霜和精华液先用哪个| xxx大片免费视频| 18禁在线无遮挡免费观看视频| 蜜桃亚洲精品一区二区三区| 免费少妇av软件| 插逼视频在线观看| 国内揄拍国产精品人妻在线| 男女边吃奶边做爰视频| 日本欧美国产在线视频| 99热这里只有精品一区| 欧美+日韩+精品| 91午夜精品亚洲一区二区三区| 七月丁香在线播放| 久久97久久精品| 建设人人有责人人尽责人人享有的 | 国产高清三级在线| 波野结衣二区三区在线| 精华霜和精华液先用哪个| 综合色av麻豆| 99久国产av精品国产电影| 丝瓜视频免费看黄片| 亚洲,欧美,日韩| freevideosex欧美| 亚洲av成人av| 美女内射精品一级片tv| 国产一级毛片在线| 亚洲精品一二三| 国产爱豆传媒在线观看| 亚洲av成人av| 久久久久九九精品影院| 蜜桃亚洲精品一区二区三区| 国产伦理片在线播放av一区| 天天躁夜夜躁狠狠久久av| 黑人高潮一二区| 欧美日韩国产mv在线观看视频 | 少妇人妻一区二区三区视频| 成人漫画全彩无遮挡| 五月天丁香电影| 观看免费一级毛片| 波野结衣二区三区在线| 日韩制服骚丝袜av| 国产在视频线精品| 丝袜喷水一区| 午夜日本视频在线| 淫秽高清视频在线观看| 高清欧美精品videossex| 熟女人妻精品中文字幕| 国产探花在线观看一区二区| 日日啪夜夜撸| 我要看日韩黄色一级片| 久久久久网色| 日本一本二区三区精品| 老司机影院毛片| 亚洲熟女精品中文字幕| 99九九线精品视频在线观看视频| 国产人妻一区二区三区在| 美女被艹到高潮喷水动态| 日本免费在线观看一区| 亚洲国产精品sss在线观看| 2018国产大陆天天弄谢| 亚洲av免费高清在线观看| 精品人妻一区二区三区麻豆| 不卡视频在线观看欧美| av免费观看日本| 欧美激情在线99| 国产91av在线免费观看| 白带黄色成豆腐渣| 国产精品无大码| 日日干狠狠操夜夜爽| 日韩一区二区三区影片| 免费av观看视频| 2022亚洲国产成人精品| 亚洲欧洲日产国产| 在线免费观看不下载黄p国产| 国产午夜精品一二区理论片| 男人舔奶头视频| 少妇的逼好多水| 亚洲精品第二区| 91狼人影院| 欧美日韩在线观看h| 久久久精品欧美日韩精品| 亚洲人与动物交配视频| kizo精华| freevideosex欧美| 99久久中文字幕三级久久日本| 亚洲欧美清纯卡通| 又黄又爽又刺激的免费视频.| 99视频精品全部免费 在线| av又黄又爽大尺度在线免费看| 亚洲综合精品二区| 老师上课跳d突然被开到最大视频| 免费大片黄手机在线观看| 中文欧美无线码| 少妇裸体淫交视频免费看高清| 麻豆av噜噜一区二区三区| 色5月婷婷丁香| 国产真实伦视频高清在线观看| 少妇裸体淫交视频免费看高清| 国产91av在线免费观看| 人体艺术视频欧美日本| 色综合亚洲欧美另类图片| 久久久色成人| 午夜视频国产福利| 亚洲熟女精品中文字幕| 亚洲高清免费不卡视频| 夜夜爽夜夜爽视频| 日韩av不卡免费在线播放| 精品久久久久久久久av| 久久久久性生活片| 九草在线视频观看| 久久久久久久久大av| 欧美日韩国产mv在线观看视频 | 国产真实伦视频高清在线观看| 久久6这里有精品| 欧美 日韩 精品 国产| 欧美激情久久久久久爽电影| 26uuu在线亚洲综合色| 成人午夜高清在线视频| 中文字幕人妻熟人妻熟丝袜美| 亚洲国产高清在线一区二区三| 国产欧美另类精品又又久久亚洲欧美| 亚洲成人久久爱视频| 国产伦一二天堂av在线观看| 亚洲精品成人久久久久久| 亚洲国产最新在线播放| 成年女人在线观看亚洲视频 | 亚洲电影在线观看av| 国产一区二区亚洲精品在线观看| 国产精品美女特级片免费视频播放器| 欧美潮喷喷水| 中文欧美无线码| 好男人视频免费观看在线| 免费观看精品视频网站| 男女边摸边吃奶| 日本免费a在线| 国产乱人偷精品视频| 男的添女的下面高潮视频| 丰满乱子伦码专区| 成人鲁丝片一二三区免费| 三级经典国产精品| 日韩三级伦理在线观看| 97精品久久久久久久久久精品| 亚洲欧美日韩东京热| 精品国产三级普通话版| 国产在视频线精品| a级一级毛片免费在线观看| av国产免费在线观看| 亚洲国产最新在线播放| 精品久久久噜噜| 久久久亚洲精品成人影院| 天美传媒精品一区二区| 久久精品国产鲁丝片午夜精品| 国产高潮美女av| 一级二级三级毛片免费看| 精品亚洲乱码少妇综合久久| 国产成人精品久久久久久| 综合色av麻豆| 久久精品国产亚洲av天美| 亚洲av日韩在线播放| 超碰av人人做人人爽久久| 极品少妇高潮喷水抽搐| 男女啪啪激烈高潮av片| 久久6这里有精品| 国产免费又黄又爽又色| 亚洲精品视频女| 国产黄片视频在线免费观看| 亚洲天堂国产精品一区在线| 男女边摸边吃奶| 久久99热这里只频精品6学生| 国产综合懂色| 欧美精品一区二区大全| 国产综合精华液| 老师上课跳d突然被开到最大视频| 久久久久久九九精品二区国产| 天美传媒精品一区二区| 日本一本二区三区精品| 亚洲精品,欧美精品| 国产免费视频播放在线视频 | 日本wwww免费看| 日韩 亚洲 欧美在线| 国产成人精品福利久久| 国产男人的电影天堂91| 欧美潮喷喷水| 只有这里有精品99| 欧美日韩国产mv在线观看视频 | 搡老妇女老女人老熟妇| 国产免费又黄又爽又色| 欧美日韩精品成人综合77777| 亚洲va在线va天堂va国产| 国产伦一二天堂av在线观看| 国产男人的电影天堂91| 欧美3d第一页| 99视频精品全部免费 在线| 99九九线精品视频在线观看视频| 国产成人a区在线观看| 亚洲成人精品中文字幕电影| videossex国产| 人人妻人人看人人澡| 免费播放大片免费观看视频在线观看| 精品人妻熟女av久视频| 人体艺术视频欧美日本| 天美传媒精品一区二区| 久久精品熟女亚洲av麻豆精品 | 欧美zozozo另类| 午夜免费观看性视频| www.色视频.com| 免费在线观看成人毛片| 欧美最新免费一区二区三区| 国产精品爽爽va在线观看网站| 日韩欧美国产在线观看| 亚洲成人精品中文字幕电影| 老司机影院成人| 免费大片黄手机在线观看| 亚洲欧洲日产国产| 内地一区二区视频在线| 亚洲av中文av极速乱| 麻豆成人av视频| 国产精品无大码| 国产麻豆成人av免费视频| 日本熟妇午夜| 国产av不卡久久| 久久精品国产亚洲av天美| 国产精品无大码| 国产成人aa在线观看| 美女脱内裤让男人舔精品视频| 日本爱情动作片www.在线观看| 国产成人a区在线观看| 欧美日韩精品成人综合77777| 亚洲成人久久爱视频| 免费观看av网站的网址| 午夜福利视频精品| 国产伦在线观看视频一区| 亚洲欧洲日产国产| 日韩欧美国产在线观看| 欧美日韩精品成人综合77777| 亚洲精品成人av观看孕妇| 欧美日韩一区二区视频在线观看视频在线 | videos熟女内射| 精品久久久久久久久亚洲| 国产成人aa在线观看| 高清午夜精品一区二区三区| 色哟哟·www| 观看免费一级毛片| 欧美bdsm另类| 天堂俺去俺来也www色官网 | 国产成人精品婷婷| 欧美成人午夜免费资源| 亚洲乱码一区二区免费版| 简卡轻食公司| 精品国产一区二区三区久久久樱花 | 成人无遮挡网站| 不卡视频在线观看欧美| 精品一区在线观看国产| 啦啦啦韩国在线观看视频| 色综合亚洲欧美另类图片| 国产一级毛片在线| 国产黄频视频在线观看| 国产黄色视频一区二区在线观看| 你懂的网址亚洲精品在线观看| 一区二区三区四区激情视频| 国产伦理片在线播放av一区| 又粗又硬又长又爽又黄的视频| av黄色大香蕉| 亚洲欧美成人综合另类久久久| 99热这里只有是精品在线观看| 大话2 男鬼变身卡| 丰满少妇做爰视频| 一个人看的www免费观看视频| 一级二级三级毛片免费看| 啦啦啦韩国在线观看视频| 97超视频在线观看视频| 99热这里只有精品一区| 亚洲自拍偷在线| 国产精品一二三区在线看| 日韩av不卡免费在线播放| 精品欧美国产一区二区三| 久久久久久久久久人人人人人人| 成人午夜高清在线视频| 国产伦一二天堂av在线观看| 青春草亚洲视频在线观看| 少妇的逼水好多| 日韩强制内射视频| 波多野结衣巨乳人妻| 欧美另类一区| 91精品一卡2卡3卡4卡| 夫妻午夜视频| 大又大粗又爽又黄少妇毛片口| 亚洲av成人av| 免费黄频网站在线观看国产| 亚洲精品乱久久久久久| 国产成人精品一,二区| av又黄又爽大尺度在线免费看| 欧美97在线视频| 麻豆国产97在线/欧美| 国产淫语在线视频| 亚洲av免费在线观看| 高清在线视频一区二区三区| 日韩伦理黄色片| 亚洲久久久久久中文字幕| 亚洲国产精品sss在线观看| 国产69精品久久久久777片| 亚洲精品亚洲一区二区| 国产亚洲精品久久久com| 人体艺术视频欧美日本| 丰满少妇做爰视频| www.av在线官网国产| 成人午夜高清在线视频| 久久鲁丝午夜福利片| 国产亚洲最大av| 国产又色又爽无遮挡免| 激情五月婷婷亚洲| 18+在线观看网站| 久久精品综合一区二区三区| 少妇的逼水好多| 国产一区亚洲一区在线观看| 最近最新中文字幕大全电影3| 亚洲伊人久久精品综合| 精品久久久久久久久久久久久| 日韩不卡一区二区三区视频在线| 亚洲图色成人| 国产精品久久久久久精品电影| 亚洲国产精品国产精品| 26uuu在线亚洲综合色| 久热久热在线精品观看| 美女主播在线视频| 18禁动态无遮挡网站| 亚洲欧洲国产日韩| 亚洲图色成人| 日韩欧美三级三区| 国产精品麻豆人妻色哟哟久久 | 乱系列少妇在线播放| 天天躁夜夜躁狠狠久久av| 国产中年淑女户外野战色| 久久久亚洲精品成人影院| 久99久视频精品免费| 国产成人精品久久久久久| 人妻少妇偷人精品九色| 国产极品天堂在线| 99热这里只有是精品在线观看| 亚洲精品,欧美精品| 国产麻豆成人av免费视频| 亚洲精品视频女| 欧美丝袜亚洲另类| 男的添女的下面高潮视频| 狂野欧美白嫩少妇大欣赏| 亚洲精品,欧美精品| 女的被弄到高潮叫床怎么办| 国内揄拍国产精品人妻在线| 久久精品国产亚洲av天美| 免费电影在线观看免费观看| 日韩欧美国产在线观看| 亚洲熟妇中文字幕五十中出| 国产精品麻豆人妻色哟哟久久 | 99热这里只有是精品50| 九色成人免费人妻av| 秋霞伦理黄片| 99九九线精品视频在线观看视频| 亚洲国产日韩欧美精品在线观看| 欧美日韩视频高清一区二区三区二| 亚洲,欧美,日韩| 毛片一级片免费看久久久久| 欧美最新免费一区二区三区| 99久久精品国产国产毛片| 麻豆久久精品国产亚洲av| 日韩 亚洲 欧美在线| freevideosex欧美| 啦啦啦啦在线视频资源| 最新中文字幕久久久久| 亚洲在线自拍视频| 国产av不卡久久| 亚洲无线观看免费| 淫秽高清视频在线观看| 熟妇人妻久久中文字幕3abv| 男女视频在线观看网站免费| 九九在线视频观看精品| 水蜜桃什么品种好| 街头女战士在线观看网站| 亚洲精品456在线播放app| 久久这里只有精品中国|