91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

智嵌物聯(lián)ZQWL可編程串口IO控制器(略懂C語言即可使用)

智嵌物聯(lián)ZQWL ? 2022-02-19 11:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

  1. 概述

智嵌物聯(lián)串口IO模塊提供了用戶編程接口,增強(qiáng)了應(yīng)用的靈活性,簡化了用戶的編程的難度,縮短了開發(fā)產(chǎn)品的周期;用戶不需要了解IO板卡底層驅(qū)動,只需將控制邏輯和通訊協(xié)議嵌入其中即可。

串口IO模塊提供keil開發(fā)環(huán)境下的函數(shù)庫,功能強(qiáng)大,使用方便。開發(fā)人員只需略懂C語言(提供詳盡技術(shù)指導(dǎo)和咨詢)就可以在本司串口IO平臺上開發(fā)所需功能。

  1. 開關(guān)量相關(guān)函數(shù)
    1. Write_Relay函數(shù)

函數(shù)原型如下:

poYBAGIQXymAXiQgAACF3bMkkFM425.png

該函數(shù)需被其他函數(shù)調(diào)用才能使用。

舉例:

Write_Relay(0,1);//閉合第一路繼電器的常開觸點,斷開常閉觸點。

Write_Relay(1,0);//斷開第二路繼電器的常閉觸點,打開常開觸點。

在使用過程中,注意傳入的參數(shù)(channel,status)不能出錯,channel的范圍為0到N,N為控制板IO輸出點個數(shù);status的值只能為0或1。參數(shù)超出定義范圍時,函數(shù)將返回錯誤信息。

  1. Read_Relay函數(shù)

函數(shù)原型如下:

pYYBAGIQXymAU63LAAB1sbz1Bdc328.png

該函數(shù)需被其他函數(shù)調(diào)用才能使用。

舉例:

unsigned char temp = 0;

temp =Read_Relay(0);//讀取第一路的輸出狀態(tài)并將結(jié)果賦給temp。

temp =Read_Relay(3);//讀取第四路的輸出狀態(tài)并將結(jié)果賦給temp。

然后根據(jù)temp的值即可判斷當(dāng)前IO輸出的狀態(tài):

temp為0則:常開觸點斷開,常閉觸點閉合。

temp為1則:常閉觸點斷開,常開觸點閉合。

temp為2則:傳入的參數(shù)channel錯誤。

temp為3則:其他未知錯誤。

  1. 開關(guān)量輸入相關(guān)函數(shù)
    1. Read_IN函數(shù)

函數(shù)原型如下:

poYBAGIQXymAVRsXAABbj1s6a6s531.png

該函數(shù)需被其他函數(shù)調(diào)用才能使用。

舉例:

unsigned char temp = 0;

temp =Read_IN(0);//讀取第一路的輸入狀態(tài)并將結(jié)果賦給temp。

temp =Read_Relay(3);//讀取第四路的輸入狀態(tài)并將結(jié)果賦給temp。

然后根據(jù)temp的值即可判斷當(dāng)前IO輸入的狀態(tài):

temp為0則:該路為無信號輸入(邏輯值為0,低電平)。

temp為1則:該路為有信號輸入(邏輯值為1,高電平)。

temp為2則:傳入的參數(shù)channel錯誤。

  1. 串口通訊相關(guān)函數(shù)

智嵌物聯(lián)雙串口IO控制板均有RS232RS485接口,這兩種接口可以獨立使用。

串口接收緩沖器以及緩沖器大小在“ZQWL_IO_xBNRRx.h”文件中有定義:

poYBAGIQXymAeBaOAAAg7xzgwIc760.png
  1. RS232_Init函數(shù)

函數(shù)原型如下:

pYYBAGIQXyqAJ5L-AAC40ya62XI506.png

該函數(shù)為RS232串口初始化函數(shù),如果要使用RS232通訊功能,必須調(diào)用該函數(shù)來初始化通訊相關(guān)參數(shù)。

舉例:

pYYBAGIQXyqATlHSAAAJX7g4oOg080.png

注意該函數(shù)的第三個參數(shù)parity,必須為以下三種:

poYBAGIQXyuAWQ6zAAADgx7TV4I798.png

如果該函數(shù)調(diào)用成功則返回值為0,否則返回相應(yīng)的錯誤信息。

  1. RS485_Init函數(shù)

函數(shù)原型如下:

poYBAGIQXyuAdDF2AAC55-Cad34746.png

該函數(shù)為RS485串口初始化函數(shù),如果要使用RS485通訊功能,必須調(diào)用該函數(shù)來初始化通訊相關(guān)參數(shù)。

舉例:

poYBAGIQXyuAG62XAAAJmpdRkFg714.png

注意該函數(shù)的第三個參數(shù)parity,必須為以下三種:

。

如果該函數(shù)調(diào)用成功則返回值為0,否則返回相應(yīng)的錯誤信息。

  1. RS232_Send_Data函數(shù)

函數(shù)原型如下:

pYYBAGIQXyuAI045AABQJzCOlSQ024.png

該函數(shù)為串口發(fā)送函數(shù),調(diào)用該函數(shù)前必須正確調(diào)用RS232_Init()函數(shù)。

舉例1,直接發(fā)送字符串:

RS232_Send_Data("1234567890",10);

舉例2,將數(shù)組中數(shù)據(jù)發(fā)送出去:

unsigned char temp[10];

RS232_Send_Data(temp,10);

  1. RS485_Send_Data函數(shù)

函數(shù)原型如下:

pYYBAGIQXyuAVEfhAABRCq7kB8U390.png

該函數(shù)為串口發(fā)送函數(shù),調(diào)用該函數(shù)前必須正確調(diào)用RS485_Init()函數(shù)。

舉例1,直接發(fā)送字符串:

RS485_Send_Data("1234567890",10);

舉例2,將數(shù)組中數(shù)據(jù)發(fā)送出去:

unsigned char temp[10];

RS485_Send_Data(temp,10);

  1. RS232_Recv_Handler函數(shù)

函數(shù)原型如下:

poYBAGIQXyuARtC0AACQJOUVd2w806.png

該函數(shù)為類似中斷函數(shù),不能被其他函數(shù)調(diào)用。必須在正確調(diào)用RS232_Init()函數(shù)后該函數(shù)才能生效。建議在該函數(shù)中首先將buff中的數(shù)據(jù)復(fù)制出來,然后退出,在別的函數(shù)中進(jìn)行數(shù)據(jù)的處理。

舉例:

pYYBAGIQXyyAfhF5AAAl3qnsjvk987.png
  1. RS485_Recv_Handler函數(shù)

函數(shù)原型如下:

poYBAGIQXyyAF0mMAACOt9MbdL8662.png

該函數(shù)為類似中斷函數(shù),不能被其他函數(shù)調(diào)用。必須在正確調(diào)用RS485_Init()函數(shù)后該函數(shù)才能生效。建議在該函數(shù)中首先將buff中的數(shù)據(jù)復(fù)制出來,然后退出,在別的函數(shù)中進(jìn)行數(shù)據(jù)的處理。

舉例:

poYBAGIQXyyAdb69AAAjqCZYHEk125.png
  1. 系統(tǒng)指示燈相關(guān)函數(shù)

該系列控制板有1個系統(tǒng)LED指示燈,可以用來指示系統(tǒng)運行的狀態(tài)。

  1. RUN_LED_Toggle函數(shù)

函數(shù)原型如下:

pYYBAGIQXyyAMyZhAABNziPgoco773.png

此函數(shù)實現(xiàn)系統(tǒng)LED的狀態(tài)翻轉(zhuǎn)功能(調(diào)用后原來熄滅則會點亮,原來點亮則會熄滅)。

舉例:

RUN_LED_Toggle();//調(diào)用后,指示燈狀態(tài)翻轉(zhuǎn)。

  1. RUN_LED_ON函數(shù)

函數(shù)原型如下:

pYYBAGIQXyyANOnkAABKJCT4kDI349.png

舉例:

RUN_LED_ON();//點亮系統(tǒng)LED指示燈

  1. RUN_LED_OFF函數(shù)

函數(shù)原型如下:

poYBAGIQXyyANPPSAABKaON2I1M934.png

舉例:

RUN_LED_OFF();//熄滅系統(tǒng)LED指示燈

  1. 延時相關(guān)函數(shù)
    1. Delay_ms函數(shù)

函數(shù)原型如下:

pYYBAGIQXy2APC66AABDF9N_hJY181.png

舉例:

Delay_ms(500);//延時500毫秒。

Delay_ms(2000);//延時2000毫秒。

  1. Delay_us函數(shù)

函數(shù)原型如下:

poYBAGIQXy2AEBANAABRSBGt4sA051.png

舉例:

Delay_us(500);//延時500微秒。

Delay_us(999);//延時999微秒。

  1. 定時器相關(guān)函數(shù)
    1. Timer_IRQHandler函數(shù)

函數(shù)原型如下:

pYYBAGIQXy2AIKzSAAB1lBK8cPc237.png

該函數(shù)為中斷函數(shù),不能被其他函數(shù)調(diào)用。每隔1ms中斷一次,用戶以此為基礎(chǔ)可以設(shè)計出各種定時服務(wù)功能。例如設(shè)計一個10ms定時服務(wù)功能:

poYBAGIQXy2AGjWrAABV7HPGjtQ878.png
  1. 看門狗相關(guān)函數(shù)
    1. IWDG_Init函數(shù)

函數(shù)原型如下:

pYYBAGIQXy2AJQYtAADJjzsd6uU012.png

舉例:

IWDG_Init(WD_1000MS);//設(shè)置看門狗定時器為1000毫秒。

IWDG_Init(WD_2000MS);//設(shè)置看門狗定時器為2000毫秒。

  1. Feed_Dog函數(shù)

函數(shù)原型如下:

poYBAGIQXy2Ac653AAAqwgAi4-4022.png

如果調(diào)用了IWDG_Init(),那么, Feed_Dog()函數(shù)就必須周期調(diào)用,并且調(diào)用周期必須小于看門狗定時器設(shè)定值。否則,系統(tǒng)將不斷的復(fù)位。

建議在產(chǎn)品開發(fā)階段先不用看門狗功能,產(chǎn)品發(fā)布時再加上此功能。

  1. Flash相關(guān)函數(shù)

該系列控制板均提供128字節(jié)的用戶flash空間,可以用來存放控制板掉電后需要保存的參數(shù),比如波特率,地址碼等。

  1. User_Flash_Write函數(shù)

函數(shù)原型如下:

pYYBAGIQXy6ANQJwAACsPCHrvos325.png

舉例:

poYBAGIQXy6AKmuQAAAftixOKeU309.png
  1. User_Flash_Read函數(shù)

函數(shù)原型如下:

poYBAGIQXy6AQzaaAACdEBaX2AQ388.png

舉例:

pYYBAGIQXy6ABMfJAAAmKw6B5Xo012.png
  1. 系統(tǒng)異常相關(guān)函數(shù)
    1. HardFault_Handler函數(shù)

函數(shù)原型如下:

poYBAGIQXy6AQE5QAABY4XUDn4A871.png

當(dāng)系統(tǒng)有異常時,比如指針操作不當(dāng)、數(shù)組操作不當(dāng)?shù)?,會進(jìn)入此中斷。

  1. 系統(tǒng)復(fù)位相關(guān)函數(shù)
    1. MCU_Soft_Reset函數(shù)

函數(shù)原型如下:

pYYBAGIQXy-AQHRAAABEcZwYkgk065.png

調(diào)用該函數(shù)后,系統(tǒng)將復(fù)位。

  1. CAN相關(guān)函數(shù)

只有控制板硬件具有CAN通訊的版本才支持CAN相關(guān)函數(shù)。

CAN相關(guān)的數(shù)據(jù)結(jié)構(gòu)定義:

poYBAGIQXzCAMtNnAAn_l79TetY226.png
  1. CAN_Configuration函數(shù)
poYBAGIQXy-AaFvTAALmY8GDNBU707.png

使用CAN通訊前必須正確調(diào)用該函數(shù)。

  1. CAN_Recv_IRQHandler函數(shù)
pYYBAGIQXy-ARIigAALgCnER7p8510.png

例如:

pYYBAGIQXzCAanuhAAS0lXg5cls865.png
  1. CAN_Send_Data函數(shù)
poYBAGIQXzCAWbo0AAMMYg8L2Hc267.png
  1. main函數(shù)

該函數(shù)為系統(tǒng)入口函數(shù),提供如下示例:

pYYBAGIQXzCAPNKDAArS0oF0FZ8237.png
  1. 模塊編程
    1. 開發(fā)環(huán)境

該模塊開發(fā)環(huán)境使用keil 5.10版本(其他版本未驗證),有關(guān)keil的使用教程請參考其他開發(fā)文檔,keil5的安裝包在MDK5.zip里面。

在“軟件包”里有該控制板的keil5工程

打開“軟件包”:

pYYBAGIQXzGAUvmjAAAMLPY1U_w270.png

此即為該控制板的工程文件, 打開文件:

poYBAGIQXzGAKzJDAAAI_Bqb03w644.png

打開“Proj”:

pYYBAGIQXzGAJDYnAAA9kkYQ5kY261.png

雙擊上圖中的“pro”,則可以通過keil軟件打開該工程,工程配置如下:

poYBAGIQXzGAB8OcAAH5w5s_O6E180.png

有關(guān)KEIL軟件的使用請自己查找資料學(xué)習(xí)。

工程編譯后會生成一個IO_APP.bin文件(路徑:ZQWL_IO_APP(雙串口+CAN)_V1.2\project\BIN):

poYBAGIQXzGAc9WaAAAQE4j5SXw008.png

如果是其他網(wǎng)絡(luò)模塊,則需要將“xBXRA16_V1.0.lib”從工程中移除,再添加上相對應(yīng)的lib文件即可(路徑在:ZQWL_IO_APP\App):

pYYBAGIQXzGAExM6AAALk31oNxI441.png
  1. 程序下載

智嵌串口IO模塊的固件是通過《智嵌物聯(lián) 串口繼電器控制板固件升級工具》來下載程序的:

pYYBAGIQXzKAFZO8AADIfz_Njy8864.png

點擊上圖的“瀏覽”,將編譯好的IO_APP.bin文件載入軟件,然后點“打開”,接點“開始升級”,即可實現(xiàn)固件的下載,下完成后自動運行:

poYBAGIQXzKAJfLzAACAUhOZa8Y362.png
  1. 程序出錯處理

在調(diào)試程序時難免會出現(xiàn)程序出錯,出錯后可能造成不能直接對模塊進(jìn)行固件下載,這時需要按照如下步驟操作:

第一步:斷電。

第二步:將撥碼開關(guān)全部撥到OFF狀態(tài)(強(qiáng)制進(jìn)入升級固件狀態(tài))。

第三步:上電,此時看到模塊的運行燈快速閃爍,說明進(jìn)入到了固件下載模式,此時就可以對模塊下載固件了。注意此過程中要保證撥碼開關(guān)一直全OFF狀態(tài)。

注意,智嵌物聯(lián)網(wǎng)ZQWL的部分網(wǎng)絡(luò)IO控制器也支持編程功能,如型號ZQWL-NET8880M,Smart IO,該類產(chǎn)品功能更強(qiáng)大。除此之外,智嵌物聯(lián)ZQWL新推出的Smart GW串口服務(wù)器也具有編程功能,該類產(chǎn)品通訊接口支持4G,網(wǎng)口,WIFI,CAN,RS485等,部分產(chǎn)品也具有IO擴(kuò)展功能,性能更強(qiáng)大,使用更方便。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • IO控制器
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    7750
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    新品|CoreS3-Lite,可編程聯(lián)網(wǎng)控制器

    CoreS3-Lite是一款集成豐富外設(shè)的可編程聯(lián)網(wǎng)控制器。采用ESP32-S3核心主控,搭載240MHzXtensa32位LX7雙核處理,板載16MBFlash和8MBPSRAM
    的頭像 發(fā)表于 07-18 17:52 ?514次閱讀
    新品|CoreS3-Lite,<b class='flag-5'>可編程</b><b class='flag-5'>物</b>聯(lián)網(wǎng)<b class='flag-5'>控制器</b>

    TIA 博途與SIMATIC S7-1500可編程控制器選型手冊

    電子發(fā)燒友網(wǎng)站提供《TIA 博途與SIMATIC S7-1500可編程控制器選型手冊.pdf》資料免費下載
    發(fā)表于 07-17 15:26 ?0次下載

    聯(lián)串口轉(zhuǎn)光纖轉(zhuǎn)換-延長串口通信距離,增強(qiáng)抗干擾性能

    聯(lián)研發(fā)的串口光纖收發(fā)是將RS-485/422/RS232接口信號轉(zhuǎn)換為光纖接口傳輸,通信距離可達(dá)20Km,大大延長
    的頭像 發(fā)表于 06-27 17:08 ?125次閱讀
    智<b class='flag-5'>嵌</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)</b><b class='flag-5'>串口</b>轉(zhuǎn)光纖轉(zhuǎn)換<b class='flag-5'>器</b>-延長<b class='flag-5'>串口</b>通信距離,增強(qiáng)抗干擾性能

    H5U系列可編程邏輯控制器指令手冊

    INOVANCE匯川-H5U系列可編程邏輯控制器指令手冊-中文
    發(fā)表于 04-30 16:38 ?0次下載

    可編程邏輯控制器PLC聯(lián)網(wǎng)平臺有哪些功能

    可編程邏輯控制器(PLC)聯(lián)網(wǎng)平臺具有以下功能: 數(shù)據(jù)采集與傳輸 實時數(shù)據(jù)采集:通過連接傳感和執(zhí)行,實時采集工業(yè)過程中的各種數(shù)據(jù),如溫
    的頭像 發(fā)表于 04-01 09:16 ?262次閱讀

    聯(lián)網(wǎng)可編程中央控制主機(jī)的主要功能描述

    聯(lián)網(wǎng)可編程中央控制主機(jī)GF-MAXCC確實是一種功能強(qiáng)大、智能化的設(shè)備,它能夠在聯(lián)網(wǎng)系統(tǒng)中發(fā)揮關(guān)鍵作用,集中管理和控制各種設(shè)備。
    的頭像 發(fā)表于 01-24 14:55 ?393次閱讀

    TMS320C6000 DSP軟件可編程鎖相環(huán)控制器指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000 DSP軟件可編程鎖相環(huán)控制器指南.pdf》資料免費下載
    發(fā)表于 12-24 16:54 ?0次下載
    TMS320<b class='flag-5'>C</b>6000 DSP軟件<b class='flag-5'>可編程</b>鎖相環(huán)<b class='flag-5'>控制器</b>指南

    PLC可編程控制器的簡介

    PLC的英文全稱為Programmable Logic Controller,也就是可編程序控制器。它是一種將計算機(jī)技術(shù)與繼電器技術(shù)結(jié)合起來的現(xiàn)代化自動控制裝置,1969年,美國數(shù)字化設(shè)備公司研制出
    的頭像 發(fā)表于 12-23 09:09 ?1173次閱讀

    可編程電阻焊控制器:智能化工業(yè)焊接新解決方案探究

    隨著現(xiàn)代工業(yè)化進(jìn)程的不斷加快和智能制造理念的深入推廣,可編程電阻焊控制器作為一種前沿技術(shù)裝備,正逐漸嶄露頭角,為實現(xiàn)高效、精準(zhǔn)、智能的焊接工藝提供了全新的解決方案。本文將對這一創(chuàng)新技術(shù)進(jìn)行深度探索
    的頭像 發(fā)表于 12-05 09:47 ?763次閱讀

    禾川高性能可編程控制器M系列產(chǎn)品介紹

    禾川推出M系列高性能可編程控制器,以卓越性能助力智能化升級,支持多任務(wù)管理、多種軸控方式,適用于光伏、3C、機(jī)器人等多行業(yè)。
    的頭像 發(fā)表于 11-19 14:31 ?973次閱讀
    禾川高性能<b class='flag-5'>可編程控制器</b>M系列產(chǎn)品介紹

    可編程晶振的優(yōu)點和缺點

    的靈活性和可調(diào)整性,使得在多種電子產(chǎn)品設(shè)計過程中能夠精確地匹配所需的時鐘信號?。可編程晶振是一種能夠通過外部編程器對其頻率進(jìn)行調(diào)整的晶體振蕩。它采用先進(jìn)的數(shù)字信
    的頭像 發(fā)表于 09-30 10:44 ?871次閱讀
    <b class='flag-5'>可編程</b>晶振的優(yōu)點和缺點

    可編程邏輯控制器——安全威脅和解決方案

    電子發(fā)燒友網(wǎng)站提供《可編程邏輯控制器——安全威脅和解決方案.pdf》資料免費下載
    發(fā)表于 09-14 09:57 ?0次下載
    <b class='flag-5'>可編程</b>邏輯<b class='flag-5'>控制器</b>——安全威脅和解決方案

    用TMAG5328電阻和電壓可編程霍爾效應(yīng)開關(guān)實現(xiàn)可編程性和診斷

    電子發(fā)燒友網(wǎng)站提供《用TMAG5328電阻和電壓可編程霍爾效應(yīng)開關(guān)實現(xiàn)可編程性和診斷.pdf》資料免費下載
    發(fā)表于 09-11 10:01 ?0次下載
    用TMAG5328電阻<b class='flag-5'>器</b>和電壓<b class='flag-5'>可編程</b>霍爾效應(yīng)開關(guān)實現(xiàn)<b class='flag-5'>可編程</b>性和診斷

    可編程控制器在自動化控制領(lǐng)域有哪些應(yīng)用?

    ? ? ? ? 可編程控制器(Programmable Logic Controller,PLC)是一種數(shù)字化的工業(yè)控制設(shè)備,通常用于自動化生產(chǎn)線和機(jī)器。它可以通過編寫程序?qū)斎胼敵鲞M(jìn)行邏輯處理
    的頭像 發(fā)表于 09-09 18:00 ?1197次閱讀

    plc編程st語言怎么編

    PLC(可編程邏輯控制器編程中的ST(Structured Text)語言是一種高級編程語言,
    的頭像 發(fā)表于 08-25 10:05 ?2839次閱讀
    主站蜘蛛池模板: 扒开双腿猛进入jk校视频 | 四虎永久网址影院 | 天天操天天玩 | 拍拍拍拍拍拍拍无挡大全免费 | 精品三级视频 | 国产亚洲人成a在线v网站 | 午夜免费理论片在线看 | 婷婷国产| 免费一级毛片无毒不卡 | 91久久国产青草亚洲 | 国产精品久久福利网站 | 成人综合在线视频 | 黑人边吃奶边扎下面激情视频 | 国产欧美日韩视频免费61794 | 午夜视频在线看 | 国产三级观看久久 | 色多多在线观看播放 | 午夜神马 | 桃花色综合影院 | 色多多在线视频 | 成人免费的性色视频 | 色视频www在线播放国产人成 | 2018国产一级天天弄 | 亚洲日本一区二区 | 天天夜夜久久 | 久久精品亚洲一区二区三区浴池 | 午夜免费啪| 女性私密部位扒开的视频 | 色播视频网站 | 四虎在线永久免费视频网站 | 男女视频在线观看免费 | 超级乱淫片67194免费看 | 国产农村女人一级毛片了 | 成年美女黄网站色大免费视频 | 国产香蕉98碰碰久久人人 | 色婷婷综合久久久中文字幕 | 日本一区二区三区不卡在线视频 | yy8090韩国日本三理论免费 | 天堂资源地址在线 | 一级a爱片久久毛片 | 婷婷99视频精品全部在线观看 |