《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > VxWorks下AD/DA驅動系統設計及測試

VxWorks下AD/DA驅動系統設計及測試

2008-07-30
作者:徐 偉1,2, 曲宏松1,2,
關鍵詞: A/D AD/DA D/A I/O 應用程序

  摘 要: 在分析了VxWorks實時操作系統設備驅動機制后,通過采用VxWorks I/O" title="I/O">I/O系統掛接應用層與底層的方式實現了VxWorks下對AD/DA" title="AD/DA">AD/DA設備的驅動。在重點介紹驅動中核心代碼的同時,簡要說明了應用層軟件的設計方法,并給出了詳細的測試手段。
  關鍵詞: VxWorks; 實時操作系統; 設備驅動; AD/DA

?

  相對于其他嵌入式操作系統,VxWorks以其高可靠性、微內核、可裁減性以及高效的硬實時任務調度、中斷管理等優點,被廣泛地應用在通信、軍事、航空、航天等高精尖技術和實時性要求極高的領域[1]。工程中實際應用的嵌入式系統通常包括以下幾個部分:串口、并口、CAN總線和AD/DA等。對于前三種嵌入式硬件,VxWorks內核本身已提供了完備的驅動支持并給出了相應驅動的參考例程,但目前還未包括對A/D" title="A/D">A/D及D/A" title="D/A">D/A設備的支持;此外,由于相關技術資料的保密性,相應驅動設計的參考文獻也較少。因此,本文結合實際系統需要(利用12位D/A輸出可調模擬量控制電機轉速,利用12位A/D對壓電陀螺所敏感的電機轉速進行數據采集),對AD/DA設備的驅動進行了相關研究,研究結果具有實際工程應用價值。
  本文在簡要分析了VxWorks I/O系統及設備驅動基礎之上,將A/D與D/A兩者整合為一個完整的字符設備掛接到VxWorks的I/O系統中,成功實現了該設備的硬件驅動并附上對應的核心驅動代碼,最后在驅動程序測試過程中簡要說明了應用層軟件的設計方法,為工程應用提供了完善的解決辦法。
1 VxWorks I/O系統與設備驅動
  了解和掌握VxWorks的I/O系統及設備的驅動結構,是成功設計AD/DA設備驅動的前提和基礎。具體來說:VxWorks是一個層次化分明的操作系統,每層各負其責,層與層之間又緊密相連。通常所說的驅動程序屬于底層的范疇,而用戶的應用程序" title="應用程序">應用程序則屬于上層,位于這兩層之間的是中間層,無需用戶開發,由VxWorks進行維護和管理。這樣,操作系統把各層有機地連接在一起,使代碼緊湊而高效。VxWorks的I/O系統正是這樣的中間層,以本文所要研究的AD/DA驅動系統設計為例,圖1詳細介紹了三者的關系。

?


  圖1中的最底層就是所要編寫的設備驅動程序,包括對具體硬件的初始化和各種操作,以及與上層I/O系統的接口;中間層為I/O系統層,VxWorks的I/O系統不但向上提供了7個基本的I/O接口,以供應用程序調用,而且還向下提供與各種設備驅動程序的接口;最頂層為應用層,用戶根據實際應用需要編寫應用程序,并通過應用程序向下調用I/O系統。與UNIX類似,VxWorks所有的I/O設備都被當作文件來存取。關于VxWorks I/O系統驅動機制的更多內容請參考文獻[2][3]。
  針對系統需要,選擇7個基本I/O接口函數中的open()、read()、write()以及ioctl()進行驅動系統設計,各層函數與相應實現的功能對應關系如表1所示。

?


  此外,D/A輸出通道在應用程序中選擇,下面給出AD/DA驅動系統的具體設計過程。
2 AD/DA驅動系統設計
2.1 驅動系統開發環境
  與其他嵌入式系統開發類似,VxWorks也采用主機-目標機模式[4],如圖2所示。

?


  硬件平臺中主機使用CPU為迅馳的PC機,運行VxWorks開發環境Tornado2.2;目標機依照系統應用要求選用基于PC104 總線的嵌入式CPU卡MSMP586SEV,該CPU是VxWorks所支持的Intel x86系列CPU。VxWorks自帶的板級支持包(BSP)支持該CPU,使得在驅動開發過程中無須過多考慮CPU部分的代碼設置。外擴AD/DA采用的同樣是PC104總線的數據轉換卡ADT-650。開發調試過程中,主機通過網絡方式下載VxWorks映像至目標機中,目標機設定為CF卡啟動。
2.2 PC104-AD/DA卡硬件結構[5]
  PC104-AD/DA卡主要由A/D轉換控制器(AD1674)和D/A轉換控制器(ADC7724)兩個核心器件組成,可提供的硬件資源為12位分辨率的8通道A/D轉換和同分辨率的4通道D/A轉換;CPU卡通過I/O映射方式對其進行訪問,可通過硬件開關選通該卡的I/O映射基地址,為了避免與其他器件地址沖突,在此選擇其基地址為:BA=0x240(可根據實際情況選擇),其余各寄存器采用偏移地址訪問的方式。為便于后續說明,簡要將卡上其他寄存器地址及功能列于表2。

?


  在傳統非嵌入式實時操作系統(比如DOS)下應用該卡,實際上是在應用程序中對板卡進行初始化和設置相應功能寄存器以完成硬件功能。但由前面對VxWorks的I/O系統和設備驅動結構分析可知,該部分工作在VxWorks操作系統下由底層硬件驅動完成,應用程序中通過調用相應I/O接口函數來實現硬件功能,由此實現分層結構以達到隔離硬件的目的。因此,AD/DA驅動的開發就是依照I/O系統傳遞過來的應用層各調用接口函數完成對相應寄存器的不同設置。
2.3? AD/DA驅動程序實現
  AD/DA驅動的實現方式主要是完成以下6個函數的編寫:
  設備驅動程序安裝函數adcDrv();設備創建函數adcDevCreate();設備打開函數adcOpen();設備讀函數(A/D轉換) adcRead();設備寫函數(D/A轉換)adcWrite();I/O控制函數adIoctl()。
  其中前三個函數的設計與具體硬件關聯較少,與VxWorks下其他字符型設備驅動開發基本類似,不做過多介紹,僅需按照標準代碼形式編寫即可,具體詳細代碼可見參考文獻[6]。下面詳細介紹A/D轉換驅動、D/A轉換驅動以及設備控制驅動等部分的程序設計,給出核心代碼。
2.3.1 A/D轉換驅動
  A/D轉換驅動實際是完成adcRead()函數的編寫,在該函數編寫之前,首先應明確A/D轉換驅動實現過程:當應用程序調用read()函數時,VxWorks的I/O系統將調用底層驅動adcRead()函數,該函數隨即依照程序設定對表2所列卡上各相關寄存器進行設置來實現A/D轉換的硬件功能,從而實現底層驅動。
A/D轉換驅動具體實現的核心代碼如下(偽指令為代碼說明,以下同):
  int adcRead(int adcDevId,char *pBuf,int nBytes)
  {…/*觸發AD轉換*/
   ?sysOutByte(BA+0, 0x00);
   ?while(1)
   ?{/*判斷AD轉換狀態*/
    ??status=sysInByte(BA+5);
    ? ?if((status&0x01)==0)?????????
     ?{
      ??/*存儲A/D轉換結果*/
      ??pBuf[1]=sysInByte(BA+0);
      ??pBuf[2]=sysInByte(BA+1);
      ??…????
     }
   }
  }
  首先選擇一個輸入通道(通過ioctl選擇)并觸發A/D轉換,隨后查詢A/D轉換狀態信息直到A/D轉換過程結束,最終將轉換結果保存在pBuf[]數組中傳送到應用層,應用程序使用得到的數字量信息,至此,A/D驅動完畢。其中sysOutByte()和sysInByte()為VxWorks下對寄存器操作的標準函數。
2.3.2 D/A轉換驅動
  與上述驅動實現過程類似,D/A轉換驅動是完成對adcWrite()函數的編寫,轉換過程是A/D轉換的逆過程,由于其不涉及查詢判斷,代碼相對簡化。D/A轉換驅動具體實現的核心代碼如下:
  int adcWrite(int adcDevId, char *pBuf,int nBytes)
  {…/*將數據寫入緩沖區*/
??   sysOutByte(BA+2, pBuf[2]); ?
??   sysOutByte(BA+1, pBuf[1]);
  …
  }
  首先將應用程序中設定的待轉換數字量的低4位和高8位分別存放在pBuf[1]、pBuf[2]中,隨后依照先高后低的順序寫入D/A轉換緩沖區內,當低位數據寫入完成后,硬件將自動開始更新D/A輸出的模擬量,至此,D/A驅動完畢。需要說明的是:D/A通道選擇是在應用程序中的編碼過程中實現的。
2.3.3 設備控制驅動
  設備控制驅動用于完成A/D通道選擇,實現過程是對BA+3寄存器進行設置,當該寄存器高低位不同時,通道進行自動掃描,每當AD轉換完成時切換到下一個通道。以控制A/D對通道0至通道3循環掃描為例,具體代碼如下:
  int adcIoctl(int adcDevId, int cmd, int arg)
  {…/*CH30控制字控制通道0-3轉換*/
?   case CH30:
?   sysOutByte(BA+3, 0x30);?
  …
  }
  通過定義控制參數CH30,實現通道掃描的范圍為0、1、2、3、0、1、2、3……,利用該方法的好處是可以省去置通道的軟件操作時間,這個功能在高速多通道切換時起很關鍵作用,同樣可定義其他通道的控制參數,如CH20、CH00等等。
3 應用及測試
  為了驗證上面所設計的驅動系統的有效性,文章對其進行了詳細的實驗驗證。針對本系統而言,D/A能將電機轉速控制數字量轉換為相應的模擬電壓量輸出至電機,并且在控制電機運轉的同時,還能利用A/D將壓電陀螺敏感到的電機轉速所輸出的模擬電壓量轉換為數字量后并采集,以此證明驅動系統設計是成功的。下面詳細給出實際工程中用于測試驅動程序設計成功的應用程序。
3.1 應用程序設計
  首先調用adcDrv()和adcDevCreat()初始化驅動并創建AD/DA設備;并通過fd=open('/adc',O_RDWR,0)操作打開設備。這樣,系統為AD/DA卡分配了一個文件描述符fd,通過讀寫該描述符操作即可完成相應AD/DA變換。
隨后發起兩個任務[7][8]:寫任務和讀任務,分別完成上述D/A與A/D的功能。兩個任務的核心代碼如下:
  int Dac()
  {…
??   pBuf[0]=xxx;???????
??   pBuf[1]=xxx;
??   t1=write(fd,&pBuf[0],2);
  …
  }
  int Adc()
  {…
?????   ioctl(fd,CH00,0);
?????   t2=read(fd,&pBuf[0],2);
??   LSB=pBuf[0];
??   MSB=pBuf[1];
  …??
  }
3.2? 測試結果
  在WinShell下通過調用iosDevShow()函數可以看到,名為/adc的AD/DA卡設備已經被VxWorks操作系統正確識別,如圖3所示。

?


  測試分為兩個步驟來驗證A/D及D/A驅動的正確性:
  步驟1:數字量→模擬量→電機轉速(D/A)
  步驟2:電機轉速→模擬量→數字量(A/D)
  步驟1控制電機加減速過程當中,給定的控制電機運轉的數字量如圖4中data1所示(其中:data1是通過16進制數轉換為10進制數實現的)。每隔0.5s對系統進行一次D/A轉換,得到電機實際轉速rate如圖5所示。

?


  對比data1和rate,兩條曲線規律一致,說明D/A驅動功能正常。
  隨后將圖5中的電機轉速作為輸入量,輸入到步驟2中進行實驗,以相同時間間隔對系統進行A/D采樣,轉換后的數字量如圖4中data2所示,對比data2和rate,兩條曲線規律一致,說明A/D驅動功能正常。
  data1與data2兩條曲線基本重合,二者之間的誤差曲線error(data1-data2)如圖6。

?


  由圖6可得:誤差最大值為3.2LSB,最小為2.1LSB。由此可見,AD/DA功能實現的同時精度完全符合要求(4LSB≥error≥2LSB)。實驗結果表明:驅動系統設計成功有效。
  本文介紹了VxWorks下AD/DA驅動的開發過程,給出了驅動中的核心代碼。同時在對驅動程序進行測試的過程中說明了部分應用程序的設計。測試結果表明,所開發的驅動系統滿足實際需要(12位AD/DA轉換分辨率),可在實際工程中應用。限于篇幅本文未能給出全部代碼,但文中驅動程序的設計是完全依照VxWorks的標準I/O機制實現的,具有普遍的指導意義,可為VxWorks下其他字符型設備驅動開發提供參考。


參考文獻
[1] ?孔詳營,柏桂枝.嵌入式實時操作系統VxWorks及其開發環境Tornado[M].北京:中國電力出版社,2002.
[2] ?解月江,張梅.VxWorks下設備驅動技術研究[J].航天控制,2004,22(6):54-57
[3] ?解月江,秦龍勇.VxWorks下PC/104-CAN驅動程序設計[J].單片機與嵌入式系統應用,2003,29(4):25-27.
[4] ?Tornado 2.2 User's Guide[S]. Wind River System Inc.?2002.
[5] ?盛博科技. SysExpanModuleTM/ADT650技術手冊[S].

[6] ?周啟平,張楊.VxWorks下設備驅動程序及BSP開發指南[M]. 北京:中國電力出版社, 2004.
[7] ?陳智育,溫彥軍,陳琪.VxWorks程序開發實踐[M].北京:人民郵電出版社.
[8] ?VxWorks Programmer's Guide[S]. Wind River System Inc.?2002.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          午夜精品久久久久久久久久久久| 亚洲欧美卡通另类91av| 久久天天躁狠狠躁夜夜av| 欧美**人妖| 国产精品网站视频| ●精品国产综合乱码久久久久| 国产精品欧美激情| 在线观看中文字幕不卡| 国产精品乱码妇女bbbb| 国产精品福利网站| 一本色道久久综合一区| 久久er精品视频| 欧美日产在线观看| 欧美激情精品久久久久久蜜臀| 国产农村妇女精品| 国产精品久久| 国产精品私房写真福利视频| 亚洲国产一区二区三区在线播| 亚洲欧美日韩国产一区| 国语自产在线不卡| 影音先锋中文字幕一区二区| 国产伦精品一区二区三区四区免费| 亚洲午夜三级在线| 欧美在线|欧美| 久久综合精品国产一区二区三区| 欧美日韩在线播放三区| 国产专区一区| 亚洲欧洲日韩女同| 国产精品久久久久久av福利软件| 黄色综合网站| 免费在线观看精品| 亚洲精品一区二区三区不| 免费在线欧美视频| 蜜桃av一区二区在线观看| 国产精品wwwwww| 久热国产精品视频| 国内精品99| 亚洲国产精品va在线观看黑人| 怡红院av一区二区三区| 欧美一区二区三区男人的天堂| 国产亚洲欧美中文| 模特精品裸拍一区| 国产精品综合久久久| 久久视频精品在线| 性欧美在线看片a免费观看| 欧美日韩亚洲一区二区三区在线| 国产精品剧情在线亚洲| 欧美色视频一区| 亚洲成在人线av| 亚洲第一福利视频| 久久深夜福利| 日韩一级精品视频在线观看| 欧美三级日韩三级国产三级| 亚洲国产日韩欧美综合久久| 欧美视频在线免费看| 欧美福利电影网| 免费人成精品欧美精品| 黄色日韩网站| 欧美日韩精品免费| 久久青青草原一区二区| 欧美日韩一区二区三区视频| 亚洲国产精品一区制服丝袜| 欧美成人免费视频| 久久免费视频观看| 久久精品女人天堂| 一区二区在线观看视频在线观看| 久久日韩粉嫩一区二区三区| 亚洲欧美日韩爽爽影院| 在线欧美影院| 欧美一区二区女人| 久久一区二区三区av| 国产精品99久久久久久久久久久久| 性久久久久久久久久久久| 欧美日韩一区二区精品| 欧美日韩在线免费视频| 亚洲第一级黄色片| 亚洲一区日本| 欧美激情国产日韩| 欧美1区2区视频| 欧美日韩亚洲另类| 日韩小视频在线观看专区| 国产亚洲a∨片在线观看| 免费亚洲电影| 欧美片第1页综合| 一本色道久久综合狠狠躁篇的优点| 国产精品久久久久久av下载红粉| 欧美电影免费观看高清| 久久爱另类一区二区小说| 久久人人精品| 亚洲一区二区动漫| 亚洲一区网站| 久久成人免费| 麻豆精品视频在线观看| 欧美日韩第一区日日骚| 亚洲午夜精品久久| 亚洲视频免费在线观看| 亚洲综合欧美日韩| 国产三区二区一区久久| 激情久久综合| 午夜日韩福利| 久久人体大胆视频| 亚洲国产1区| 国产精品网站一区| 国产欧美视频在线观看| 国产情人综合久久777777| 亚洲激情小视频| 欧美aⅴ一区二区三区视频| 欧美大胆成人| 久久九九热re6这里有精品| 亚洲午夜一级| 国产精品久久久久久久久婷婷| 91久久嫩草影院一区二区| 久久免费的精品国产v∧| 亚洲网站视频福利| 久久久久久久久蜜桃| 久久综合给合久久狠狠狠97色69| 国产精品一区二区久久国产| 欧美视频一区二区在线观看| 国产欧美一区在线| 香蕉视频成人在线观看| 欧美人牲a欧美精品| 亚洲综合日韩中文字幕v在线| 欧美a级一区二区| 欧美在线观看视频一区二区| 91久久综合亚洲鲁鲁五月天| 久久久久久网址| 久久综合给合久久狠狠色| 欧美日韩精品高清| 在线免费观看一区二区三区| 亚洲——在线| 欧美精品一区二区三区视频| 欧美精品一区二区三区蜜桃| 欧美一区二区啪啪| 国产主播一区二区三区四区| 久久偷看各类wc女厕嘘嘘偷窃| 国产一区欧美| 亚洲尤物精选| 欧美亚洲日本一区| 国产一区二区三区观看| 亚洲欧美综合国产精品一区| 狂野欧美激情性xxxx| 欧美一区二区性| 国产女主播一区二区三区| 亚洲电影免费观看高清完整版在线| 欧美日韩国产成人在线| 欧美精品一区二区视频| 一区二区三区欧美成人| 艳妇臀荡乳欲伦亚洲一区| 欧美刺激午夜性久久久久久久| 夜夜狂射影院欧美极品| 国产日韩欧美中文| 欧美在线视频观看免费网站| 亚洲另类自拍| 99热这里只有成人精品国产| 精品成人国产| 一区二区免费看| 亚洲少妇一区| 欧美专区日韩视频| 亚洲影院污污.| 国产精品久久久久久亚洲毛片| 亚洲激情黄色| 欧美中文字幕在线播放| 欧美日韩在线三区| 在线成人亚洲| 国产精品夫妻自拍| 激情综合中文娱乐网| 一色屋精品亚洲香蕉网站| 欧美高清视频一区| 欧美日韩亚洲一区二区三区四区| 国产亚洲免费的视频看| 最新国产乱人伦偷精品免费网站| 国产精品yjizz| 欧美三级不卡| 亚洲国产精品一区二区久| 欧美专区在线观看| 亚洲人成网站精品片在线观看| 久久久久久久精| 欧美日韩久久| 精品999网站| 久久亚洲国产成人| 可以看av的网站久久看| 国产精品video| 国产欧美成人| 欧美日本亚洲韩国国产| 亚洲夜间福利| 久久久噜久噜久久综合| 午夜视频一区二区| 欧美激情片在线观看| 亚洲欧美日韩在线观看a三区| 欧美在线观看视频一区二区三区| 国产亚洲人成a一在线v站| 久久精品国产清自在天天线| 午夜精品美女久久久久av福利| 欧美日韩国产综合新一区| 久热re这里精品视频在线6| 91久久夜色精品国产九色| 亚洲国产国产亚洲一二三| 欧美韩日精品| 亚洲制服欧美中文字幕中文字幕| 午夜影视日本亚洲欧洲精品| 欧美日韩在线免费视频| 欧美特黄a级高清免费大片a级| 国产精品99久久久久久人| 欧美一区二区网站| 亚洲第一福利在线观看| 国产精品一二三四| 欧美激情a∨在线视频播放| 在线观看国产日韩| 99国产精品视频免费观看一公开| 中文精品一区二区三区| 欧美激情bt| 国产一区二区久久| 久久激情久久| 久久一二三国产| 国产欧美精品日韩精品| 日韩视频免费观看高清完整版| 国产精品久久久久影院色老大| 激情成人中文字幕| 国产主播精品在线| 欧美日韩成人一区二区三区| 欧美日韩在线视频一区二区| 久久综合久久综合久久综合| 亚洲人成网站影音先锋播放| 欧美精品色网| 久久久www成人免费无遮挡大片| 欧美成人精品高清在线播放| 久久亚裔精品欧美| 亚洲综合成人在线| 国产一区二区av| 99精品欧美一区二区三区| 在线成人亚洲| 欧美日韩www| 欧美交受高潮1| 国产亚洲午夜高清国产拍精品| 国产日韩精品视频一区二区三区| 另类天堂视频在线观看| 久久美女性网| 欧美久久99| 免费成人在线观看视频| 欧美视频一区二区三区在线观看| 国产日韩在线不卡| 国产日韩欧美精品在线| 欧美精品一区二区在线播放| 亚洲国产精品欧美一二99| 欧美激情精品久久久久久变态| 玖玖玖免费嫩草在线影院一区| 亚洲人成毛片在线播放女女| 午夜精品福利一区二区蜜股av| 亚洲精品裸体| 欧美一区二区三区日韩| 亚洲最新视频在线播放| 亚洲欧美乱综合| 亚洲精品影院在线观看| 亚洲自拍另类| 亚洲一区二区视频| 欧美日韩国产成人在线91| 亚洲一区区二区| 久久综合导航| 国产精品素人视频| 一本一本久久a久久精品综合妖精| 国产欧美一区二区三区久久| 欧美成va人片在线观看| 国产亚洲精久久久久久| 国产精品视频专区| 亚洲电影免费在线| 欧美极品一区| 国产女人水真多18毛片18精品视频| 日韩视频欧美视频| 国产欧美日韩不卡| 夜夜嗨av色综合久久久综合网| 国产精品99久久久久久有的能看| 欧美精品导航| 国产综合色产| 香蕉久久精品日日躁夜夜躁| 国产精品黄页免费高清在线观看| 久久久久久久一区| 欧美黄色影院| 亚洲东热激情| 好看的av在线不卡观看| 欧美人与性动交α欧美精品济南到| 欧美电影在线观看完整版| 亚洲福利视频免费观看| 国产美女高潮久久白浆| 99re6热只有精品免费观看| 亚洲黄色成人| 国产精品www网站| 亚洲一区精品在线| 国产精品欧美一区喷水| 性久久久久久久久| 欧美精品国产精品日韩精品| 在线 亚洲欧美在线综合一区| 日韩香蕉视频| 好看的日韩av电影| 在线精品福利| 国产欧美一区视频| 国产日韩欧美综合精品| 久久久久久亚洲精品中文字幕| 一区二区三区在线高清| 在线亚洲高清视频| 亚洲人成在线观看一区二区| 99热这里只有精品8| 国产亚洲一区二区在线观看| 国产伦精品一区二区三区在线观看| 国产性色一区二区| 欧美大片va欧美在线播放| 一区二区三区产品免费精品久久75| 在线观看日韩精品| 午夜精品久久久久久| 欧美日韩国产精品一区| 欧美性猛交xxxx免费看久久久| 亚洲国产综合在线看不卡| 蜜臀va亚洲va欧美va天堂| 午夜精品影院在线观看| 国产一区二区久久| 午夜精品一区二区三区电影天堂| 亚洲视频在线观看视频| 国产一区二区三区的电影| 久久综合久久综合久久综合| 久久在精品线影院精品国产| 西西裸体人体做爰大胆久久久| 亚洲神马久久| 久久亚洲精选| 久久久久久一区| 国产精品一区二区在线观看| 欧美一区三区二区在线观看| 欧美日本精品| 亚洲成色777777在线观看影院| 亚洲欧美精品一区|