国产剧情视频在线观看-国产剧情麻豆女教师在线观看-国产剧情精品在线观看-国产剧情精品-国产剧情91-国产玖玖在线观看


曙海教育集團論壇Win CE 專區Wince技術討論區 → 主要討論在WinCE設計和開發C...WindowsCE.Net下CAN卡的驅動程序設計31028


  共有10556人關注過本帖樹形打印

主題:主要討論在WinCE設計和開發C...WindowsCE.Net下CAN卡的驅動程序設計31028

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
主要討論在WinCE設計和開發C...WindowsCE.Net下CAN卡的驅動程序設計31028  發帖心情 Post By:2010-11-16 14:31:36

3、4、5、6、7、9、10、11、12、15,同時1000V的光電隔離提供系統高可靠性。在CAN卡通信中,要用到CAN控制器中的很多寄存器,各個寄存器的含義和作用可以參考控制芯片的說明書。圖1列出驅動程序設計中用到最主要的寄存器結構。

2 CAN卡驅動底層函數設計

本方案設計CAN驅動是放在Windows CE操作系統的內核下層,圖片點擊可在新窗口打開查看位于OEM adaptation layer(OAL)層的一個真正的驅動,而不是在主程序中的串口操作。在Windows CE的設備管理器可以看到CAN1和CAN2兩個端口,并且可以查看其工作的正常與否和對其進行配置。如:中斷號和I/O地址。

2.1 CAN卡寄存器讀寫函數

CAN卡的通信是通過操作CAN卡上的CAN控制器進行的。在CAN控制器中有很多寄存器,如控制寄存器、命令寄存器、狀態寄存器、中斷寄存器等,通過讀寫這些寄存器中的命令狀態字可以檢測和控制CAN卡的行為。在Windows CE.NET下,通過調用DOK中的API函數HalTranslateBusAddress,將CAN卡分配的物理地址映射為邏輯地址。這樣各個寄存器對應的就是CAN卡基地址的偏移地址,因此,對寄存器的讀寫就轉化為對內存地址的讀寫。下面是CAN卡寄存器的讀寫函數:

*在偏移量為off的地址讀取一個字節的數據inline BYTE CANR(LPCAN_HW_OPEN_INFO hCan,DWORD off)

{

return hCan->lpCanHWInfo->lpCanObj->lpMappedBaseAddr[off];

*將一個字節數據寫到偏移量為off的地址中inline VOID CANW(LPCAN_HW_OPEN_INFO hCan,DWORD off,BYTE val)

{

hCan->lpCanHWInfo->lpCanObj->lpMappedBaseAddr[off]=val;

}

參數LPCAN_HW_OPEN_INFO定義的是CAN卡的數據結構,其中成員lpMappeBaseAddr[0]表示的是映射后基地址,lpMappedBaseAddr[1]就是基地址+1的地址,對應CAN卡的寄存器是命令寄存器。通過上述兩個函數可操作CAN卡上的所有寄存器。

2.2 CAN卡初始化

CAN卡的控制器比較復雜,在通信前必須確認硬件信息正確性、初始化各寄存器。初始化函數的基本流程如圖3所示。

第一步,檢查端口號和硬件信息的正確性,主要是CAN卡中斷號是否有效。

第二卡,設置CAN卡默認參數:

CanCardConfigInfo CAN_DEFAULT_SETTING=

{0X00,0XFF,0X03,0X1C};/*設置默認波特率為125Kbps*/

DWORD dwThreadID =0;

PHYSICAL_ADDRESS phyAddr={hwInfo->dwIOBaseAddr *16,0 };

第三卡,用WinCE API函數LocalAlloc為CAN卡驅動中用到的數據結構分配緩沖區;通過HalTranslateBusAddress和MmMapIoSpace函數映射I/O地址,提供直接訪問設備的虛擬地址:

if(!HalTranslateBusAddress(Isa,0,phyAddr,0,&phyAddr))

goto _ExitInit;

hCan->lpCanHWInfo->lpCanObj->lpMappedBaseAddr=

(LPBYTE)MmMapIoSpace(phyAddr,CANCARDADDRLEN,FALSE);

if(!hCan->lpCanHWInfo->lpCanObj->lpMappedBaseAddr)

goto _ExitInit;

如果分配內存或映射邏輯地址失敗,則退出初始化程序,CAN卡初始化失敗。

第四步,初始化讀寫屬性、共享模式、讀超時時間和第二個CAN口的基地址。

第五步,創建CAN卡事件和數據接收事件:hCan->lpCanHWInfo->hCanEvent=CreateEvent(NULL,FALSE,FALSE,NULL);

hCan->lpCanHWInfo->hRecvMsgEvent=CreateEvent(NULL,FALSE,FALSE,NULL);

第六步,初始化中斷,如果CAN卡有復位請求就退出初始化程序。設置好中斷后啟動數據接收線程,設置線程優先級繼續線程處理;最后配置CAN卡參數,進入正常運行狀態。

2.3 CAN卡信息發送

CAN卡的信息發送分為兩個步驟。在對CAN卡基本信息進行檢查后,首先設置發送緩沖的ID號。CAN標準模式的ID號為11位,偏移地址10中存放的是ID號的高8位,偏移地址11的高3位存放的是ID號的低3位,剩下5位分別是RTR位(遠程傳送請求位)和數據長度。通過CANW函數將處理后的數據寫入到相應的偏移地址,設置完相應的地址數據后,通過循環將偏移地址12~19的數據采集回來存到數組中。然后,設置CAN卡的傳輸請求為允許并不斷偵測狀態寄存器的變化,當傳輸緩沖滿標志或傳輸結束標志為1時通出程序,完成一次數據采集。傳輸緩沖區的寄存器如表1所列。

表1

ID號 10 ID.10 ID.9 ID.8 ID.7 ID.6 ID.5 ID.4 ID.3
RTR,數據長度碼 11 ID.2 ID.1 ID.0 RTR DLC.3 DLC.2 DLC.1 DLC.0
數據1~8 12~19 數據 數據 數據 數據 數據 數據 數據 數據

表2

ID號 20 ID.10 ID.9 ID.8 ID.7 ID.6 ID.5 ID.4 ID.3
RTR,數據長度碼 21 ID.2 ID.1 ID.0 RTR DLC.3 DLC.2 DLC.1 DLC.0
數據1~8 22~29 數據 數據 數據 數據 數據 數據 數據 數據

CAN消息發送函數的實現如下:

BOOL CAN_SendMessage(LPCAN_HW_OPEN_INFO hCan,LPCanCardMessageBuflpMsg)

{

BOOL bSuc=FALSE;

ASSERT(hCan && lpMsg && lpMsg->dwMessageLen <=8); /*防錯處理*/

if(0= =(hCan->dwAccessCode & GENERIC_WRITE))

return FALSE;

:: EnterCriticalSection(&hCan->lpCanHWInfo->

TransmitCritSec); /*進入臨界區*/

BYTE byV=static_cast<BYTE>(1pMsg->dwMsgID>>3);

CANW(hCan,10,byV); /*設置ID值高8位*/

byV=static_cast<BYTE>=((lpMsg->dwMsgID & 7)<<5);

if(lpMsg->bRTR) byV|=0x10;

byV+=static_cast<BYTE>(lpMsg->dwMessageLen);

CANW(hCan,11,byV);/*設置ID值低3位、RTR及數據長度*/

for(UINT i=0;<lpMsg->dwMessageLen;++i)

{

CANW(hCan,12+i,lpMsg->byMsg[i]);

} /*采集數據*/

CANW(hCan,1,1);/*重置傳輸請求*/

while(TRUE)

{byV=CANR(hCan,2);

if(byV & 0X40) /*傳輸緩沖區滿,退出*/

{break;}

if(byV & 0X8){ /*傳輸結束,正確返回退出*/

bSuc = TRUE;

break;}

}

::LeaveCriticalSection(&hCan->lpCanHWInfo->TransmitCritSec); /*離開臨界區*/

return bSuc;

}

2.4 CAN卡信息接收

CAN卡的信息接收是發送的逆過程,當接收緩沖區標志為1時,表示緩沖區已滿可以接收數據,將數據接收到數組后釋放接收緩沖區,然后對接收到的數據進行分解并存儲到CAN卡信息緩沖區的結構體。接收緩沖區的寄存器結構如表2所列。

CAN消息接收函數的實現如下:

BOOL CAN_RecvRecvMessage(LPCAN_HW_OPEN_INFO

HCan,OUT LPCanCardMessageBuflpMsg)

{……

if(CANR(hCan,2)&1){ /*判斷接收緩沖區是否已滿*/

for(UINT i=0;i<10;++i)

recvBuf[i]=CANR(hCan,20+i);/*將數據暫存到臨時緩沖區*/

CANW(hCan,1,4); /*釋放接收緩沖區*/

LpMsg->dwMsgID=recvBuf[0]<<3; /*取出ID的高8位*/

BYTE byV =recvBuf[1];

LpMsg->dwMsgID+=byV >>5;/*取出ID低3位,然后和高8位合并*/

LpMsg->bRTR =byV &0x10?TRUE:/*返回RTR狀態*/

LpMsg->dwMessageLen = byV &0XF; /*返回數據長度*/

……

}

else

{++hCan->lpCanHWInfo->dwErrorMsgCount;}/*沒有收到數據,錯誤計數加1*/

::LeaveCriticalSection(&hCan->lpCanHWInfo->

ReceiveCritSec); /*離開臨界區*/

Return bSuc;

}

2.5 CAN卡事件處理

CAN卡事件處理函數是CAN卡驅動程序中很重要的部分。驅動設計要求具有消息通知的功能,當事件發生時及時捕獲事件并進行消息處理。

下面是事件處理函數的實現:

staric DWORD WINAPI CAN_EventHanle(LPVOID lpParam)

{

ASSERT(lpParam);

LPCAN_HW_OPEN_INFO hCan=(LPCAN_HW_OPEN_INFO)lpParam;

CanCardMessageBuf bufMsg;

while(TEUE)

{ /*循環等待CAN卡消息產生,然后進行處理*/

::WaitForSingleObject(hCan->lpCanHWInfo->hCanEvent,0XFFFFFFFF);

if(hCan->lpCanHWInfo->bKillCanThread) break; /*若CAN線程已關閉則中斷*/

if(CAN_RecvMessage(hCan,&hufMsg)){ /*正確接收數據后*/

CAN_RecvBufPush(hCan,&bufMsg);} /*將數據壓入緩沖*/

BYTE byV=CANR(hCan,3); /*將3號寄存器讀出然后立即寫入*/

CANW(hCan,3,byV);/*能夠獲取每次中斷*/

InterruptDone(hCan->lpCanHWInfo->lpCanObj->dwSysIrqt);

} /*本次中斷結束,等待下次中斷*/

return 0;

}

2.6 其它函數

為了提供更多的功能和更方便地使用CAN卡進行通信,在CAN卡驅動程序中還設計了一些函數如CAN_Config用CAN卡信息配置、CAN_RecvBufPop用于處理接收緩沖區、CAN_Reset用于復位CAN卡、CheckHWInfo用于硬件信息檢查等。這些函數提供了對CAN通信卡的設置、檢查等功能,在這里不再詳述了。

3 CAN卡驅動封裝設計

CAN卡底層驅動函數雖然功能完整,但是對于用戶使用比較復雜并且一般用戶不需要了解底層實現的機制。為了便于使用,最后對CAN卡的驅動進行了封裝,提供CanOpenFile、CanSendMsg等五個函數用于CAN總線的通信,以動態連接庫(DLL)的形式提供給用戶調用。封裝函數及功能如下:

*CanOpenFile;初始化并打開CAN卡的一個端口。

*CanCloseFile;關閉由CanOpenFile打開的CAN卡端口。

*CanRecvMsg;接收CAN卡數據,打開CAN卡時必須具有GENERIC_READ權限。

*CanSendMsg;通過CAN卡發送數據。打開CAN卡時必須具有GENERIC_WRITE權限。

*CanIOControl;設置或獲取CAN卡I/O參數支持的I/O控制包括:IOCTL_CAN_CONFIG,IOCTL_CAN_RESET,IOCTL_CAN_TIMEOUT,IOCTL_CAN_SENDREADY,IOCTL_CAN_RECVREADY。

下面是CanSendMsg函數實現的代碼:

BOOL CanSendMSg(

HANDLE hCan,

LPCanCardMessageBuflpMsg)

{

if(!hCan||INVALID_HANDLE_VALUE= =hCan||

!lpMsg||lpMsg->dwMessageLen>8)return FALSE;

return CAN_SendMessage(LPCAN_HW_OPEN_INFO)

hCan,lpMsg);

該函數就是通過封裝CAN卡的底層驅動函數SendMessage來實現的,這樣將功能集中的五個函數更方便了用戶使用。

結語

程序開發的上位機是普通的PC機,軟件環境是:Windows2000 Professional、Embedded Visual C++4.0、與下位機中WinCE.NET對應的SDK,該SDK是在用Platform Builder 4.0定制WinCE時編譯生成的。下位機使用的硬件是研華的嵌入式PC104主板PCM3346N,操作系統為WinCE.ENT。

本文設計開發的驅動已經在北京懷柔的變電站項目中得到成功的應用,CAN卡通信穩定,系統在WINCE.NET下運行可靠,保證了項目的順利實施。


支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

主要討論在WinCE設計和開發C...WindowsCE.Net下CAN卡的驅動程序設計31028








簽名
国产剧情视频在线观看-国产剧情麻豆女教师在线观看-国产剧情精品在线观看-国产剧情精品-国产剧情91-国产玖玖在线观看
<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>
    精品高清视频| 91社区国产高清| 国产成人综合久久| 国产一级特黄a大片99| 亚洲成人网上| 国产精品视频精品| 欧美在线视频一区二区三区| 欧美一级淫片播放口| 爱情岛论坛亚洲入口| 亚洲精品国产一区| 国产精品高潮呻吟久久av野狼| 成人精品一二区| 欧美激情中文字幕乱码免费| 亚洲一区二区三区777| 亚洲v国产v| 国产免费一区二区三区在线能观看| 国产另类自拍| 97超碰色婷婷| 精品国产免费一区二区三区| 久久久亚洲国产| 粉嫩精品一区二区三区在线观看 | 国产日韩在线看| 日韩电影大全在线观看| 国产精品自产拍在线观| 亚洲人成网站在线播放2019| 91精品免费看| 久久久久久久久久久久久久久久久久av| 91夜夜未满十八勿入爽爽影院| 午夜精品短视频| 亚洲aa在线观看| 97久久伊人激情网| 麻豆视频成人| 国产美女精品视频免费观看| 在线视频欧美一区| 国产一区在线免费观看| 国产精品第8页| 亚洲乱码一区二区三区| 国产精品白丝jk白祙| 日本一本a高清免费不卡| 奇米精品在线| 国产精品二区在线| 国产精品无av码在线观看| 亚洲在线播放电影| 久久久久久一区| 国产日韩欧美视频在线| 性欧美办公室18xxxxhd| 日韩国产高清一区| 成人动漫视频在线观看完整版| 国产aaa精品| 亚洲一区二区四区| 欧美久久综合性欧美| 国语自产精品视频在免费| 欧洲久久久久久| 99久久国产免费免费| 日韩av电影院| 97福利一区二区| 亚洲精品一区二区毛豆| 久久综合一区二区三区| 99久久综合狠狠综合久久止| 国产精品夜间视频香蕉| 欧美综合一区第一页| 中文字幕一区二区三区在线乱码| 欧美精品一区二区视频| 精品国产二区在线| 成人动漫在线视频| 亚洲在线免费视频| 国产主播欧美精品| 国产啪精品视频| 国产成人a亚洲精品| 久久久女人电视剧免费播放下载| 亚洲福利av| 日本一区二区三区视频免费看| 精品乱码一区二区三区| 国产精品直播网红| 新呦u视频一区二区| 久久99精品久久久久久久青青日本 | 欧美最猛性xxxxx免费| 亚洲一区二区高清视频| 日本一区二区三区精品视频| 蜜桃av色综合| 另类小说综合网| 精品一区二区三区国产| 国产一区二区精品在线| 国产三区精品| 久久精品国产精品青草色艺| 韩国一区二区三区美女美女秀| 97夜夜澡人人双人人人喊| 国产精品午夜一区二区欲梦| 国产精国产精品| 国产精品电影观看| 国产精品综合不卡av| 国产精品一香蕉国产线看观看| 国产精品999| 国产精品极品尤物在线观看| 国产精品免费一区豆花| 国产欧美一区二区三区在线看| 国产精品免费看久久久香蕉| 国产精品一区二区久久国产| 成人中文字幕在线观看| 亚洲a中文字幕| 成人蜜桃视频| 久久久水蜜桃| 丝袜足脚交91精品| 欧美多人乱p欧美4p久久| 久久久噜噜噜久噜久久| 污视频在线免费观看一区二区三区| 精品视频一区在线| 欧美一区三区二区在线观看| 亚洲国产日韩欧美| 欧美激情三级免费| 日本精品久久电影| 成人国产亚洲精品a区天堂华泰| 国产在线一区二区三区| 3d蒂法精品啪啪一区二区免费| 国产精成人品localhost| 久久久久久亚洲精品不卡4k岛国| 日本一区网站| 欧美精品aaa| 国产999在线观看| 91免费看片网站| 国语精品免费视频| 天天爽天天狠久久久| 国内精品久久久久久久| 国产精品一久久香蕉国产线看观看| 亚洲影院在线看| 国产麻豆日韩| 一区二区三视频| 人九九综合九九宗合| 国产精品永久免费观看| 国产精品三区www17con| 日韩精品不卡| 欧美一级免费看| 国产噜噜噜噜噜久久久久久久久| 国产99视频精品免费视频36| 日韩亚洲视频在线| 91高清免费视频| 成人午夜小视频| 欧美日本韩国国产| 亚州精品天堂中文字幕| 成人激情视频在线| 成人激情电影一区二区| 欧美日韩国产免费一区二区三区 | 国产精品99导航| 96久久精品| 亚洲精品电影在线一区| 国产99视频在线观看| 亚洲va欧美va在线观看| 欧美一区二区三区在线免费观看| 77777少妇光屁股久久一区| 92国产精品视频| 色之综合天天综合色天天棕色| 欧美一级电影在线| 成人午夜影院在线观看| 在线观看欧美激情| 国产欧美在线观看| 神马影院一区二区三区| 国产精品欧美风情| 日本成人黄色免费看| 日韩av手机在线| 久久久av水蜜桃| 97香蕉久久超级碰碰高清版 | 91中文字幕在线观看| 欧美日韩日本网| 国产精品久久久久91| 欧美二区三区| 国产精品视频大全| 水蜜桃亚洲精品| 成人免费午夜电影| 宅男av一区二区三区| 成人免费午夜电影| 欧美黑人巨大精品一区二区| 91入口在线观看| 久久久久久久999| 国产 高清 精品 在线 a| 久久久久久中文字幕| 91在线免费看片| 91精品国产91久久久久久吃药 | 伊人情人网综合| 91综合免费在线| 欧美激情视频一区| 国产欧美精品一区二区三区| 欧美一区二区三区图| 久久精品美女| 成人免费视频网| 欧美激情综合色综合啪啪五月| 国产成人精品免费视频大全最热| 欧洲成人在线观看| 日韩在线第一区| 成人免费观看a| 性色av一区二区三区| 久久99国产精品| 国产欧美亚洲精品| 性欧美长视频免费观看不卡| 蜜桃av久久久亚洲精品| 成人福利网站在线观看| 97av在线播放| 午夜一区二区三区| 国产精品二区在线| 国产精品一二三在线| 欧美国产第二页| 久久综合九色综合网站| 亚洲tv在线观看| 欧美在线一区二区三区四| 日韩电影大全在线观看| 成人午夜电影免费在线观看| 日韩免费观看视频| 欧美激情视频网址| 日本一区二区三区www| 91久久综合亚洲鲁鲁五月天| 91av在线播放| 亚洲va久久久噜噜噜久久狠狠 | 日本一区二区精品| 91精品久久久久久蜜桃| 国产精品电影观看| 午夜免费在线观看精品视频| 日韩欧美99| 狠狠色噜噜狠狠色综合久| 成人激情春色网| 日产日韩在线亚洲欧美| 久久久久久国产免费| 欧美性色黄大片人与善| 国产自产精品| caoporen国产精品| 亚洲va国产va天堂va久久| 国产精品免费久久久久影院| 欧美综合国产精品久久丁香| 欧美激情精品久久久久久大尺度| 久久久久国产精品视频| 国产精品毛片va一区二区三区| 91精品国产自产在线观看永久| 欧洲成人免费视频| 97香蕉久久夜色精品国产| 伊人色综合影院| 先锋影音亚洲资源| 日本日本精品二区免费| 精品人伦一区二区三区| 99国产高清| 91视频国产高清| 国产日韩在线看| 国产日韩欧美另类| 91精品久久久久久久久不口人| 国产精品高清在线| 国产精品黄视频| 人人澡人人澡人人看欧美| 97超碰国产精品女人人人爽| 欧美国产视频一区二区| 亚洲欧洲日夜超级视频| 亚洲精品高清国产一线久久| 三区精品视频| 亚洲综合第一页| 亚洲字幕在线观看| 99在线观看视频| 国产乱码精品一区二区三区中文 | 国产aⅴ夜夜欢一区二区三区 | 欧洲一区二区视频| 欧美最近摘花xxxx摘花| 欧洲精品毛片网站| 国产精品高潮呻吟久久av黑人| 欧美孕妇性xx| 国产精品成久久久久三级 | 国产精品久久久久久久久婷婷| 成人女人免费毛片| 国产区一区二区| 欧美日本韩国国产| 一本久道久久综合| 欧美激情精品在线| 琪琪第一精品导航| 国产精品久久久久久久电影| 国产精品激情av在线播放| 国产精品美女久久| 亚洲综合在线中文字幕| 国内一区二区在线视频观看| 欧美日产一区二区三区在线观看| 污视频在线免费观看一区二区三区| 亚洲欧洲日夜超级视频| 性欧美视频videos6一9| 国产成人精品久久二区二区| 国产欧美日韩91| 99久久无色码| 欧美美乳视频网站在线观看| 一区二区91美女张开腿让人桶| 国内免费精品永久在线视频| 日韩免费观看网站| 92国产精品视频| 国产一区自拍视频| 一区不卡字幕| 国产成人在线精品| 99热国产免费| 亚洲国产欧洲综合997久久| 久久久久久久香蕉网| 国产精品高潮粉嫩av| 亚洲最大成人免费视频| 蜜桃传媒视频麻豆一区| 国产伦精品一区二区三毛| 日本在线一区| 8050国产精品久久久久久| 国产一区二区在线免费| 国产精品免费在线播放| 亚洲视频在线二区| 日本视频久久久| 国产传媒一区二区| 一本一道久久久a久久久精品91| 欧美最顶级的aⅴ艳星| 亚洲一区二区三区香蕉| 日韩精品欧美专区| 日韩暖暖在线视频| 国产另类第一区| 久久久久久久久久久网站| 国产精品自拍网| 鲁鲁视频www一区二区| 高清亚洲成在人网站天堂| 成人高h视频在线| 欧美日韩精品免费观看| 欧美中文字幕第一页| 国产精品日韩欧美一区二区三区| 杨幂一区欧美专区| 国产在线视频2019最新视频| 欧美性bbwbbwbbwhd| 日本亚洲欧美三级| 九九九久久久| 国产999精品久久久影片官网| 成人女人免费毛片| 午夜精品一区二区三区在线视频| 91精品黄色| 中文字幕剧情在线观看一区| 91精品视频在线| 伊人av成人| 91视频网页| 97成人精品区在线播放| 国产在线一区二区三区四区| 欧美激情免费在线| 97在线电影| 97av在线视频| 久久精品日产第一区二区三区| 日本成人在线视频网址| 免费精品视频一区| 国产精品自产拍在线观看| 成人91视频| 91高清视频免费| 久久偷窥视频| 国产日韩欧美另类| 欧美黑人又粗大| 俄罗斯精品一区二区三区| 69av在线视频| 欧洲成人一区二区| 亚洲一区二区自拍| 26uuu亚洲伊人春色| 久久青青草综合| 国产成人精品一区二区| 日本精品一区| 亚洲一区二区三区sesese| 久久久噜噜噜久久久| 久久国产精品-国产精品| 国产成人精品视| 亚洲精品国产精品国自产观看| 亚洲综合日韩在线| 热久久这里只有精品| 日本一区二区视频| 亚洲在线视频观看| 亚洲五月六月| 国产一区二区黄色| 国产精品久久视频| 欧美极品少妇xxxxx| 久久日韩精品| 成人国产精品av| 欧美亚洲成人xxx| 亚洲 日韩 国产第一区| 国产精品久久久久久久久婷婷| 欧美一区二区三区……| 亚洲一区二区在线看| 国产伦精品一区二区三区照片91| 国产精品1区2区在线观看| 伊人狠狠色丁香综合尤物| 国产嫩草一区二区三区在线观看| 国产精品热视频| 91高清免费视频| 亚洲欧美日韩另类精品一区二区三区| 国产乱码精品一区二区三区卡| 国产精品va在线播放我和闺蜜| 中文字幕在线中文字幕日亚韩一区| 国产精品亚洲综合| 91精品免费视频| 国产精品第10页| 性欧美xxxx交| 在线视频不卡国产| 日韩av在线电影观看| 国模精品一区二区三区| 91香蕉国产在线观看| 国产精品美女呻吟| 日韩av电影院| 欧美性受xxxx白人性爽| 久久久久久成人| 亚洲午夜精品久久| 五月天婷亚洲天综合网鲁鲁鲁| 久久久久久亚洲精品不卡4k岛国| 成人3d动漫一区二区三区91| 91久久久久久国产精品| 国产欧美一区二区白浆黑人| 日本精品视频在线| 欧美亚洲国产精品| 亚州国产精品久久久| 久久久久久国产精品三级玉女聊斋| 欧美在线播放一区二区| 久久99国产精品99久久| 国产一区国产精品| 国产日韩一区欧美| 国产精品一区视频| 国产三区二区一区久久| 国产精品9999久久久久仙踪林| 91在线免费看片| 91麻豆精品秘密入口| 亚洲自拍偷拍色图| 91九色在线观看| 成人黄色在线免费观看| 国产精品久久亚洲| 国产伦精品一区二区三区照片91 | 欧美激情视频网| 欧美激情国产精品| 国内精品视频久久| 4438全国亚洲精品在线观看视频| 日本a级片电影一区二区| 奇门遁甲1982国语版免费观看高清| 日韩免费av一区二区| 国产精品免费视频xxxx| 成人精品久久一区二区三区| 96精品久久久久中文字幕| 国产伦精品一区二区三区高清版| 鲁丝片一区二区三区| 日韩欧美在线观看强乱免费| 中文一区一区三区免费| 8x海外华人永久免费日韩内陆视频 | 成人国产精品av| 亚洲最大福利视频网| 国内精品久久国产| 欧美日韩一区二区视频在线 | 国产高清自拍99| 麻豆av一区| 亚洲综合首页| 2019av中文字幕| 国产日本欧美一区二区三区在线 | 国产原创欧美精品| 99re在线观看| 欧美国产综合视频| 欧美激情视频网址| 国产成人涩涩涩视频在线观看| 国产精品永久免费在线| 福利视频久久| 国产精品久久久久久久久影视| 国产精品毛片a∨一区二区三区|国| 国产欧美一区二区三区久久| 亚洲最大成人在线| 精品产品国产在线不卡| 三区精品视频观看| 久久久久久久久久久成人| 国产69精品久久久久久| 日本午夜在线亚洲.国产| 成人网中文字幕| www.久久久| 亚洲欧洲精品在线观看| 久久久久国色av免费观看性色| 国产成人精品网站| 国产日韩欧美中文| 鲁丝片一区二区三区| 夜夜爽99久久国产综合精品女不卡 | 成人激情av| 蜜桃视频日韩| 日本欧洲国产一区二区| 自拍偷拍亚洲色图欧美| 992tv成人免费视频| 亚洲999一在线观看www| 国产综合色一区二区三区| 欧美激情一区二区三区成人| 欧美自拍大量在线观看| 国产精品视频一区二区三区经| 久久综合中文色婷婷| 一区二区精品国产| 国产乱肥老妇国产一区二| 成人黄动漫网站免费| 欧美国产日韩中文字幕在线| 欧美一区二区三区四区在线| 国产厕所精品在线观看| 日韩亚洲不卡在线| 天堂社区 天堂综合网 天堂资源最新版 | 亚洲va久久久噜噜噜久久狠狠| 久久久久久久一区二区| 97se视频在线观看| 婷婷久久青草热一区二区| 欧美在线播放视频| 激情久久av| 久久久久久久成人| 岛国视频一区免费观看| 婷婷久久伊人| 成人欧美一区二区三区黑人| 久久久国产精品一区二区三区| 青青草原成人在线视频| 国产精品区一区| 久久久噜噜噜久久久| 动漫精品视频| 在线精品日韩| 操一操视频一区| 伊人色综合影院| 91久久国产综合久久蜜月精品 | 国模视频一区二区三区| 国产中文日韩欧美| 精品不卡一区二区三区| 日韩av色综合| 久久青青草综合| 国产精品视频大全| 欧美日韩一区二区三| 国产综合香蕉五月婷在线| 日本欧美精品久久久| 国产精品久久久久影院日本| 欧美少妇一区| 91老司机精品视频| 欧美高清视频在线播放| 高清av免费一区中文字幕| 久久免费观看视频| 国产精品偷伦一区二区| 一本一道久久a久久精品综合| 国产精品美乳一区二区免费| 一区二区精品国产| 成人网在线观看| 2021国产精品视频| 久草精品电影| 成人网在线视频| 欧美激情中文字幕在线| 国产一区不卡在线观看| 2024亚洲男人天堂| 日韩中文字幕av在线| 国产中文字幕91| 亚洲国产精品一区在线观看不卡| 国产主播喷水一区二区| 亚洲人成人77777线观看| 国新精品乱码一区二区三区18| 欧美亚洲成人免费| 相泽南亚洲一区二区在线播放| 成人午夜高潮视频| 国产成人a亚洲精品| 日韩伦理一区二区三区av在线| 99中文字幕| 欧洲亚洲在线视频| 欧美激情视频一区二区三区不卡| 国产富婆一区二区三区| 成人国产精品一区二区| 久久久亚洲影院| 免费看成人av| 国产精品视频公开费视频| 色综合久久中文字幕综合网小说| 成人av蜜桃| 国产精品成人一区| 欧美黑人国产人伦爽爽爽| 欧美极品一区| 99九九电视剧免费观看| 国产一区二区色| 91精品国产成人| 欧美激情精品久久久久久黑人| 国产三区精品| 春色成人在线视频| 国产精品亚洲自拍| 国产精品久久一| 久久男人的天堂| 亚洲福利av| 久久久久久久久久久久久久久久av| 97人人模人人爽人人喊38tv| 日韩美女毛茸茸| 欧洲午夜精品久久久| 在线视频精品一区| 一区二区三区四区国产| 激情欧美一区二区三区中文字幕| 成人女人免费毛片| 成人黄色av网站| 91精品久久久久久久久久入口 | 91久久偷偷做嫩草影院| 国产精品私拍pans大尺度在线 | 国产精品美女主播在线观看纯欲| 欧美激情一区二区三区久久久| 亚洲午夜久久久影院伊人| 狠狠色伊人亚洲综合网站色| av电影成人| 国产这里只有精品| 亚洲一区国产精品| 国产精自产拍久久久久久| 国产精品扒开腿做爽爽爽视频 | 国产精品极品美女在线观看免费| 青青草一区二区| 7777精品视频| 国产91色在线|免| 欧美综合第一页| 国产91在线高潮白浆在线观看| 久久久噜久噜久久综合| 亚州国产精品久久久| 欧美肥婆姓交大片| 69视频在线免费观看| 久久久之久亚州精品露出| 91精品国产色综合久久不卡98| 日韩av一区二区三区美女毛片| 精品国产一区二区三区麻豆小说 | 国产成人精品在线播放| 国产精品678| 国产精品久久久久久久久久久久久久|