《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > GPS導(dǎo)航數(shù)據(jù)提取的設(shè)計(jì)與研究
GPS導(dǎo)航數(shù)據(jù)提取的設(shè)計(jì)與研究
來(lái)源:微型機(jī)與應(yīng)用2010年第20期
牛 立, 王景中
(北方工業(yè)大學(xué) 信息工程學(xué)院多媒體實(shí)驗(yàn)室, 北京100144)
摘要: 為解決盲用定位模塊在嵌入式平臺(tái)下實(shí)現(xiàn)的問(wèn)題,根據(jù)串口通信同步方式實(shí)現(xiàn)Windows CE 5.0操作系統(tǒng)下GPS導(dǎo)航數(shù)據(jù)的提取,并對(duì)獲得的數(shù)據(jù)提出一種格式轉(zhuǎn)換的方法。以PXA270嵌入式系統(tǒng)平臺(tái)實(shí)現(xiàn)系統(tǒng)原型,在有限硬件條件下驗(yàn)證了系統(tǒng)的功能及可行性。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定,實(shí)驗(yàn)數(shù)據(jù)可靠有效,可以有效結(jié)合電子地圖數(shù)據(jù)提取出周邊的位置信息。
Abstract:
Key words :

摘   要: 為解決盲用定位模塊在嵌入式平臺(tái)下實(shí)現(xiàn)的問(wèn)題,根據(jù)串口通信同步方式實(shí)現(xiàn)Windows CE 5.0操作系統(tǒng)下GPS導(dǎo)航數(shù)據(jù)的提取,并對(duì)獲得的數(shù)據(jù)提出一種格式轉(zhuǎn)換的方法。以PXA270嵌入式系統(tǒng)平臺(tái)實(shí)現(xiàn)系統(tǒng)原型,在有限硬件條件下驗(yàn)證了系統(tǒng)的功能及可行性。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定,實(shí)驗(yàn)數(shù)據(jù)可靠有效,可以有效結(jié)合電子地圖數(shù)據(jù)提取出周邊的位置信息。
關(guān)鍵詞: Windows CE; GPS; 串口通信; 同步方式

    Windows CE 是一個(gè)開(kāi)放的、可裁剪的、32位實(shí)時(shí)嵌入式窗口操作系統(tǒng),具有可靠性好、實(shí)時(shí)性高、內(nèi)核體積小的特點(diǎn),廣泛應(yīng)用于各種智能式設(shè)備的開(kāi)發(fā)。系統(tǒng)通過(guò)微軟提供的Platform Builder定制需要的Windows CE5.0系統(tǒng),運(yùn)行在硬件平臺(tái)上。硬件平臺(tái)采用博創(chuàng)科技PXA270實(shí)驗(yàn)箱,該實(shí)驗(yàn)箱嵌入式處理器是基于ARMV5E的Xscale核心PXA270,并支持串口通信。
    GPS導(dǎo)航芯片采用天寶iQ 46240,將接收到的數(shù)據(jù)通過(guò)串口發(fā)送給處理器。串口是計(jì)算機(jī)系統(tǒng)與外部串行設(shè)備之間的數(shù)據(jù)傳輸通道,是嵌入式通信最可靠、最通用的通信方式。程序員利用Windows API函數(shù)可以編寫(xiě)出高效、可移植性的應(yīng)用程序。Windows CE不支持Windows下常用的串行通信異步I/O方式(Overlapped,非阻塞),因此在嵌入式環(huán)境下采用了同步I/O方式的通信程序設(shè)計(jì)方法。
    實(shí)驗(yàn)設(shè)計(jì)根據(jù)GPS導(dǎo)航數(shù)據(jù)有效性確認(rèn)的標(biāo)準(zhǔn),對(duì)提取的數(shù)據(jù)進(jìn)行處理,把緩存中接收到的GPS數(shù)據(jù)格式轉(zhuǎn)化為電子地圖上常用的浮點(diǎn)型格式。此設(shè)計(jì)已應(yīng)用于智能閱讀器盲用定位模塊中。
1 串口通信同步I/O方式的程序設(shè)計(jì)
    串口通信是串行通信的一種,串行通信的模式一般分為上位機(jī)和下位機(jī)通信。上位機(jī)可以讀取下位機(jī)的狀態(tài)數(shù)據(jù),也可以設(shè)置下位機(jī)的狀態(tài)。一般串行通信協(xié)議可分為兩類,即讀和寫(xiě)。讀寫(xiě)協(xié)議的描述如圖1所示,常用的效驗(yàn)碼有異或、累加和、CRC等[1]。

    在實(shí)驗(yàn)設(shè)計(jì)中,GPS接收裝置作為下位機(jī)只負(fù)責(zé)提供固定格式的數(shù)據(jù),實(shí)驗(yàn)箱作為上位機(jī)不必發(fā)送指令,只負(fù)責(zé)定時(shí)讀取GPS接收裝置發(fā)送的數(shù)據(jù)。即可以簡(jiǎn)化通信協(xié)議,提高工作效率。
1.1 設(shè)計(jì)開(kāi)發(fā)環(huán)境
    在Windows NT/ME環(huán)境下安裝eVC4.0編程環(huán)境,設(shè)置順序如下:
    (1)安裝同步軟件Microsoft ActiveSync 4.0;
    (2)安裝eVC4.0;
    (3)利用PB(Platform Builder5.0)定制Wince系統(tǒng)對(duì)應(yīng)的SDK并安裝;
    (4)利用PB將定制的wince系統(tǒng)下載到實(shí)驗(yàn)箱上,并與PC機(jī)同步[2]。
1.2 同步I/O方式讀取的設(shè)計(jì)方法
     為完成串口通信同步I/O方式程序設(shè)計(jì),分為三個(gè)部分,每個(gè)部分有一個(gè)函數(shù)完成其對(duì)應(yīng)的功能[3]。函數(shù)原型為:
     OnOpenCom();                                          //打開(kāi)并設(shè)置串口
     ReadThreadFunc(LPVOID lparam);          //串口接收線程
     OnSeriesRead(CWnd *pWnd, BYTE *buf, int bufLen);
                                                                      //串口接收數(shù)據(jù)成功回調(diào)函數(shù)
    串口接收的具體流程圖如圖2所示,圖中對(duì)應(yīng)了串口設(shè)置的三個(gè)功能函數(shù)。

1.3 程序設(shè)計(jì)的核心代碼實(shí)現(xiàn)
1.3.1 打開(kāi)并設(shè)置通信串口參數(shù)

    以同步讀取方式打開(kāi)串口COM1
    m_hComm=CreateFile(_T("COM1:"), GENERIC_READ|GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL);
         //配置串口,得到打開(kāi)串口的當(dāng)前屬性參數(shù),修改后再重新設(shè)置串口。
    DCB portDCB;
    portDCB.DCBlength=sizeof(DCB);            //DCB結(jié)構(gòu)大小
         portDCB.BaudRate=CBR_4800;                  //波特率
       portDCB.ByteSize=8;                                     //字符位
         portDCB.Parity=NOPARITY;                     //奇偶校驗(yàn)位
         portDCB.StopBits=ONESTOPBIT;                      //停止位
                                       //設(shè)置串口讀寫(xiě)時(shí)間,配置超時(shí)
    COMMTIMEOUTS CommTimeouts;
    GetCommTimeouts(m_hComm,&CommTimeouts);
    CommTimeouts.ReadIntervalTimeout= MAXDWORD;
    CommTimeouts.ReadTotalTimeoutMultiplier=0;
    CommTimeouts.ReadTotalTimeoutConstant=0;
                                              //指定端口監(jiān)測(cè)的事件集
    SetCommMask (m_hComm, EV_RXCHAR);
                                                       //分配設(shè)備緩沖區(qū)
    SetupComm(m_hComm,512,512);
                                             //初始化緩沖區(qū)中的信息
    PurgeComm(m_hComm,PURGE_TXCLEAR|PURGE_
          RXCLEAR);
        m_hReadCloseEvent=CreateEvent(NULL,TRUE,FALSE,
       NULL);
1.3.2 GPS定位信息的接收
     在成功打開(kāi)并設(shè)置通信口后,在主程序中創(chuàng)建線程函數(shù)ReadThreadFunc(LPVOID lparam):
     //創(chuàng)建串口接收線程
    hRecvThread=CreateThread(0, 0, CommRecvTread, this, 0, &IDThread);
    然后在線程函數(shù)中采取事件觸發(fā)方式進(jìn)行接收處理,通過(guò)等待EV_RXCHAR事件的發(fā)生來(lái)啟動(dòng)ReadFile函數(shù)完成對(duì)GPS定位信息的接收:
         while (TRUE){
         if (evtMask & EV_RXCHAR){
    ClearCommError(m_hComm,&dwReadErrors,&cmState);
    willReadLen = cmState.cbInQue ;
                 //接收緩沖區(qū)中存儲(chǔ)的待讀取的字符數(shù)
    readBuf = new BYTE[willReadLen+1];
    ReadFile(m_hComm,readBuf,willReadLen,&actualReadLen,0);
         readBuf[willReadLen]=0;        //如果讀取的數(shù)據(jù)大于0,
    if (actualReadLen>0){                   //觸發(fā)讀取回調(diào)函數(shù)        m_OnSeriesRead(ceSeries->m_pPortOwner,readBuf,actualReadLen); }}
    如果收到讀線程退出信號(hào),則退出線程
    if(WaitForSingleObject(ceSeries->m_hReadCloseEvent,500) == WAIT_OBJECT_0) break;
2 對(duì)導(dǎo)航數(shù)據(jù)的格式進(jìn)行處理
     對(duì)于實(shí)驗(yàn)中所使用的iQ46240接收芯片,其發(fā)送到計(jì)算機(jī)的數(shù)據(jù)(采用NEMA0183語(yǔ)句)主要由幀頭、幀尾和幀內(nèi)數(shù)據(jù)組成。根據(jù)數(shù)據(jù)幀的不同,幀頭也不相同,主要有“$GPGGA”、“$GPGSA”、“$GPRMC”等。這些幀頭標(biāo)識(shí)了后續(xù)幀內(nèi)數(shù)據(jù)的組成結(jié)構(gòu),各幀均以回車(chē)符和換行符作為幀尾識(shí)別一幀的結(jié)束。本文中,定位數(shù)據(jù)經(jīng)緯度、速度、時(shí)間等均可以從“$GPGGA”幀中獲取得到。該幀的結(jié)構(gòu)及各字段釋義如下[4]:
    $GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10,<11>,<12>,<13>,<14>*hh
     <1>當(dāng)前位置的格林尼治時(shí)間
     <2>緯度值
     <3>緯度標(biāo)識(shí),N或者S(南北)
     <4>經(jīng)度值
     <5>經(jīng)度標(biāo)識(shí),E或者W(東西)
     <6>衛(wèi)星接收信號(hào)質(zhì)量
     <7>正在使用衛(wèi)星的數(shù)量
2.1 GPS導(dǎo)航數(shù)據(jù)有效性確認(rèn)標(biāo)準(zhǔn)
    GPS定位的基本原理是根據(jù)高速運(yùn)動(dòng)衛(wèi)星的瞬間位置作為已知的起算數(shù)據(jù),采用空間距離后方交會(huì)的方法確定待測(cè)點(diǎn)的位置。假設(shè)t時(shí)刻在地面待測(cè)點(diǎn)安置GPS接收機(jī),可以測(cè)定GPS信號(hào)到達(dá)接收機(jī)的時(shí)間,加上接收機(jī)所接收到的衛(wèi)星星歷等其他數(shù)據(jù)可以確定以下4個(gè)方程式。衛(wèi)星定位示意圖如圖3所示。



    xi,yi,zi(i=1,2,3,4)分別代表衛(wèi)星1、2、3、4在t時(shí)刻的空間直角坐標(biāo),可由衛(wèi)星導(dǎo)航電文求得,Vti代表衛(wèi)星鐘差,Vt0為接收機(jī)的鐘差。
    由以上4個(gè)方程式可計(jì)算出待測(cè)點(diǎn)的坐標(biāo)x、y、z和接收機(jī)的鐘差Vt0。因此導(dǎo)航數(shù)據(jù)能夠有效計(jì)算必須保證接收到4個(gè)衛(wèi)星的星歷。對(duì)固定格式的導(dǎo)航電碼中提取衛(wèi)星符號(hào)進(jìn)行確認(rèn),如果滿足4個(gè)衛(wèi)星的接收狀態(tài)即可確定當(dāng)前接收的導(dǎo)航電碼可用于數(shù)據(jù)處理。通常,3顆衛(wèi)星可以在二維平面上得到經(jīng)度緯度坐標(biāo),為精確起見(jiàn),4顆衛(wèi)星可以保證獲得三維空間坐標(biāo)。
2.2 有效數(shù)據(jù)提取和數(shù)據(jù)格式轉(zhuǎn)化  
 有效數(shù)據(jù)的提取和數(shù)據(jù)格式轉(zhuǎn)化都是在回調(diào)函數(shù)中進(jìn)行的[5]。幀內(nèi)各數(shù)據(jù)段由逗號(hào)分割,因此在處理緩存數(shù)據(jù)時(shí),可以通過(guò)搜索ASCII碼“$”來(lái)判斷是否是幀頭。對(duì)幀頭類別進(jìn)行識(shí)別后,再通過(guò)對(duì)所經(jīng)歷逗號(hào)的個(gè)數(shù)計(jì)數(shù)來(lái)判斷當(dāng)前處理的是哪一種定位導(dǎo)航參數(shù),并做相應(yīng)的處理。eVC支持CString類型格式,由于定位信息格式固定,本文先利用mbstowcs函數(shù)將緩存中的字符型數(shù)據(jù)轉(zhuǎn)換為寬字符型,然后強(qiáng)制轉(zhuǎn)化為字符串類型。
    WCHAR wszbuf[512];
    mbstowcs(wszbuf,(char*)buf,strlen((char*)buf));字符串類型進(jìn)行處理,然后利用Find函數(shù),搜索"$GPGGA",
         strRecv.Find(_T("$GPGGA"),1);
         state=strRecv.Mid(pos+37,1);
         得到GPS 質(zhì)量指示指標(biāo)
         strSatelliteNum=strRecv.Mid(pos+39,1) ;
     得到接收到的衛(wèi)星數(shù)量字符,將衛(wèi)星數(shù)量字符型轉(zhuǎn)化為整型判斷衛(wèi)星數(shù)量是否大于4,作為判斷是否為有效數(shù)據(jù)的標(biāo)準(zhǔn)。
     int iSatelliteNum=atoi((LPSTR)(LPCTSTR)strSatelliteNum);
     當(dāng)iSatelliteNum>3&& state = =‘1’時(shí)說(shuō)明接收到的是有效數(shù)據(jù),可對(duì)strRecv中的數(shù)據(jù)進(jìn)行提取,并賦給經(jīng)緯度和時(shí)間變量。
     strLatitude =strRecv.Mid(pos+16,8);
     strLongitude=strRecv. Mid(pos+27,9);
     將提取到得經(jīng)度緯度字符型數(shù)據(jù)轉(zhuǎn)化為浮點(diǎn)型數(shù)據(jù),通過(guò)atof函數(shù)實(shí)現(xiàn)。
    double Longitude_new = (atof(strLongitude))/100;
    double Latitude_new = (atof(strLatitude))/100;
    這樣將經(jīng)度緯度信息提取到GPS結(jié)構(gòu)數(shù)組中,后續(xù)的處理和高層決策可根據(jù)該結(jié)構(gòu)中存儲(chǔ)的數(shù)據(jù)作出相應(yīng)的處理。
3 程序運(yùn)行結(jié)果分析
    程序運(yùn)行后,在實(shí)驗(yàn)平臺(tái)上收集的部分?jǐn)?shù)據(jù)如表1所示。

    對(duì)以上結(jié)果分析,可知通過(guò)串口在不同時(shí)段接收的數(shù)據(jù)是比較穩(wěn)定的,能夠以此為基礎(chǔ)提取到有效的數(shù)據(jù)和定位信息,本系統(tǒng)結(jié)合超圖格式(pwr,pmw)的北京市公交站點(diǎn)地圖數(shù)據(jù),在編寫(xiě)程序時(shí)調(diào)用超圖接口函數(shù)打開(kāi)電子地圖數(shù)據(jù),將串口接收到的數(shù)據(jù)讀入,得到附近的公交站點(diǎn)并以文本方式輸出到界面。
    本文結(jié)合相關(guān)程序代碼陳述了基于eVC環(huán)境下串口通信程序的設(shè)計(jì),對(duì)GPS全球定位系統(tǒng)定位信息的接收和數(shù)據(jù)提取進(jìn)行了詳細(xì)的分析和討論。主要解決了EVC編程環(huán)境下實(shí)現(xiàn)串口通信功能、對(duì)GPS定位信息的提取和處理的問(wèn)題。實(shí)驗(yàn)對(duì)wince5.0自定義平臺(tái)下開(kāi)發(fā)GPS接收裝置給出了代碼樣例供參考,并已應(yīng)用于智能閱讀器項(xiàng)目中盲用定位模塊。
參考文獻(xiàn)
[1] 張文軍.GPS與嵌入式系統(tǒng)軟硬件接口及導(dǎo)航信息提取軟件[J].計(jì)算機(jī)工程,2005,31(18):210-212.
[2] 張冬泉,譚南林,蘇樹(shù)強(qiáng).WindowsCE實(shí)用開(kāi)發(fā)技術(shù)[M]. 北京:電子工業(yè)出版社,2009.
[3] 錢(qián)燕,張繼鋒.基于EVC環(huán)境的串口通信程序設(shè)計(jì)[J].科學(xué)技術(shù)與工程.2007,7(10):2361-2364.
[4] 翟羽佳,張曉林,李宏偉.基于Wince的GPS導(dǎo)航信息處理軟件的實(shí)現(xiàn)[J].電子測(cè)量技術(shù).2007,30(10):93-95.
[5] 李現(xiàn)勇.Visual c++串口通信技術(shù)與工程實(shí)踐[M].北京:人民郵電出版社,2004.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产精品成人综合色在线婷婷| 亚洲午夜三级在线| 一区二区三区国产| 亚洲精品日韩在线观看| 伊人精品成人久久综合软件| 国产啪精品视频| 国产精品女主播在线观看| 欧美三级日韩三级国产三级| 欧美日韩视频一区二区| 欧美另类视频在线| 欧美激情小视频| 欧美精品久久一区| 欧美日韩18| 欧美日韩中文在线| 欧美日韩亚洲激情| 欧美日韩一区在线播放| 欧美视频国产精品| 欧美色图一区二区三区| 欧美体内谢she精2性欧美| 欧美视频免费在线观看| 国产精品草草| 国产目拍亚洲精品99久久精品 | 亚洲美女在线国产| 亚洲最新色图| 亚洲视频你懂的| 性做久久久久久| 久久精品道一区二区三区| 亚洲国产欧美一区二区三区同亚洲| 亚洲高清视频在线观看| 亚洲欧洲日本国产| 一区二区三区精品在线| 亚洲欧美日韩国产精品| 欧美专区亚洲专区| 美女91精品| 欧美日韩综合在线免费观看| 国产精品福利片| 国产手机视频精品| 在线欧美视频| 亚洲裸体视频| 亚洲女人天堂成人av在线| 欧美一区二区| 亚洲精品综合精品自拍| 亚洲女人av| 久久人人爽人人| 欧美—级高清免费播放| 国产精品蜜臀在线观看| 黄色一区二区在线| 亚洲毛片一区| 亚洲一卡久久| 亚洲大片免费看| 中文国产成人精品久久一| 欧美亚洲视频在线看网址| 久久久亚洲精品一区二区三区| 欧美福利专区| 国产精品美女在线| 136国产福利精品导航网址应用| 99精品视频一区二区三区| 欧美一级黄色录像| 一本色道久久综合精品竹菊| 欧美影院久久久| 欧美成人精精品一区二区频| 欧美午夜精品久久久久免费视| 国产在线不卡精品| 亚洲精品日韩在线观看| 午夜伦理片一区| 亚洲精品一区二区三区在线观看| 亚洲一区二区三区在线看| 久久久综合网站| 欧美三级电影精品| 国产在线观看精品一区二区三区 | 久久精品理论片| 欧美人交a欧美精品| 国产一区二区三区奇米久涩| 亚洲精品乱码久久久久久蜜桃91| 亚洲欧美在线免费| 一区二区三区免费看| 久久xxxx| 国产精品久久波多野结衣| 亚洲第一狼人社区| 亚洲欧美中文日韩v在线观看| 99综合在线| 麻豆精品精华液| 国产欧美一区二区三区久久人妖| 91久久久久久久久| 亚洲一区二区少妇| 亚洲破处大片| 久久久999| 国产精品欧美日韩| 亚洲精品一区二区三区福利| 亚洲国产精品一区| 久久激情五月婷婷| 国产精品草草| 亚洲美女中出| 亚洲精品中文字幕在线观看| 久久性色av| 国产手机视频一区二区| 亚洲一区二区高清视频| 夜夜夜精品看看| 欧美韩国日本综合| 极品中文字幕一区| 久久成人亚洲| 久久精品视频播放| 国产精品久久一卡二卡| 日韩一二三在线视频播| 亚洲精品久久久久久下一站 | 亚洲欧美日韩精品| 欧美日韩国产色站一区二区三区| 尤物网精品视频| 久久精品国产精品亚洲| 久久久久久久性| 国产欧美精品xxxx另类| 国产精品99久久久久久久vr| 亚洲神马久久| 欧美日韩亚洲综合一区| 日韩西西人体444www| 宅男66日本亚洲欧美视频| 欧美精品在线观看一区二区| 伊人久久成人| 亚洲国产精品第一区二区三区| 久久男女视频| 揄拍成人国产精品视频| 亚洲高清视频中文字幕| 免费日韩成人| 亚洲经典三级| 91久久精品美女| 欧美精品一区三区| 99re6这里只有精品视频在线观看| 夜夜嗨av一区二区三区中文字幕| 欧美日韩一区二区三区在线视频 | 一区二区三区波多野结衣在线观看| 一区二区毛片| 欧美无乱码久久久免费午夜一区| 一区二区三区四区五区视频| 亚洲免费一在线| 国产精品永久免费视频| 欧美一区二区三区久久精品茉莉花 | 国产日韩精品一区二区三区| 午夜亚洲影视| 久久婷婷丁香| 亚洲黄色视屏| 亚洲一区不卡| 国产老肥熟一区二区三区| 欧美一区综合| 欧美va亚洲va国产综合| 91久久精品国产91性色tv| 一本色道久久综合亚洲精品高清| 欧美午夜精品久久久久免费视| 亚洲欧美在线一区二区| 久久中文字幕导航| 亚洲欧洲精品一区二区三区波多野1战4| 99热免费精品在线观看| 国产精品久久网站| 久久精品国产亚洲精品| 欧美大胆a视频| 亚洲视频久久| 久久久久久亚洲综合影院红桃| 亚洲欧洲精品一区二区| 亚洲欧美精品在线观看| 国产私拍一区| 99天天综合性| 国产日产亚洲精品| 亚洲人成久久| 国产精品久久亚洲7777| 久久国产精品一区二区三区四区| 蜜桃av一区二区三区| 日韩视频精品在线观看| 羞羞色国产精品| 亚洲国产色一区| 午夜欧美视频| 亚洲国产成人porn| 亚洲一二区在线| 韩国av一区二区三区| 亚洲午夜国产一区99re久久| 国产婷婷一区二区| 亚洲麻豆国产自偷在线| 国产日韩欧美三区| 一区二区三区日韩欧美精品| 国产午夜亚洲精品羞羞网站| 日韩视频永久免费| 国产亚洲日本欧美韩国| 一区二区三欧美| 国内在线观看一区二区三区| 一本色道久久88精品综合| 国产综合久久久久久| 亚洲香蕉成视频在线观看 | 99re亚洲国产精品| 国产日韩精品电影| 亚洲视频欧洲视频| 在线成人免费视频| 欧美一级淫片播放口| 亚洲美女91| 美女日韩欧美| 小处雏高清一区二区三区| 欧美日韩亚洲一区二区三区四区| 亚洲国产福利在线| 国产精品欧美日韩| 一区二区三区视频在线| 在线电影国产精品| 久久免费精品视频| 亚洲在线观看|