国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

wjun7610
級別: 略有小成
精華主題: 0
發帖數量: 127 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-05-07
查看wjun7610的 主題 / 回貼
樓主  發表于: 2013-06-22 19:51
Omron_Fins.dll V1.0 Fins通信協議串口通訊動態鏈接庫DLL(以下簡稱DLL),是為滿足工業通信需要,

針對工業領域要求上位機對歐姆龍系列PLC通訊實時采集與控制的組態編程而設計。

可以適用于常用的各種開發環境如:Vb6、Vb.net、Delphi、C#、VC++、powerbuilder、易語言、labviEW等進行上位機軟件開發。

本DLL是采用Delphi語言開發的標準串口通訊庫,具有以下特點:

1)、遵循歐姆龍最新Fins通信協議;

2)、支持多串口并發操作,支持多線程串口通訊,將串口通訊對主程序的影響降至最低;

3)、實時性、可靠性好,通用性強;

4)、適用于多PLC(下位機)聯網和上位機通信,滿足多方面的需要;

5)、函數接口功能全,操作簡單,支持歐姆龍PLC的絕大部分地址的讀寫功能函數;

6)、支持USB、PC擴展卡等擴展串口號;

7)、支持多種操作系統win2000/winXP/Win7(標準Win32 DLL);

8)、易于快速開發(VC等非RAD開發環境的開發);

9)、采用數組指針調用數據發生與接收,初學者快速入門;對于不方便使用指針的開發環境可采用DLL緩沖區傳遞;

10)、可在多種編程環境下使用,例如VB、VC、Delphi、PB、Labview、易語言等開發環境;

11)、擴展了函數功能讀取下位機中的雙字、單精度浮點等類型數據,更加符合工業自動化領域的工控軟件的開發。

軟件版本及相關說明:

Omron_Fins.dll V1.0 Fins通信協議串口通訊鏈接庫,實現了對歐姆龍全系列PLC的Fins協議的支持,

wangjun于2013年在原有Omron_HostLink.dll V3.2版基礎上基于Finsi協議重寫通訊底層協議結構。

對于16位整數和32位整數讀取寫入均按有符號整數處理,小數的返回按單精度浮點型(2進制浮點)

處理讀取方式。提供擴展功能函數,方便用戶實現混合數據讀取。能夠同時滿足32個串口并發

情況下的正常使用。

Omron_Fins.dll V1.0 分為完美版和單機版兩個版本。

注意:實例在使用時不能超出試用版的地址限制,否則無法正確通訊。


龍帥工作室為您提供專業串口通訊控件,也可為您訂制

專用通訊協議串口控件。目前龍帥系列串口通訊協議

控件包括modbus_rtu、modbus_tcp、三菱FX PLC編程口、

歐姆龍HostLink、西門子PPI等多個系列產品。

淘-寶-店:http://shop34821629.taobao.com

電 話:13912935690

騰訊QQ:157610979

阿里旺旺: wj_longshuai

郵 箱:[url=mailto:157610979@QQ.com]157610979@QQ.com[/url] ;   [url=mailto:chinawanglong@163.com]chinawanglong@163.com[/url]
[ 此帖被wjun7610在2016-11-24 14:06重新編輯 ]
附件: 歐姆龍fins協議動態庫.rar (1353 K) 下載次數:663
網站提示: 請不要用迅雷下載附件,容易出錯
wjun7610
級別: 略有小成
精華主題: 0
發帖數量: 127 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-05-07
查看wjun7610的 主題 / 回貼
1樓  發表于: 2013-06-22 19:52
DLL串口操作函數包括:

  1)、finsComOpen打開串口;

     finsCvComOpen打開串口; //CV模式通訊串口打開

  2)、finsComClose關閉串口;
      
  3)、finsSetDelay串口通訊延時設定;
                    
  4)、finsComTrue判斷串口是否打開成功;
            
  5)、finsComWork判斷串口是否正在工作中;

Fins協議基本功能函數包括:

  1)、finsPlcRs  讀取PLC運行狀態;

  2)、finsPlcWs 更改PLC運行狀態;  

  3)、finsBitForced  PLC位元件強制;

  4)、finsCancelAllF 取消全部PLC強制;

  5)、finsReadBit 讀PLC位元件值;

  6)、finsReadInt 讀PLC字元件值;

  7)、finsWriteBit 寫PLC位元件值;  

  8)、finsWriteInt 寫PLC字元件值;

Fins協議擴展功能函數包括:

  1)、finsSet PLC的位元件置位;

  2)、finsReSet PLC的位元件復位;  

  3)、finsReadDInt 讀PLC的雙字整數值;

  4)、finsReadFloat 讀PLC的浮點數據值;

  5)、finsWriteDInt 寫PLC的雙字整數值;

  6)、finsWriteFloat 寫PLC的浮點數據值;

Fins協議DLL緩沖區傳遞功能函數包括

  1)、finsClearBuf  清除復位DLL緩存區;

  2)、finsReadBitBuf 讀PLC的位元件值  

  3)、finsReadIntBuf 讀PLC的字元件值;

  4)、finsReadDIntBuf 讀PLC雙字整數值;

  5)、finsIntDllBufRead 讀DLL整數緩存區值;

  6)、finsReadFloatBuf 讀PLC浮點數據值;  

  7)、finsFloatDllBufRead 讀DLL浮點緩存區值;

  8)、finsWriteIntDllBuf  寫DLL整數緩存區值;

  9)、finsBitBufWrite  寫PLC的位元件值;

  10)、finsIntBufWrite 寫PLC的字元件值;  

  11)、finsDIntBufWrite 寫PLC雙字整數值;

  12)、finsWriteFloatDllBuf 寫DLL浮點緩存區值;  

  13)、finsFloatBufWrite 寫PLC浮點數據值;
當需要進行16位整數、32位整數、32位浮點數值進行混合讀寫時,所需拓展函數包括:

  1)、DecBitBin  字整數的位抽取;

  2)、Int32ToInt_16h  雙字到字轉換高位字;  

  3)、Int32ToInt_16l  雙字到字轉換低位字;

  4)、Int16ToInt32  字到雙字的轉換;

  5)、Float32ToInt_16h 浮點到字轉換高位字;

  6)、Float32ToInt_16l 浮點到字轉換低位字;

  7)、Int16ToFloat32  字到浮點的轉換;

  8)、Int16Unsign   16位有符號整數轉無符號整數  
wjun7610
級別: 略有小成
精華主題: 0
發帖數量: 127 個
工控威望: 249 點
下載積分: 708 分
在線時間: 35(小時)
注冊時間: 2007-09-16
最后登錄: 2025-05-07
查看wjun7610的 主題 / 回貼
2樓  發表于: 2013-06-22 19:52
在VC中使用DLL一般都是采用動態聲明的方式,函數說明中給出的是Delphi的函數原型,

在VC中聲明時只要注意一下類型的對應即可,Delphi中的longint類型對應VC中的int類型

Delphi中的Pchar對應VC中的char* ,下面給出主要函數的聲明:

在使用的文件的cpp中聲明一個句柄:

HINSTANCE hinstDLL;

用來標識導入的動態鏈接庫。

1)、按下例說明聲明相關各個函數:(在cpp文件的頭處聲明)

typedef int (_stdcall *pOpen)(int nport, int BaudRate, int DataBits, char* Parity, int StopBits, char* User);
typedef int (_stdcall *pClose)(int nport);
typedef int (_stdcall *pSetDelay)(int value);
typedef int (_stdcall *pComTrue)(int nport);
typedef int (_stdcall *pComWork)(int nport);

typedef int (_stdcall *pRs)(int nport, int node);
typedef int (_stdcall *pWs)(int nport, int node, int State);
typedef int (_stdcall *pBitForced)(int nport, int node, int address, int Bit, int value, char* Area);
typedef int (_stdcall *pCancelAllF)(int nport, int node);
typedef int (_stdcall *pReadBit)(int nport, int node, int address, int Bit, int Count, char* Area, int* RxdBuffer);
typedef int (_stdcall *pReadInt)(int nport, int node, int address, int Count, char* Area, int* RxdBuffer);
typedef int (_stdcall *pWriteBit)(int nport, int node, int address, int Bit, int Count, char* Area, int* TxdBuffer);
typedef int (_stdcall *pWriteInt)(int nport, int node, int address, int Count, char* Area, int* TxdBuffer);

typedef int (_stdcall *pSet)(int nport, int node, int address, int Bit, char* Area);
typedef int (_stdcall *pReSet)(int nport, int node, int address, int Bit, char* Area);
typedef int (_stdcall *pReadDInt)(int nport, int node, int address, int Count, int* RxdBuffer);
typedef int (_stdcall *pReadFloat)(int nport, int node, int address, int Count, float* RxdBuffer);
typedef int (_stdcall *pWriteDInt)(int nport, int node, int address, int Count, int* TxdBuffer);
typedef int (_stdcall *pWriteFloat)(int nport, int node, int address, int Count, float* TxdBuffer);

typedef int (_stdcall *pBitBin)(int value, int Bitaddress);
typedef int (_stdcall *p32I_16h)(int value);
typedef int (_stdcall *p32I_16l)(int value);
typedef int (_stdcall *p16I_32I)(int valueH, int valueL);
typedef int (_stdcall *p32f_16h)(float value);
typedef int (_stdcall *p32f_16l)(float value);
typedef float (_stdcall *p16I_32f)(int valueH, int valueL);
typedef int (_stdcall *pInt16Unsign)(int value);

2)、建立動態鏈接庫的新函數名:(在cpp文件的頭處聲明)

pOpen mOpen;
pClose mClose;
pSetDelay mSetDelay;
pComTrue mComTrue;
pComWork mComWork;

pRs mRs;
pWs mWs;
pBitForced mBitForced;
pCancelAllF mCancelAllF;
pReadBit mReadBit;
pReadInt mReadInt;
pWriteBit mWriteBit;
pWriteInt mWriteInt;

pSet mSet;
pReSet mReSet;
pReadDInt mReadDInt;
pReadFloat mReadFloat;
pWriteDInt mWriteDInt;
pWriteFloat mWriteFloat;

pBitBin mBitBin;
p32I_16h m32I_16h;
p32I_16l m32I_16l;
p16I_32I m16I_32I;
p32f_16h m32f_16h;
p32f_16l m32f_16l;
p16I_32f m16I_32f;
pInt16Unsign mInt16Unsign;

3)、導入動態鏈接庫,如例所示:(在cpp文件的OnInitDialog過程建立):

hinstDLL = LoadLibrary("Omron_fins.dll");

4)、判斷dll文件是否存在并聲明并建立動態鏈接庫中的函數與新函數名的對應關系,

如下:(在cpp文件的OnInitDialog過程建立):

   if (hinstDLL)
   {
      mOpen = (pOpen)GetProcAddress (hinstDLL,"finsComOpen");
      //mOpen = (pOpen)GetProcAddress (hinstDLL,"finsCvComOpen");  CV模式plc使用這個打開串口
      mClose = (pClose)GetProcAddress (hinstDLL,"finsComClose");
      mSetDelay = (pSetDelay)GetProcAddress (hinstDLL,"finsSetDelay");
      mComTrue = (pComTrue)GetProcAddress (hinstDLL,"finsComTrue");
      mComWork = (pComWork)GetProcAddress (hinstDLL,"finsComWork");
    
      mRs = (pRs)GetProcAddress (hinstDLL,"finsPlcRs");
      mWs = (pWs)GetProcAddress (hinstDLL,"finsPlcWs");
      mBitForced = (pBitForced)GetProcAddress (hinstDLL,"finsBitForced");
      mCancelAllF = (pCancelAllF)GetProcAddress (hinstDLL,"finsCancelAllF");
      mReadBit = (pReadBit)GetProcAddress (hinstDLL,"finsReadBit");
      mReadInt = (pReadInt)GetProcAddress (hinstDLL,"finsReadInt");
      mWriteBit = (pWriteBit)GetProcAddress (hinstDLL,"finsWriteBit");
      mWriteInt = (pWriteInt)GetProcAddress (hinstDLL,"finsWriteInt");

      mSet = (pSet)GetProcAddress (hinstDLL,"finsSet");
      mReSet = (pReSet)GetProcAddress (hinstDLL,"finsReSet");
      mReadDInt = (pReadDInt)GetProcAddress (hinstDLL,"finsReadDInt");
      mReadFloat = (pReadFloat)GetProcAddress (hinstDLL,"finsReadFloat");
      mWriteDInt = (pWriteDInt)GetProcAddress (hinstDLL,"finsWriteDInt");
      mWriteFloat = (pWriteFloat)GetProcAddress (hinstDLL,"finsWriteFloat");


     mBitBin = (pBitBin)GetProcAddress (hinstDLL,"DecBitBin");
     m32I_16h = (p32I_16h)GetProcAddress (hinstDLL,"Int32ToInt_16h");
     m32I_16l = (p32I_16l)GetProcAddress (hinstDLL,"Int32ToInt_16l");
     m16I_32I= (p16I_32I)GetProcAddress (hinstDLL,"Int16ToInt32");
     m32f_16h = (p32f_16h)GetProcAddress (hinstDLL,"Float32ToInt_16h");
     m32f_16l = (p32f_16l)GetProcAddress (hinstDLL,"Float32ToInt_16l");
     m16I_32f= (p16I_32f)GetProcAddress (hinstDLL,"Int16ToFloat32");
     mInt16Unsign = (pInt16Unsign)GetProcAddress (hinstDLL,"Int16Unsign");
  
     AfxMessageBox("Omron_fins.dll已成功載入!");
  }
  else
{
    AfxMessageBox("沒找到Omron_fins.dll!");
    SendMessage(WM_CLOSE);
  }

注:雙引號中為動態鏈接庫中的原有函數名。


函數中用到了char*型參數,這里介紹下char*與Cstring的相互轉換的函數:

(1)char*->CString

char* sz;
CString str;
str.Format("%s",sz);  //可以用此函數將讀取的值轉成字符串

(2) CString -> char*

CString str;
char* sz = str.GetBuffer(0);//可將字符串轉成char*給函數賦值


5)、當不再需要使用DLL時記得關閉串口及釋放動態鏈接庫,(在OnDestroy事件中釋放)

if(hinstDLL)
{
   int k = mComTrue(mnport);
   if (k==1)
   {
      mClose(mnport);
   }    
   FreeLibrary(hinstDLL);
}
cmsn
      
級別: 略有小成
精華主題: 0
發帖數量: 275 個
工控威望: 451 點
下載積分: 1037 分
在線時間: 281(小時)
注冊時間: 2012-09-10
最后登錄: 2025-02-22
查看cmsn的 主題 / 回貼
3樓  發表于: 2013-06-22 20:57
這個關注下
manjialin
專業工業控制軟件開發!
級別: 略有小成
精華主題: 0
發帖數量: 144 個
工控威望: 334 點
下載積分: 718 分
在線時間: 110(小時)
注冊時間: 2008-11-28
最后登錄: 2020-08-26
查看manjialin的 主題 / 回貼
4樓  發表于: 2013-07-02 08:55
干了那么多年軟件開發,第一次聽說OMRON能全系支持FINS
945785181
做自己,信自己。
級別: 探索解密
精華主題: 0
發帖數量: 20 個
工控威望: 128 點
下載積分: 619 分
在線時間: 17(小時)
注冊時間: 2011-01-15
最后登錄: 2015-08-13
查看945785181的 主題 / 回貼
5樓  發表于: 2013-07-11 09:14
下載下來都不能解壓的

主站蜘蛛池模板: 天天综合日日夜夜_日日鲁夜夜如影院_99re视频热这里只有精品7_日本一区二区三区四区_国产做A爰片久久毛片A片白丝_97天堂_99视频在线_国产成人精品免费视频大全最热 | a级高清免费毛片av在线_日韩乱视频_久久九九高潮毛片免费全部播放_少妇BBWBBW高潮_黑色东京在线观看_亚洲欧洲日产国码无码AV一_韩国日本美国免费毛片_国产精品69久久久久水密桃 | 性色欧美_国产人妻午夜在线无码_亚洲国产天堂久久综合_国产无套粉嫩白浆在线观看_久久人人爽av_AAA级毛片_国产乱子精品视频免费_天天做天天爱天天高潮 | 全篇肉高h秘书被c办公室有图_av在线成人_亚洲一区二区精品3399_国产97在线视频_小草影院小草影视_99精品热播_日韩人妻无码精品_69av网 | sxeoquenetv另类重口_日本视频网址_日韩成人在线一区_综合狠狠开心_91久久高清国语自产拍_久草在线免费资源站_国产精品亚洲专区无码不卡_欧洲美熟女乱又伦av影片 | 超碰CAO已满18进入离开官网_欧美久久网_GOGO全球人体高清大胆亚洲AV_亚洲精品无码久久千人斩探花_九色综合九色综合色鬼_亚洲日韩乱码中文无码蜜桃臀网站_国产精品久久久99_亚洲区日韩精品中文字幕 | 欧洲免费在线观看视频_日韩欧美亚洲中文乱码_免费看日本zzzwww色_欧美性做爰毛片_日韩一级二级三级_一区二区三区欧美在线观看_国产精品亚洲无码在线_99爱这里只有精品 | 欧美性猛交xxxx乱_黄页av_91嫩草在线_91官网视频_日本中文字幕有码在线视频_国产免费无码_亚洲国产成人丁香五月激情_边做边对白在线播放边做 | 国产欧美日韩_黄色成人网站免费无码av_亚洲AV日韩综合一区二区_大象一区_国产成人无码牲交免费视频_久久久久欧美激情饼干_日韩一区二区三区视频在线播放_国产精品hd | 国产成人AV网站网址_日本三极_日漫美女_中国三级在线_一级一毛片_黑人av_2019天天干夜夜操_国产免费作爱视频 国产精品天堂AVAV在线_国产成人无码一区二区在线观看_隔着超薄肉丝袜做AV在线_涩涩涩综合在线亚洲第一_精品系列无码一区二区三区_在线黄色影院_九一快播_久久精品国产亚洲AV麻豆不卡 | japanese55丰满熟妇_亚洲at在线免费影院_亚洲成人自拍一区_国产日韩亚洲精品_日本中文字幕在_日本草草影院_www.91亚洲_野性狂欢大派对 | 男啪女视频免费观看网站_国产成人啪精品视频网站午夜_欧亚久久日韩av久久综合_9a蜜桃久久久久久免费_国产综合18久久久久久_国产www_国产精品久久久久久久久亚洲美女_日日爱网站 | 狠狠狠狠狠狠狠综合_日韩综合精品_好吊色欧美一区二区三区视频_青青草www_欧美精品久久久久久久免费软件_红杏成av人影院在线观看_AV亚洲中文字幕精品无码_久久精品6 | 俺也去俺来也www色官网_国产精品久久久久激情影院_小荡货好紧好爽奶头大视频_亚洲免费精品一区_欧美群妇大交乱视_国产一区视频播放_一区二区三区四区欧美日韩_亚洲欧美日韩系列中文字幕 | 精品国内在视频线2019_国产69精品久久久久男男系列_免费国产a国产片高清不卡_无码熟妇人妻av在线c0930_国产97视频在线观看_人人艹av_CHINESEXXXXHD麻豆_www久草 | 国产影视一区_亚洲av永久无码偷拍另类_日韩在线免费观看av_九色九一_亚1州区2区3区4区产品乱码2021_亚洲精品成人网站在线观看_国产乱人对白_亚洲国产精品一区二区999 | 美女黄频视频大全免费的_99视频精品_亚洲人妖网站_国产精品1区2区3区4区_黄色毛片视频在线观看_爆乳熟女高潮大叫_99视频在线播放_爱爱免费小视频 | 在线看黄V免费网站免费_日本a一区_国产精品成人自产拍在线观看_wwwxxxxx日本_少妇被多人C夜夜爽爽AV_精品区一区二区_av黄色片_国产精品18久久久久久久久 | 亚洲精品一区二区三区在线看_精品99在线观看_国产最新精品视频_四虎影院永久在线_狼人无码精华AV午夜精品_国产网曝门亚洲综合在线_在线播放亚洲第一字幕_久久国产精品萌白酱免费 | 久久久久久久久久网_精品视频在线免费观看_亚洲av午夜精品无码专区_美女牲交视频一级毛片动态图_亚洲国产成人综合精品_浴室人妻的情欲hd三级国产_涩涩的视频_bbwcuckold精品熟妇 | 国产一二三四在线_18禁超污无遮挡无码免费游戏_精品美女久久久_久久九九99视频_成人av中文字幕_日韩一区二区福利_亚洲.国产.中文慕字在线_天堂中文资源库官网 | 超薄丝袜足J好爽在线观看_欧美成人一区亚洲一区_亚洲AV高清一区二区三区尤物_天堂一区二区mv在线观看_麻豆视传媒官网免费观看_日韩欧美视频免费_1024国产在线在线视频_AV无码中文字幕不卡一区二区三区 | 免费看又黄又无码的网站_一级中文免费_我想看毛片_中日韩在线观看视频_草草影院ccyy国产日本第一页_日本精品综合_伊人xxx_麻豆观看 | 午夜精品影院_中文JAPANESE在线播放_精品三级_林深见鹿40集高清免费观看_国产一级αv片免费观看_青草久久国产_超碰个人97_广西美女色炮150p图 | 亚洲精品国产91_日本高清视频色WWW色_午夜一级影院_色人阁26uuu_国产成人精品小视频_av天堂久久天堂av色综合网_呻吟翘臀后进爆白浆_亚洲啪啪aⅴ一区二区三区9色 | 国产日韩欧美在线精品首页_亚洲偷精品国产五月丁香麻豆_娇小1213╳yⅹ╳毛片_日本高清www视频在线观看_欧美在线观看你懂的_国产精品久久久久久人妻_久久久精品免费看_久久人人妻人人做人人爱 | 亚洲三区在线播放_小视频一区_国产亚洲精品视频中文字幕_色美av_中文字幕在线网址_亚洲欧洲精品视频在线观看_日韩欧美一区二区三区在线播放_国产无遮挡AAA片爽爽 | 春雨影视剧在线播放免费观看_国产成人精品亚洲777人妖_亚洲第一大片_女人扒开下面无遮挡免费_亚洲精品理论片_亚洲妇女熟BBW_日日做夜夜做_麻豆传媒在线观看视频 | 久久天天东北熟女毛茸茸_久久久久久免费_久久国产午夜精品理论片最新版本_亚洲无马在线观看_一个人看的免费高清视频www_亚洲精品国产suv一区88_特及毛片_日本成人午夜 | 老司机精品在线观看_好骚综合在线_久久精品久久久久久久久久久久久_91一二三_午夜精品成人在线视频_91在线精品播放_国产乱子一区二区_毛片欧美 | 婷婷亚洲精品久久无码一区二区三区_久久成人毛片_久久久亚洲高清_澳门午夜影院_久久ww_奇米五月_无码免费在线观看小视频_亚洲一区二区毛片 | 羞羞影院午夜男女爽爽影视_对准肉茎坐下裙子遮住小说_久久爱992xxoo_人人97_亚洲福利视频一区二区三区_他添的我好湿好爽视频_日本免费一级淫片a级中文字幕_欧洲一级黄色毛片 | 97色亚洲_无码粉嫩虎白一线天在线观看_亚洲人成人一区二区在线观看_成人免费一级伦理片在线播放_超级色的网站在线观看_992tv人人草_日本黄色大片_久久久久久视频 | 国产精品suv一区二区88_亚洲欧洲日产国产最新_久久金品_亚洲欧美综合区_亚洲aⅴ无码成人网站国产_成人高潮片免费视频欧美_91免费观看_欧美在线播放一区二区三区 | 成人无码视频在线观看网站_快色91_国产欧美日韩一区二区三区在线_在线看黄色_极品销魂美女一区二区_无码成人一区二区三区_videos日本多毛hd护士_人妻互换HD无码中文在线 | 91视频免费_亚洲精品中文字_亚洲高清视频免费看_日韩中文字幕手机在线_国产免费一级高清淫曰一本篇_狂野欧美精品_亚洲欧美日韩区_日韩成人无码 | 国产高清精品亚洲一区二区三区_国产12孩岁A片被A午夜_九九精品无码专区免费_免费观看爱爱视频_亚洲日本va中文字幕在线_一级毛片小说_色偷偷av亚洲男人的天堂_欧美在线国产精品 | 久久99久久99精品中文字幕_一级毛片免费版_a国产免费_玖玖视频免费_日日激情综合久久一区_91久久国产精品视频_爱福利视频网_天天碰天天摸天天操 | jizz18欧美18_国产精品99久久久久久久久久_国外亚洲成av人片在线观看_三叶草欧码成人毛片_亚洲人影院_国产一区二区三四区_粉嫩高中生无码视频在线观看_日本A∨精品一区二区三区 | 亚洲欧美日韩中文字幕二_日产精品久久久久久久_国产一区二区三区高清_国产一级a不收费_亚洲AV无码第一区二区三区_懂色av粉嫩av蜜臀av_国产午夜理论不卡在线观看_天天射色综合 | 免费操比视频_久久久久久精品无码午夜按摩师_中文乱码字幕高清在线观看_91精品国产91久久久娜娜_黄色影视网址_色爱99_啊轻点内射在线视频_www.久久艹 |