亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sttuner.c

?? 這是DVB tuner驅動部分和其它相關的源碼和一些技術資料文檔.
?? C
?? 第 1 頁 / 共 4 頁
字號:
See Also:    STTUNER_Scan()    STTUNER_ScanContinue()*****************************************************************************/ST_ErrorCode_t STTUNER_SetFrequency(STTUNER_Handle_t Handle,                                    U32 Frequency,                                    STTUNER_Scan_t *ScanParams_p,                                    U32 Timeout){    ST_ErrorCode_t Error = ST_NO_ERROR;    TUNER_ControlBlock_t *Tuner_p;    /* Check the parameters */    if((Handle == 0) || (ScanParams_p == NULL))    {        return ST_ERROR_BAD_PARAMETER;    }    /* Obtain the control block from the handle */    Tuner_p = GetControlBlockFromHandle(Handle);    /* Ensure the handle is valid */    if (Tuner_p != NULL)    {        /* Check the scan parameters are valid.  Note that it does not         * make sense to allow xxx_ALL because we are scanning for an         * exact frequency.  We therefore reject the scan unless all         * parameters are exact.         */        if (ScanParams_p->Polarization != STTUNER_PLR_ALL &&            ScanParams_p->Modulation != STTUNER_MOD_ALL &&            ScanParams_p->FECRates != STTUNER_FEC_ALL)        {            /* Set internal control block parameters */            Tuner_p->ScanInfo.FrequencyStart = Frequency;            Tuner_p->ScanInfo.FrequencyEnd = Frequency;            Tuner_p->Timeout = Timeout;            Tuner_p->SingleScan = *ScanParams_p;            Tuner_p->ScanExact = TRUE;            /* Ensure the tuner is not already scanning */            if (Tuner_p->TunerInfo.Status == STTUNER_STATUS_SCANNING)            {                /* We must first abort the current scanning operation */                TUNER_AbortScan(Tuner_p);            }            /* Commence a scan with the required parameters */            Error = TUNER_StartScan(Tuner_p);        }        else        {            /* The scan parameter contains an invalid setting */            Error = ST_ERROR_BAD_PARAMETER;        }    }    else    {        /* The handle is invalid */        Error = ST_ERROR_INVALID_HANDLE;    }    /* Common exit point */    return Error;} /* STTUNER_SetFrequency() *//*****************************************************************************Name: STTUNER_SetLNBToneState()Description:    Sets the LNB tone generator.Parameters:    Handle,        handle to sttuner device    LNBToneState,  new state for LNB tone.Return Value:    ST_NO_ERROR,                the operation was carried out without error.    ST_ERROR_BAD_PARAMETER      Handle NULL or incorrect tone setting.See Also:    Nothing.*****************************************************************************/ST_ErrorCode_t STTUNER_SetLNBToneState(STTUNER_Handle_t Handle,                                       STTUNER_LNBToneState_t LNBToneState){    ST_ErrorCode_t Error = ST_NO_ERROR;    TUNER_ControlBlock_t *Tuner_p;    /* Check the parameters */    if(Handle == 0)    {        return ST_ERROR_BAD_PARAMETER;    }    /* Obtain the control block from the handle */    Tuner_p = GetControlBlockFromHandle(Handle);    /* Ensure the handle is valid */    if (Tuner_p != NULL)    {        /* Ensure tone state is valid */        if (LNBToneState == STTUNER_LNB_TONE_OFF ||            LNBToneState == STTUNER_LNB_TONE_22KHZ)        {            SAT_Config_t SatConfig;            /* Get current settings */            Error = SAT_GetConfig(Tuner_p->SatHandle,                                  &SatConfig);            if (Error == ST_NO_ERROR)            {                /* Invoke new configuration */                SatConfig.ToneState = LNBToneState;                Error = SAT_SetConfig(Tuner_p->SatHandle,                                      &SatConfig);                /* Was config set correctly? */                if (Error == ST_NO_ERROR)                {                    /* Update internal status */                    Tuner_p->TunerInfo.ScanInfo.LNBToneState = LNBToneState;                }            }        }        else        {            /* The scan parameter contains an invalid setting */            Error = ST_ERROR_BAD_PARAMETER;        }    }    else    {        /* The handle is invalid */        Error = ST_ERROR_INVALID_HANDLE;    }    /* Common exit point */    return Error;} /* STTUNER_SetLNBToneState() *//*****************************************************************************Name: STTUNER_Scan()Description:    This routine commences a scan starting from the "FreqFrom" and    iterates in steps of "FreqStep" until "FreqTo".    It is non-blocking i.e., returns to the caller immediately.  A callback    routine may be invoked with an appropriate error code, if either:    a) The tuner has just lost lock.    b) The scan completed without a lock i.e., "not found".    c) The scan has got a lock.    d) The scan has timed out.    If no callback is setup, the caller may interrogate the progress of the    scan by calling STTUNER_GetStatus() at any time.    NOTE:   The caller can advance to the next scan frequency by using the            STTUNER_ScanContinue() call.Parameters:    Handle,     the handle of the tuner device.    FreqFrom,   Start frequency.    FreqTo,     End frequency.    FreqStep,   Frequency step - not used at present.    Timeout,    timeout period (in ms) to allow for lock.Return Value:    ST_NO_ERROR,                the operation was carried out without error.    ST_ERROR_INVALID_HANDLE,    the handle was invalid.    ST_ERROR_BAD_PARAMETER,     one of the frequency parameters passed in                                is invalid.See Also:    STTUNER_ScanContinue()*****************************************************************************/ST_ErrorCode_t STTUNER_Scan(STTUNER_Handle_t Handle,                            U32 FreqFrom,                            U32 FreqTo,                            U32 FreqStep,                            U32 Timeout){    ST_ErrorCode_t Error = ST_NO_ERROR;    TUNER_ControlBlock_t *Tuner_p;    /* Check the parameters */    if((Handle == 0) || (FreqFrom == 0))    {        return ST_ERROR_BAD_PARAMETER;    }    /* Obtain the control block from the handle */    Tuner_p = GetControlBlockFromHandle(Handle);    /* Ensure the handle is valid */    if (Tuner_p != NULL)    {        /* Determine scan step direction for the scan loop */        if (FreqFrom <= FreqTo)        {            /* Ascending direction (multiply step by 1) */            Tuner_p->ScanInfo.ScanDirection = 1;        }        else        {            /* Descending direction (multiply step by -1) */            Tuner_p->ScanInfo.ScanDirection = -1;        }        Tuner_p->ScanInfo.FrequencyStart = FreqFrom;        Tuner_p->ScanInfo.FrequencyEnd = FreqTo;        Tuner_p->Timeout = Timeout;        Tuner_p->ScanExact = FALSE;        /* Ensure the tuner is not already scanning */        if (Tuner_p->TunerInfo.Status == STTUNER_STATUS_SCANNING)        {            /* We must first abort the current scanning operation */            TUNER_AbortScan(Tuner_p);        }        /* Commence a scan with the required parameters */        Error = TUNER_StartScan(Tuner_p);    }    else    {        /* The handle is invalid */        Error = ST_ERROR_INVALID_HANDLE;    }    /* Common exit point */    return Error;} /* STTUNER_Scan() *//*****************************************************************************Name: STTUNER_ScanContinue()Description:    This routine is used to continue a previously invoked scan operatation.    It is non-blocking i.e., returns to the caller immediately -- see    STTUNER_Scan() for more information.    NOTE:   STTUNER_ScanContinue() will return an error if the previous            scan step has not completed.Parameters:    Handle,   the handle of the tuner device.    Timeout,  timeout period (in ms) to allow for lock.Return Value:    ST_NO_ERROR,                the operation was carried out without error.    ST_ERROR_INVALID_HANDLE,    the handle was invalid.    ST_ERROR_DEVICE_BUSY,       the previous scan step is still in progress.    ST_ERROR_BAD_PARAMETER,     the end of the scan list has been reached, or                                a scan has not yet been initiated.See Also:    STTUNER_Scan()*****************************************************************************/ST_ErrorCode_t STTUNER_ScanContinue(STTUNER_Handle_t Handle,                                    U32 Timeout){    ST_ErrorCode_t Error = ST_NO_ERROR;    TUNER_ControlBlock_t *Tuner_p;    if(Handle == 0)    {        return ST_ERROR_BAD_PARAMETER;    }    /* Obtain the control block from the handle */    Tuner_p = GetControlBlockFromHandle(Handle);    /* Ensure the handle is valid */    if (Tuner_p != NULL)    {        /* Attempt to continue for the next scan */        Tuner_p->Timeout = Timeout;        Tuner_p->ScanExact = FALSE;        Error = TUNER_ContinueScan(Tuner_p);    }    else    {        /* The handle is invalid */        Error = ST_ERROR_INVALID_HANDLE;    }    /* Common exit point */    return Error;} /* STTUNER_ScanContinue() *//*****************************************************************************Name: STTUNER_SetBandList()Description:    Sets the current frequency bands and associated local oscillator    frequencies.Parameters:    Handle, the handle of the tuner device.Return Value:    ST_NO_ERROR,                the operation was carried out without error.    ST_ERROR_INVALID_HANDLE,    the handle was invalid.    ST_ERROR_DEVICE_BUSY,       the band/lo frequencies can not be set                                during a scan.    ST_ERROR_BAD_PARAMETER      Handle or BandList_p NULLSee Also:    STTUNER_GetBandList()*****************************************************************************/ST_ErrorCode_t STTUNER_SetBandList(STTUNER_Handle_t Handle,                                   const STTUNER_BandList_t *BandList_p){    ST_ErrorCode_t Error = ST_NO_ERROR;    TUNER_ControlBlock_t *Tuner_p;    /* Check the parameters */    if((Handle == 0) || (BandList_p == NULL))    {        return ST_ERROR_BAD_PARAMETER;    }    /* Obtain the control block from the handle */    Tuner_p = GetControlBlockFromHandle(Handle);    /* Ensure the handle is valid */    if (Tuner_p != NULL)    {        /* Check device is idle before setting new list */        if (Tuner_p->TunerInfo.Status != STTUNER_STATUS_SCANNING)        {            /* Ensure the tuner is not currently scanning */            if (Tuner_p->InitParams.BandListMax >= BandList_p->NumElements)            {                /* Copy the supplied bank/LO frequencies into the tuner                 * control block -- we must ensure we lock out the scan                 * task whilst doing this.                 */                semaphore_wait(&Tuner_p->ScanTask.GuardSemaphore);                Tuner_p->BandList.NumElements = BandList_p->NumElements;                memcpy(Tuner_p->BandList.BandList,                       BandList_p->BandList,                       (BandList_p->NumElements * sizeof(STTUNER_Band_t)));                semaphore_signal(&Tuner_p->ScanTask.GuardSemaphore);            }            else            {                /* Number of elements exceeds maximum allowed */                Error = ST_ERROR_BAD_PARAMETER;            }        }        else        {            /* Scan task is busy */            Error = ST_ERROR_DEVICE_BUSY;        }    }    else    {        /* The handle is invalid */        Error = ST_ERROR_INVALID_HANDLE;    }    /* Common exit point */    return Error;} /* STTUNER_SetBandList() *//*****************************************************************************Name: STTUNER_SetScanList()Description:    Sets the scanning criteria for a tuner scan.Parameters:    Handle,     the handle of the tuner device.    ScanList_p,  pointer to a scan list reflecting the scanning criteria.Return Value:    ST_NO_ERROR,                the operation was carried out without error.    ST_ERROR_INVALID_HANDLE,    the handle was invalid.    ST_ERROR_DEVICE_BUSY,       the tuner is scanning, we do not allow                                the parameters to be set during a scan.    ST_ERROR_BAD_PARAMETER      Handle or ScanList_p NULLSee Also:    STTUNER_GetScanList()*****************************************************************************/ST_ErrorCode_t STTUNER_SetScanList(STTUNER_Handle_t Handle,                                   const STTUNER_ScanList_t *ScanList_p){    ST_ErrorCode_t Error = ST_NO_ERROR;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区美女在线| 欧美日韩久久一区| 在线观看亚洲精品视频| 日韩一级片在线播放| 亚洲欧洲日本在线| 国产精品一区一区| 制服丝袜亚洲色图| 一区二区三区成人| 成人一级片在线观看| 精品盗摄一区二区三区| 亚洲高清免费观看 | 91网站在线观看视频| 日韩欧美视频一区| 午夜视频一区在线观看| 日本精品裸体写真集在线观看| 久久久久久久综合色一本| 丝袜美腿高跟呻吟高潮一区| 99国产精品久久久久久久久久| 精品久久久久久久久久久久久久久久久| 亚洲男人的天堂网| 99精品久久只有精品| 国产欧美一区二区三区鸳鸯浴 | 91麻豆精品91久久久久久清纯 | 国产精品久久久久影院亚瑟| 久久精品国产成人一区二区三区| 色悠久久久久综合欧美99| 国产精品久久精品日日| 国产裸体歌舞团一区二区| 欧美大肚乱孕交hd孕妇| 美女视频黄频大全不卡视频在线播放| 欧美自拍丝袜亚洲| 夜夜揉揉日日人人青青一国产精品| 成人午夜伦理影院| 欧美国产激情二区三区| 国产成人午夜视频| 国产日韩欧美亚洲| 成人深夜在线观看| 亚洲免费视频成人| 国产成人精品网址| 久久精品视频免费| 不卡一区二区在线| 亚洲色图一区二区三区| 欧洲色大大久久| 亚洲成人av一区二区三区| 欧美精品日日鲁夜夜添| 另类小说欧美激情| 久久一夜天堂av一区二区三区| 国产一区二区三区四区在线观看| 久久久蜜臀国产一区二区| 国产精华液一区二区三区| 国产精品麻豆欧美日韩ww| av亚洲精华国产精华精华| 亚洲精品国产一区二区三区四区在线 | 精品在线播放免费| 久久久久久毛片| 色狠狠一区二区三区香蕉| 午夜成人在线视频| 久久亚洲一级片| 99re热视频这里只精品| 五月综合激情日本mⅴ| 久久久久久久久久久久电影 | 欧美日韩国产乱码电影| 日本va欧美va瓶| 欧美国产一区视频在线观看| 欧洲一区在线电影| 久久99精品国产.久久久久| 国产精品久久午夜夜伦鲁鲁| 在线日韩一区二区| 久久机这里只有精品| 国产精品成人免费| 欧美日韩精品欧美日韩精品一综合| 久久精品国产一区二区三区免费看| 久久久久久久久一| 欧美在线短视频| 国产福利一区二区三区在线视频| 亚洲女人小视频在线观看| 日韩一卡二卡三卡国产欧美| 成人h动漫精品一区二区| 丝瓜av网站精品一区二区| 国产蜜臀av在线一区二区三区| 欧美亚洲日本一区| 国产成人在线网站| 亚洲午夜精品网| 亚洲国产高清在线观看视频| 欧美日韩在线综合| 成人av中文字幕| 久久精品久久99精品久久| 夜夜嗨av一区二区三区| 久久久久久9999| 制服.丝袜.亚洲.另类.中文| 97精品国产露脸对白| 精品一区中文字幕| 天涯成人国产亚洲精品一区av| 中文一区在线播放| 日韩免费看的电影| 欧美三级日韩三级| 色综合欧美在线视频区| 国产精品系列在线播放| 日本91福利区| 亚洲成人一区二区在线观看| 亚洲天堂中文字幕| 国产欧美一区二区三区在线看蜜臀| 日韩视频一区二区三区在线播放 | 成人免费视频网站在线观看| 久久99热国产| 免费成人小视频| 日韩电影在线一区| 午夜在线成人av| 亚洲一区二区三区四区在线观看| 国产精品黄色在线观看| 久久蜜桃av一区二区天堂| 欧美一区二区免费观在线| 91原创在线视频| 色综合天天综合网天天看片 | 国产在线日韩欧美| 麻豆久久一区二区| 蜜桃视频在线观看一区| 久久精品国产免费| 国模一区二区三区白浆| 久久国产精品99久久久久久老狼 | 日韩视频一区二区在线观看| 欧美一级精品在线| 欧美成人精品高清在线播放| 日韩三区在线观看| 久久影院午夜片一区| 精品国产91乱码一区二区三区| 日韩视频在线永久播放| 久久精品一区八戒影视| 国产女同互慰高潮91漫画| 中文av字幕一区| 亚洲欧美另类小说| 亚洲va国产va欧美va观看| 日本伊人色综合网| 国产中文字幕精品| 成人一区在线观看| 欧洲视频一区二区| 欧美成人高清电影在线| 久久久精品欧美丰满| 中文字幕制服丝袜一区二区三区| 日韩美女精品在线| 日韩国产一区二| 久草中文综合在线| 99亚偷拍自图区亚洲| 欧美亚洲国产一区在线观看网站 | 奇米影视一区二区三区| 久久99热国产| 一本一本久久a久久精品综合麻豆| 欧美猛男男办公室激情| 精品久久久久久亚洲综合网 | 一本一道久久a久久精品| 欧美高清www午色夜在线视频| 26uuu精品一区二区| 亚洲精品美国一| 黑人精品欧美一区二区蜜桃| 91在线视频网址| 欧美成人乱码一区二区三区| 亚洲男人都懂的| 久久国产精品无码网站| 色一情一乱一乱一91av| 欧美mv和日韩mv国产网站| 中文字幕一区二区三区在线观看| 肉色丝袜一区二区| 91在线视频免费观看| 精品国产乱子伦一区| 亚洲一区二区三区爽爽爽爽爽| 久久99国产乱子伦精品免费| 欧美最猛黑人xxxxx猛交| 久久久精品免费免费| 日韩精品色哟哟| 99视频在线精品| 日本一区二区免费在线观看视频 | 久久精品一区四区| 亚洲aaa精品| 91看片淫黄大片一级在线观看| 久久影院视频免费| 亚洲成人一区二区| 色综合激情久久| 中文字幕一区二区三区av| 久久精品国产99国产| 91精品国产一区二区三区蜜臀| 亚洲欧美综合在线精品| 国产电影一区在线| 精品福利视频一区二区三区| 天天影视网天天综合色在线播放| 99国产精品久久| 亚洲国产精品ⅴa在线观看| 精品一区二区综合| 91麻豆精品国产自产在线| 亚洲制服丝袜av| 色香蕉成人二区免费| 亚洲国产精品久久艾草纯爱 | 一区二区中文字幕在线| 国产精品88888| 久久人人爽人人爽| 麻豆精品在线播放| 日韩女优制服丝袜电影| 蜜桃视频在线观看一区二区| 日韩一区和二区| 另类小说综合欧美亚洲| 精品国产凹凸成av人网站|