国产粉嫩小泬在线观看泬-亚洲中文字幕无码乱线-色呦呦官网-国产色爽-偷窥村妇洗澡毛毛多-亚洲狠狠做深爱婷婷影院-国产精品1-国产精彩视频在线-无码精品人妻一区二区三区免费看-国产av老师丝袜美腿丝袜-久久99婷婷-成人性生生活性生交3-性xxxx狂欢老少配o-九九九久久久久-黄色免费网站在线看-亚洲综合色区另类小说-欧美a∨-av在线免费观看网址-岛国av在线免费观看-国产精品v片在线观看不卡

你的位置:首頁 > 互連技術 > 正文

根據 SCI 輸入信號自動校準波特率

發布時間:2021-08-10 來源:Terry Deng 責任編輯:wenwei

【導讀】本文檔概述了一種基于 SCI/UART 輸入信號,可以自動校準本設備SCI/UART波特率的方法,該方法適用與所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等等。
 
一 原理說明
 
假設有2塊電路板通過SCI進行通信。“Transmitter”向“Receiver”發送未知波特率的數據,“ Receiver”則使用 eCAP 測量未知的波特率,然后修改其自身的波特率和“Transmitter”匹配。
 
下面款圖是一種情況,其中“Transmitter” 的波特率設置為 9889,而“Receiver”的初始波特率設置為 9601 ,相比之下“Receiver”的波特率為 -3% 偏差。 經過算法的自動校準以后,“Receiver”將會把自身波特率校正為與“Transmitter”相同的9889。
 
根據 SCI 輸入信號自動校準波特率
 
下面框圖則是另一種情況,假如“Receiver”和“Transmitter”的初始波特率都是9889,但“Receiver”的內部晶振INTOSC有-3%的偏差。使用上述完全相同的方法原理和步驟,“Receiver”波特率設置將會從9889校準成9601,這樣“Receiver”的波特率設置被自動校準抵消內部晶振的偏差。在測量實際信號時,“Receiver”輸出到“Transmitter”的信號會是正確的 9889 波特率。
 
根據 SCI 輸入信號自動校準波特率
 
二 Receiver 的校準代碼
 
1. 初始化
 
需要配置以下模塊來校準波特率:
 
●    時鐘:使用 INTOSC2 并選擇 100MHz 的 LSPCLK
 
#define DEVICE_SETCLOCK_CFG      (SYSCTL_OSCSRC_OSC2 | SYSCTL_IMULT(20) | 
                                     SYSCTL_FMULT_NONE | SYSCTL_SYSDIV(2) |   
                                     SYSCTL_PLL_ENABLE)
    //
    // Set up PLL control and clock dividers
    //
    SysCtl_setClock(DEVICE_SETCLOCK_CFG);
    //
    // Make sure the LSPCLK divider is set to the default (divide by 4)
    //
    SysCtl_setLowSpeedClock(SYSCTL_LSPCLK_PRESCALE_1);
 
●    SCI 模塊:通訊數據使用,發出校準以后的波形
 
    // Initialize SCIA and its FIFO.
    //
    SCI_performSoftwareReset(SCIA_BASE);
    //
    // Configure SCIA for communications.
    //
    SCI_setConfig(SCIA_BASE, DEVICE_LSPCLK_FREQ, TARGETBAUD, (SCI_CONFIG_WLEN_8 |
                                                        SCI_CONFIG_STOP_ONE |
                                                        SCI_CONFIG_PAR_NONE));
    SCI_resetChannels(SCIA_BASE);
    SCI_resetRxFIFO(SCIA_BASE);
    SCI_resetTxFIFO(SCIA_BASE);
    SCI_clearInterruptStatus(SCIA_BASE, SCI_INT_TXFF | SCI_INT_RXFF);
    SCI_enableFIFO(SCIA_BASE);
    SCI_enableModule(SCIA_BASE);
SCI_performSoftwareReset(SCIA_BASE);
 
●    Xbar 輸入:將 GPIO28/SCI 內部連接到 INPUTXBAR7 與 ECAP1 配合使用
 
//
    // Configure GPIO 28 as eCAP input
    //
    XBAR_setInputPin(XBAR_INPUT7, 28);
 
●    ECAP 模塊:監控接收到的 SCI 通信脈沖寬度
    
//
    // Disable ,clear all capture flags and interrupts
    //
    ECAP_disableInterrupt(ECAP1_BASE,
                          (ECAP_ISR_SOURCE_CAPTURE_EVENT_1  |
                           ECAP_ISR_SOURCE_CAPTURE_EVENT_2  |
                           ECAP_ISR_SOURCE_CAPTURE_EVENT_3  |
                           ECAP_ISR_SOURCE_CAPTURE_EVENT_4  |
                           ECAP_ISR_SOURCE_COUNTER_OVERFLOW |
                           ECAP_ISR_SOURCE_COUNTER_PERIOD   |
                           ECAP_ISR_SOURCE_COUNTER_COMPARE));
    ECAP_clearInterrupt(ECAP1_BASE,
                        (ECAP_ISR_SOURCE_CAPTURE_EVENT_1  |
                         ECAP_ISR_SOURCE_CAPTURE_EVENT_2  |
                         ECAP_ISR_SOURCE_CAPTURE_EVENT_3  |
                         ECAP_ISR_SOURCE_CAPTURE_EVENT_4  |
                         ECAP_ISR_SOURCE_COUNTER_OVERFLOW |
                         ECAP_ISR_SOURCE_COUNTER_PERIOD   |
                         ECAP_ISR_SOURCE_COUNTER_COMPARE));
 
    //
    // Disable CAP1-CAP4 register loads
    //
    ECAP_disableTimeStampCapture(ECAP1_BASE);
 
    //
    // Configure eCAP
    //    Enable capture mode.
    //    One shot mode, stop capture at event 4.
    //    Set polarity of the events to rising, falling, rising, falling edge.
    //    Set capture in time difference mode.
    //    Select input from XBAR7.
    //    Enable eCAP module.
    //    Enable interrupt.
    //
    ECAP_stopCounter(ECAP1_BASE);
    ECAP_enableCaptureMode(ECAP1_BASE);
    ECAP_setCaptureMode(ECAP1_BASE, ECAP_ONE_SHOT_CAPTURE_MODE, ECAP_EVENT_4);
 
    ECAP_setEventPolarity(ECAP1_BASE, ECAP_EVENT_1, ECAP_EVNT_FALLING_EDGE);
    ECAP_setEventPolarity(ECAP1_BASE, ECAP_EVENT_2, ECAP_EVNT_RISING_EDGE);
    ECAP_setEventPolarity(ECAP1_BASE, ECAP_EVENT_3, ECAP_EVNT_FALLING_EDGE);
    ECAP_setEventPolarity(ECAP1_BASE, ECAP_EVENT_4, ECAP_EVNT_RISING_EDGE);
 
    ECAP_enableCounterResetOnEvent(ECAP1_BASE, ECAP_EVENT_1);
    ECAP_enableCounterResetOnEvent(ECAP1_BASE, ECAP_EVENT_2);
    ECAP_enableCounterResetOnEvent(ECAP1_BASE, ECAP_EVENT_3);
    ECAP_enableCounterResetOnEvent(ECAP1_BASE, ECAP_EVENT_4);
 
    ECAP_selectECAPInput(ECAP1_BASE, ECAP_INPUT_INPUTXBAR7);
 
    ECAP_enableLoadCounter(ECAP1_BASE);
    ECAP_setSyncOutMode(ECAP1_BASE, ECAP_SYNC_OUT_DISABLED);
    ECAP_startCounter(ECAP1_BASE);
    ECAP_enableTimeStampCapture(ECAP1_BASE);
    ECAP_reArm(ECAP1_BASE);
 
    ECAP_enableInterrupt(ECAP1_BASE, ECAP_ISR_SOURCE_CAPTURE_EVENT_4);
 
2. 中斷
 
捕獲傳入 SCI 通信的脈沖寬度,每捕獲 4 次就中斷一次。 將這 4 個捕獲添加到陣列中。
 
__interrupt void ecap1ISR(void)
{
    if(stopCaptures==0)
    {
        //
        // Get the capture counts, interrupt every 4. Can be 1-bit or more wide.
        // add one to account for partial eCAP counts at higher baud rates
        // (e.g. count = 40, but if had higher resolution, this would be 40.5)
        //
        capCountArr[0] = 1+ECAP_getEventTimeStamp(ECAP1_BASE, ECAP_EVENT_1);
        capCountArr[1] = 1+ECAP_getEventTimeStamp(ECAP1_BASE, ECAP_EVENT_2);
        capCountArr[2] = 1+ECAP_getEventTimeStamp(ECAP1_BASE, ECAP_EVENT_3);
        capCountArr[3] = 1+ECAP_getEventTimeStamp(ECAP1_BASE, ECAP_EVENT_4);
 
        //
        // Add samples to a buffer. Get average baud and tune INTOSC if buffer filled.
        //
        capCountIter = 0;
        for (capCountIter=0; capCountIter<4; capCountIter++)
        {
            //
            // if we still have samples left to capture, add it to the samples array
            //
            if(samplesArrIter<NUMSAMPLES)
            {
                samplesArr[samplesArrIter] = capCountArr[capCountIter];
                samplesArrIter++;
            }
 
            //
            // else, all samples were received, break to begin tuning
            //
            else
            {
                stopCaptures=1;
                break;
            }
        }
    }
 
    //
    // Clear interrupt flags for more interrupts.
    //
    ECAP_clearInterrupt(ECAP1_BASE,ECAP_ISR_SOURCE_CAPTURE_EVENT_4);
    ECAP_clearGlobalInterrupt(ECAP1_BASE);
 
    //
    // Start eCAP
    //
    ECAP_reArm(ECAP1_BASE);
 
    //
    // Acknowledge the group interrupt for more interrupts.
    //
    Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP4);
}
 
3. 主循環
 
捕獲陣列滿后,計算陣列的平均脈沖寬度 (也就是波特率),并更新SCI波特率寄存器,使其盡可能接近計算的平均值。
 
//
    // Loop forever. Suspend or place breakpoints to observe the buffers.
    //
    for(;;)
    {
        //
        // Array is filled, begin tuning
        //
        if(stopCaptures==1)
        {
            //
            // Get an average baud rate from the array of samples
            //
            uint32_t avgBaud = getAverageBaud(samplesArr,NUMSAMPLES,TARGETBAUD);
 
            //
            // if the baud function returns the error code ''''''''0'''''''', then flag an error
            //
            if(avgBaud==0)
            {
                ESTOP0;
            }
 
            //
            // Update the device''''''''s baud rate to match the measured baud rate
            //
            SCI_setBaud(SCIA_BASE, DEVICE_LSPCLK_FREQ, avgBaud);
 
            //
            // (OPTIONAL) Continuously send data to SCITX once tuning
            // is complete for external observation (by logic analyzer or scope)
            //
            //unsigned char *msg;
            //while(1)
            //{
            //    msg = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa?";
            //    SCI_writeCharArray(SCIA_BASE, (uint16_t*)msg, 91);
            //}
 
            //
            // Wait for user to view the results in "Expressions" window
            //
            ESTOP0;
 
            //
            // If continuing, reset the array iterator and unlock the ISR for new captures
            //
            samplesArrIter=0;
            stopCaptures=0;
        }
}
 
4. 平均脈沖寬度
 
對于許多應用的SCI 通信,傳輸的數據 (例如 0xA5)是變化不固定的,因此SCI的高低電平脈沖寬度就是變化的。所以必須對樣本陣列進行如下的預處理,然后才能計算平均脈沖寬度。
 
a) 丟棄大于 10 位寬的脈沖寬度 (丟棄空閑時間)
 
b) 將 n 位值除以 n
 
c) 對修改后的樣本數組進行平均化
 
uint32_t getAverageBaud(volatile float arr[], int size, float targetBaudRate)
{
    //
    // clean up variable width array to single-bit-width array
    //
    uint16_t pass = arrTo1PulseWidth(arr, size, (float)DEVICE_SYSCLK_FREQ/targetBaudRate);
 
    //
    // pass only if enough good samples provided
    //
    if(pass == 0)
    {
        return 0;
    }
 
    //
    // convert 2-bit width, 3-bit width, etc. to 1-bit width values by dividing, and average these values.
    // skip unrelated values
    //
    float averageBitWidth = computeAvgWidth(arr, size);
 
    //
    // get the rounded baud rate from the average number of clocks and the sysclk frequency
    //
    return (uint32_t)(((float)DEVICE_SYSCLK_FREQ/(float)averageBitWidth)+0.5);
}
 
以下是平均脈寬計算的原理和代碼流程圖
 
根據 SCI 輸入信號自動校準波特率
根據 SCI 輸入信號自動校準波特率
 
三 結果
 
按照以下設置進行測試,結果詳見表格,校準以后的誤差從3% 改善為0.1%左右甚至更小。
 
1. “Transmitter”設置為正確的波特率 (我們嘗試匹配的波特率)
2. “Receiver”設置為錯誤波特率 (-3% 或 +3%)
3. “Receiver”運行校準程序以匹配“Transmitter”
 
根據 SCI 輸入信號自動校準波特率
 
 
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理。
 
推薦閱讀:
 
助力高速光模塊市場,提供高集成度,更小封裝電源的解決方案
二極管仿真模式在同步BUCK里面的應用
基于UCC25800-Q1開環LLC驅動器的隔離電源方案設計
充電芯片BQ25601應用中的若干問題
AI視覺芯片研發及基礎算力平臺公司愛芯科技完成A+輪融資
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索

關閉

?

關閉

主站蜘蛛池模板: 国产成人av一区二区三区无码 | www.欧美激情 | 一二三四视频社区3在线高清 | 我要看免费毛片 | 国产香蕉尹人在线观看视频 | 东北老头嫖妓猛对白精彩 | 亚洲日本va午夜在线电影 | 日本亚洲色大成网站www久久 | 国产在线欧美 | 中文字幕激情 | 国产chinese中国hdxxxx | 国产一区二区三四区 | 99精品欧美一区二区三区综合在线 | 色黄视频| 国产爆乳无码一区二区麻豆 | 日本一区午夜艳熟免费 | 日韩精品无码中文字幕电影 | 午夜理论无码片在线观看免费 | 国产成人精品免费午夜app | 插少妇视频 | 69精品丰满人妻无码视频a片 | 国产看黄网站 | 亚洲精品一品区二品区三品区 | 日产精品一区二区 | 五月婷婷激情五月 | 亚洲国产成人精品av区按摩 | 1000部啪啪未满十八勿入 | 国产丝袜视频在线观看 | 国内精品久久久久久久小说 | av全黄| 亚洲一区二区三区免费 | 国内精品福利视频 | 性一级视频 | 欧美啊v | 五月婷婷开心 | 亚洲激情久久 | 久久无码潮喷a片无码高潮 国产精品99久久99久久久 | 在线综合视频 | 亚洲国产精品av | 国产免费1卡二卡三卡四卡 成人午夜视频网站 | 日韩久久精品视频 | 久久av喷吹av高潮av萌白 | 精品午夜国产福利在线观看 | 亚洲最大福利视频网 | 国产成人久久精品二区三区 | 干干操操 | 日韩有码在线播放 | 亚洲精品在线免费观看视频 | 蜜桃视频在线观看免费视频网站www | 视频一区视频二区制服丝袜 | 丰满的熟妇岳中文字幕 | 国产精品网站在线观看免费传媒 | 久久国内精品自在自线400部 | 免费在线观看成人 | 国产精品熟妇视频国产偷人 | 日韩a片无码一区二区五区电影 | 精品少妇av一区二区三区 | 一级黄色片在线 | 国产高清欧美 | 免费人成网站在线观看不 | 可以免费看的av网站 | 人人妻人人狠人人爽天天综合网 | aaaaa一级片 精品国产欧美 | 亚洲福利精品 | 亚洲人人爽| 亚洲欧洲自拍拍偷精品 美利坚 | 国产爆乳美女娇喘呻吟 | 国产黑色丝袜在线观看片不卡顿 | 日韩黄色一区 | 男女插鸡视频 | 国产乱码在线观看 | 九九久久久 | av激情亚洲男人的天堂 | 亚洲欧美国产精品专区久久 | 久久婷婷五月综合成人d啪 国产色视频在线观看免费 一个人看的www免费视频中文 | 三上悠亚ssⅰn939无码播放 | 一本一本久久a久久综合精品蜜桃 | 国产在线高清视频无码 | 久久99婷婷国产精品免费 | 狠狠色丁香婷婷久久综合蜜芽 | 亚洲免费中文字幕 | 亚洲永久免费网站 | 国产精品久久久久9999县 | 亚洲大尺度在线观看 | 黄色成人av网站 | 中出中文字幕 | 99精品一区二区三区 | 福利视频在线 | 99久久婷婷国产综合精品青牛牛 | 情欲少妇人妻100篇 毛片中文字幕 | 偷拍激情视频一区二区三区 | 国产亚洲精品字幕在线观看 | 亚洲高清www色好看美女 | 亚洲中文字幕乱码熟女在线 | 成人午夜精品一区二区三区 | 国产开嫩苞实拍在线播放视频 | 永久免费无码网站在线观看 | 爽爽影院免费观看视频 | 国产亚洲欧美精品永久 | 主站蜘蛛池模板: 最新亚洲卡一卡二卡三新区 | 国产成人免费永久在线平台 | 久久麻豆成人精品 | 欧美日韩视频在线 | 色又黄又爽18禁免费网站现观看 | 牛av在线| 这里有精品在线视频 | 国产亚洲精久久久久久无码77777 | 亚洲精品无码aⅴ中文字幕蜜桃 | 成 人 色综合 综合网站 | 免费观看又污又黄的网站 | 色欲天天天天天综合网 | 曰本女人与公拘交酡 | 欧美日韩影院 | 女人爽到高潮视频免费直播 | 久久婷婷人人澡人人爽人人喊 | 日韩在线视频观看免费网站 | 原创少妇半推半就88av | 亚洲va天堂va在线va欧美 | 韩国 欧美 日产 国产精品 | 国产成人无码精品久久涩吧 | 国产精品原创巨作av女教师 | jlzzjizz在线播放观看 | 少妇粉嫩小泬喷水视频 | 久久精品久久精品 | 丰满人妻翻云覆雨呻吟视频 | 黄色一级免费片 | 2020狠狠狠狠久久免费观看 | 欧美日韩tv | 性一交一乱一区二区洋洋av | 精品免费看国产一区二区 | 中文字幕精品三级久久久 | 成人无码a片一区二区三区免 | 精品久久综合1区2区3区激情 | 亚洲顶级裸体av片 | 国产精品美女久久久久av爽 | 黄金网站在线观看 | 日本免费观看mv免费版视频网站 | 国产精品久久久久影院老司 | 无遮挡又黄又刺激的视频 | 欧洲乱码伦视频免费国产 | 在线观看中文字幕视频 | 五月综合缴情婷婷六月 | 最新69成人精品视频免费 | 中文字幕一区二区三区免费视频 | 一本久久a久久精品vr综合 | 宅男宅女精品国产av天堂 | 色婷婷久 | 国产69精品久久久久999小说 | 国产aⅴ视频免费观看 | 手机看片亚洲 | 香蕉噜噜噜噜私人影院 | 午夜国产成人片在线播放 | 婷婷五月在线视频 | 美国三级a三级18 | 天堂网男人 | 亚洲多毛妓女毛茸茸的 | 成人高潮视频在线观看 | 精品国产制服丝袜高跟 | 精品国产一区二区三区四区精华液 | 久久久久一级片 | 精品久久人妻av中文字幕 | 中文有码视频在线播放免费 | 天天摸天天碰 | 91九色在线观看 | 欧美视频在线观看免费 | 亚洲欧美在线一区中文字幕 | 92国产精品午夜福利 | 精品精品国产欧美在线小说区 | 宅男噜噜噜666在线观看 | 在线免费观看国产精品 | 日本久操 | 日韩色区| 无码av高潮喷水无码专区线 | 一级黄av| 永久免费av网站 | 中文字幕无线观看中文字幕 | 亚洲精品国产品国语原创 | 欧美午夜精品久久久久久浪潮 | 伊人久久一区二区三区无码 | 久久精品亚洲精品无码金尊 | 国产乱人伦偷精品视频免观看 | 精品动漫一区二区三区在线观看 | 免费国产在线精品一区二区三区 | 国产成人自拍偷拍 | 国产又黄又爽胸又大免费视频 | 无码av喷白浆在线播放 | 亚洲国产中文字幕在线观看 | 国产高清一区二区三区直播 | 奇米四色影视 | www.1000av| 日本人与黑人做爰视频网站 | 曰女同女同中文字幕 | 一起草国产| 亚洲精品国产一区二区图片 | 日韩欧美在线看 | 亚洲第一天堂 | 老熟女高潮喷水了 | 国产在线视频网 | 主站蜘蛛池模板: 国产成人精品久久一区二区三区 | 亚洲中文字幕精品久久久久久动漫 | 免费精品久久 | 性推油按摩av无码专区 | 国产成人综合久久精品 | 国产乱码人妻一区二区三区 | 少妇激情一区二区三区视频 | 亚洲精品白浆高清久久久久久 | 日韩精品人妻无码久久影院 | 无码一区二区三区不卡av | 久视频在线 | 天天躁日日躁狠狠躁退 | 九色蝌蚪9l视频蝌蚪9l视频 | 久夜精品| 精品无码国产av一区二区三区 | 午夜理论片yy4080私人影院 | 久久久久久久久久久综合日本 | www.国产 | 国产婷婷综合在线视频 | 狠狠精品久久久无码中文字幕 | 高清人人天天夜夜曰狠狠狠狠 | 久久久国产精品无码一区二区 | 西厢记在线观看 | 三级做爰高清视频 | 三级毛毛片 | 波多野结衣一区二区三区在线观看 | 国产精品人妻久久久久 | 天天天天天操 | 日韩av片无码一区二区三区不卡 | 免费毛片视频网站 | 大地资源中文第三页 | 久久精品人人做人人爽电影蜜月 | 国产美女精品aⅴ在线播放 国产免费又色又爽粗视频 波多野结衣福利 | 亚洲理伦 | av女优免费看 | 三级网站免费 | 天堂久久天堂av色综合 | 亚洲国产av玩弄放荡人妇系列 | 九九九九九热 | 超级黄18禁色惰网站 | 亚洲黄色精品视频 | 午夜免费福利小电影 | 久色成人 | 在线看黄网 | 一区二区三区在线播放 | 亚洲在av极品无码天堂手机版 | 人妻奶水人妻系列 | 中文字幕无码家庭乱欲 | 亚洲综合国产在不卡在线 | 亚洲成aⅴ人在线观看 | 成人免费视频国产在线观看 | 国产小视频免费在线观看 | 久久激情五月丁香伊人 | 精彩国产萝视频在线 | 久久久久人妻一区精品果冻 | 国产免费网址 | 日韩中文字幕精品视频 | 强开小婷嫩苞又嫩又紧韩国视频 | 国产成人精品亚洲午夜麻豆 | 欧美大片va欧美在线播放 | 日本免费一级片 | a黄色片 | 欧美乱大交做爰xxxⅹ | 国产精品无码一区二区在线观一 | 强奷乱码欧妇女中文字幕熟女 | 色综合天天综合高清网 | 99久久精品一区二区三区 | 青青国产精品 | av鲁丝一区鲁丝二区鲁丝三区 | 成人污污www网站免费丝瓜 | 日韩精品内射视频免费观看 | 欧美国产激情18 | 高清一区二区三区四区 | 精品h动漫无遮挡在线看中文 | 欧美亚洲人成网站在线观看 | 九九色播 | 99精品国产福利在线观看 | 久久99精品久久久久蜜芽 | 成人a视频| 久久久国产一区二区 | 视频一区二区免费 | 少妇被粗大的猛烈进出图片 | 国产无遮挡又黄又爽不要vip软件 | 日本在线观看免费 | 超碰在线影院 | 午夜福利片国产精品 | 久久蜜桃视频 | 东京热大乱系列无码 | 久久综合亚洲鲁鲁五月天 | 最新版天堂资源网在线种子 | 亚洲草片 | www.一起操| 日韩免费av片 | 欧美大片免费播放器 | 亚洲字幕在线观看 | 97精品久久| 偷自拍亚洲视频在线观看 | 亚洲视频免费观看 | 人人澡人人澡人人看添 |