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

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

?? csl_mcbsphwsetup.c

?? ccs下對dm6446的測試程序
?? C
字號:
/** \file csl_mcbspHwSetup.c
 *
 *  \brief    File for functional layer of CSL API \a CSL_mcbspHwSetup()
 *
 *  Description
 *    - The \a CSL_mcbspHwSetup() function contains definition of the 
 *      functional layer API
 *
 *  Path: \\(CSLPATH)\\ipmodules\\mcbsp\\src
 *
 */

/** ==========================================================
 *   @modif    SPCR1, SPCR2, RCR1, RCR2, XCR1, XCR2, SRGR1, SRGR2, MCR1,
 */

#include <csl_mcbsp.h>

/**
 * Configures the MCBSP using the values passed in the setup structure.
 *
 * <b> Usage Constraints: </b>
 * Both @a CSL_mcbspInit() and @a CSL_mcbspOpen() must be called successfully 
 * in that order before this function can be called. The setup structure
 * consists of the logically grouped sub-structures. The main setup structure
 * as well as these sub-structures must be filled up before calling this
 * function
 *
 * @b Example:
 * @verbatim

     CSL_mcbspHandle hMcbsp;
     CSL_McbspHwSetup hwSetup = CSL_MCBSP_HWSETUP_DEFAULTS;
     ...

     // Init Successfully done
     ...
     // Open Successfully done
     ...
     CSL_mcbspHwSetup(hMcbsp, &hwSetup);
   @endverbatim
 *
 * @return Status of the setup operation
 *
*/
#pragma CODE_SECTION (CSL_mcbspHwSetup, ".text:csl_section:mcbsp");
CSL_Status  CSL_mcbspHwSetup(
    /** MCBSP handle returned by successful 'open' */   
    CSL_McbspHandle                         hMcbsp,
    /** Pointer to the intialized setup structure  */
    CSL_McbspHwSetup                        *setup
)
{
    CSL_McbspRegsOvly mcbspRegs =  hMcbsp->regs; 
    if(setup == NULL) return (CSL_ESYS_INVPARAMS);

    if (hMcbsp == NULL)
        return CSL_ESYS_BADHANDLE;

    /* Set Emulation Mode Configuration */
    CSL_FINS(mcbspRegs->SPCR, MCBSP_SPCR_SOFT, setup->emumode );
    CSL_FINS(mcbspRegs->SPCR, MCBSP_SPCR_FREE, setup->emumode >> 1);

    /*Clock and Frame Sync Configuration*/
    if(setup->clkset != NULL ){
       CSL_McbspClkSetup clkCfg = *(setup->clkset);

        mcbspRegs->PCR =  CSL_FMK( MCBSP_PCR_FSRM, clkCfg.frmSyncRxMode )|
                     CSL_FMK( MCBSP_PCR_FSXM, clkCfg.frmSyncTxMode )|
                     CSL_FMK( MCBSP_PCR_FSRP, clkCfg.frmSyncRxPolarity )|
                     CSL_FMK( MCBSP_PCR_FSXP, clkCfg.frmSyncTxPolarity )|
                     CSL_FMK( MCBSP_PCR_CLKRM, clkCfg.clkRxMode )|
                     CSL_FMK( MCBSP_PCR_CLKXM, clkCfg.clkTxMode )|
                     CSL_FMK( MCBSP_PCR_CLKRP, clkCfg.clkRxPolarity )|
                     CSL_FMK( MCBSP_PCR_CLKXP, clkCfg.clkTxPolarity)|
                     CSL_FMK( MCBSP_PCR_SCLKME, clkCfg.srgInputClkMode >> 0x1 );
        
        
        mcbspRegs->SRGR = CSL_FMK( MCBSP_SRGR_FWID, clkCfg.srgFrmPulseWidth )|
                     CSL_FMK( MCBSP_SRGR_CLKGDV, clkCfg.srgClkDivide )|
                     CSL_FMK( MCBSP_SRGR_FPER, clkCfg.srgFrmPeriod )|
                     CSL_FMK( MCBSP_SRGR_GSYNC, clkCfg.srgClkSync )|
                     CSL_FMK( MCBSP_SRGR_CLKSM, clkCfg.srgInputClkMode & 0x1)|
                     CSL_FMK( MCBSP_SRGR_CLKSP, clkCfg.srgClkPolarity )|
                     CSL_FMK( MCBSP_SRGR_FSGM, clkCfg.srgTxFrmSyncMode );
         
    }

    /*McBSP Global Configuration*/
    if(setup->global!= NULL)
    {
        CSL_McbspGlobalSetup globalCfg = *(setup->global);
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_DLB, globalCfg.dlbMode );
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_CLKSTP, globalCfg.clkStopMode );
        CSL_FINS( mcbspRegs->PCR, MCBSP_PCR_RIOEN, globalCfg.ioEnableMode & 0x1 );
        CSL_FINS( mcbspRegs->PCR, MCBSP_PCR_XIOEN, globalCfg.ioEnableMode >> 1 );

    }


    /*Transmitter Configuration*/

    if(setup->txdataset != NULL)
    {
        CSL_McbspDataSetup transmitterCfg = *(setup->txdataset);

        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_XRST, 0 );
        
        mcbspRegs->XCR = CSL_FMK( MCBSP_XCR_XWDLEN1, transmitterCfg.wordLength1 )|
                 CSL_FMK( MCBSP_XCR_XWDREVRS, transmitterCfg.wordReverse)|
                 CSL_FMK( MCBSP_XCR_XPHASE, transmitterCfg.phaseNum )|
                 CSL_FMK( MCBSP_XCR_XWDLEN2, transmitterCfg.wordLength2 )|
                 CSL_FMK( MCBSP_XCR_XFRLEN2, (transmitterCfg.frmLength2 - 1) )|
                 CSL_FMK( MCBSP_XCR_XFIG, transmitterCfg.frmSyncIgn )|
                 CSL_FMK( MCBSP_XCR_XCOMPAND, transmitterCfg.compand )|
                 CSL_FMK( MCBSP_XCR_XDATDLY, transmitterCfg.dataDelay );
        
        if (setup->mulCh && setup->mulCh->tx512channel) {
          CSL_FINS ( mcbspRegs->XFLR, MCBSP_XFLR_XFRLEN3, (transmitterCfg.frmLength1 - 1)); 
        } else {
          CSL_FINS( mcbspRegs->XCR, MCBSP_XCR_XFRLEN1, (transmitterCfg.frmLength1 - 1) );   
        }
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_DXENA, transmitterCfg.rjust_dxenable );
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_XINTM, transmitterCfg.IntEvent );
    }

    /*Receiver Configuration*/
    if(setup->rxdataset != NULL)
    {
        CSL_McbspDataSetup receiverCfg = *(setup->rxdataset);

        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_RRST, 0 );
        mcbspRegs->RCR = CSL_FMK( MCBSP_RCR_RWDLEN1, receiverCfg.wordLength1 )|
                 CSL_FMK( MCBSP_RCR_RWDREVRS, receiverCfg.wordReverse )| 
                 CSL_FMK( MCBSP_RCR_RPHASE, receiverCfg.phaseNum )|
                 CSL_FMK( MCBSP_RCR_RWDLEN2, receiverCfg.wordLength2 )|
                 CSL_FMK( MCBSP_RCR_RFRLEN2, (receiverCfg.frmLength2 - 1) )|
                 CSL_FMK( MCBSP_RCR_RFIG, receiverCfg.frmSyncIgn )|
                 CSL_FMK( MCBSP_RCR_RCOMPAND, receiverCfg.compand )|
                 CSL_FMK( MCBSP_RCR_RDATDLY, receiverCfg.dataDelay );
        
        
        if (setup->mulCh && setup->mulCh->rx512channel) {
          CSL_FINS ( mcbspRegs->RFLR, MCBSP_RFLR_RFRLEN3, (receiverCfg.frmLength1 - 1));    
        } else {
          CSL_FINS( mcbspRegs->RCR, MCBSP_RCR_RFRLEN1, (receiverCfg.frmLength1 - 1) );  
        }
       
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_RJUST, receiverCfg.rjust_dxenable );
        CSL_FINS( mcbspRegs->SPCR, MCBSP_SPCR_RINTM, receiverCfg.IntEvent );
    }

    /* Multi Channel Configuration */
    if(setup->mulCh != NULL)
    {
        CSL_McbspMulChSetup multiChCfg = *(setup->mulCh);
        mcbspRegs->MCR = CSL_FMK( MCBSP_MCR_RMCM, multiChCfg.rxMulChSel )|
                  CSL_FMK( MCBSP_MCR_RMCME, multiChCfg.rxPartition )|
                  CSL_FMK( MCBSP_MCR_RPABLK, multiChCfg.rxPartABlk )|
                  CSL_FMK( MCBSP_MCR_RPBBLK, multiChCfg.rxPartBBlk )|
                  CSL_FMK( MCBSP_MCR_REMODE, multiChCfg.rx512channel)|
                  CSL_FMK( MCBSP_MCR_XMCM, multiChCfg.txMulChSel  )|
                  CSL_FMK( MCBSP_MCR_XMCME, multiChCfg.txPartition )|
                  CSL_FMK( MCBSP_MCR_XPABLK, multiChCfg.txPartABlk )|
                  CSL_FMK( MCBSP_MCR_XPBBLK, multiChCfg.txPartBBlk )|
                  CSL_FMK( MCBSP_MCR_XEMODE, multiChCfg.tx512channel)|
                  CSL_FMK( MCBSP_MCR_DX, setup->dxState);
       
    }
  
    mcbspRegs->RSYNCCNT = setup->rxsynccount;
    mcbspRegs->XSYNCCNT = setup->txsynccount;
    return(CSL_SOK);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品视频免费在线观看| 久久久精品国产99久久精品芒果 | 亚洲激情男女视频| 丝袜亚洲精品中文字幕一区| 成人一二三区视频| 欧美一级夜夜爽| 亚洲一区免费视频| 99久久精品免费| 久久久激情视频| 蜜臀a∨国产成人精品| 欧美午夜精品久久久| 1024亚洲合集| 成人免费视频一区二区| 精品免费国产一区二区三区四区| 亚洲成人一区二区| 在线观看一区日韩| 国产精品电影院| 国产尤物一区二区| 久久综合九色综合97婷婷| 日本成人中文字幕在线视频| 欧美视频一区在线观看| 一区二区久久久| 色狠狠色狠狠综合| 一区二区三区在线播| 色综合婷婷久久| 亚洲精品成人天堂一二三| 99久久久免费精品国产一区二区| 欧美国产日韩亚洲一区| 国产传媒欧美日韩成人| 久久蜜桃香蕉精品一区二区三区| 另类小说一区二区三区| 欧美大片一区二区| 国产一区三区三区| 久久一二三国产| 国产精品一二三区| 中国av一区二区三区| 成人国产电影网| 亚洲欧美一区二区在线观看| 色综合久久中文字幕综合网| 亚洲欧美日韩在线不卡| 欧美综合色免费| 午夜精品一区二区三区免费视频| 91麻豆精品久久久久蜜臀| 日韩不卡免费视频| 久久午夜电影网| 成人美女视频在线看| 综合色中文字幕| 欧美在线免费视屏| 男人操女人的视频在线观看欧美| 欧美va在线播放| 不卡一区二区中文字幕| 亚洲精品国产无天堂网2021| 欧美日韩一区国产| 激情综合色丁香一区二区| 中文字幕精品在线不卡| 色婷婷综合久久久久中文一区二区| 亚洲综合久久久| 日韩精品一区二区三区四区视频| 国产成人高清视频| 亚洲国产精品久久久久婷婷884| 91精品国产一区二区三区香蕉| 韩国v欧美v日本v亚洲v| 国产精品久久久久久久久晋中 | 日韩一区二区三区在线| 国产一区二区三区美女| 亚洲精品国产无天堂网2021 | 久久久噜噜噜久噜久久综合| 91免费视频观看| 蜜臀久久久久久久| 国产精品国产三级国产有无不卡 | 日韩欧美三级在线| 懂色av中文字幕一区二区三区| 亚洲在线视频免费观看| 精品少妇一区二区三区在线播放| 不卡的电影网站| 美女脱光内衣内裤视频久久影院| 国产精品福利影院| 精品国产一区二区三区忘忧草 | 亚洲精品国产精品乱码不99| 日韩免费一区二区三区在线播放| 一本色道久久综合亚洲91| 国产在线精品不卡| 性做久久久久久免费观看| 欧美国产精品一区二区三区| 91麻豆精品国产自产在线| 91蜜桃网址入口| 国产91丝袜在线观看| 日本不卡123| 亚洲一区二区视频| 国产精品激情偷乱一区二区∴| 日韩欧美国产综合在线一区二区三区 | 国产精品不卡一区二区三区| 日韩欧美国产1| 91久久免费观看| 国产精品一区二区不卡| 亚洲福利一二三区| 亚洲女同一区二区| 国产欧美视频一区二区| 精品国产一区二区三区av性色 | 日韩一区二区三区免费看| 欧美写真视频网站| 色综合婷婷久久| 99久久99精品久久久久久 | 久久精品国产精品亚洲精品 | 成人欧美一区二区三区1314| 国产日韩欧美一区二区三区综合| 日韩一级黄色大片| 欧美一区二区国产| 欧美美女黄视频| 在线免费精品视频| 色88888久久久久久影院按摩 | 欧美亚洲综合另类| 在线观看日韩精品| 91成人免费网站| 欧美天天综合网| 欧美日韩国产一级二级| 欧美日韩激情一区| 一区二区三区不卡视频在线观看| 国产精品久久久久久户外露出 | 国产suv精品一区二区三区| 紧缚捆绑精品一区二区| 国产在线观看一区二区| 国产69精品久久99不卡| 成人少妇影院yyyy| 久久婷婷一区二区三区| 欧美成人免费网站| 久久―日本道色综合久久| 国产亚洲精品免费| 欧美激情一区二区三区蜜桃视频| 国产无人区一区二区三区| 中文字幕的久久| 自拍偷拍国产精品| 亚洲一二三区在线观看| 日韩精品一二三| 精品一区二区三区免费毛片爱 | 蜜桃精品在线观看| 国产伦理精品不卡| 91在线观看地址| 欧美美女激情18p| 精品国产乱码久久久久久1区2区 | 伊人夜夜躁av伊人久久| 亚洲成va人在线观看| 精品亚洲免费视频| 99久久精品免费看国产免费软件| 91成人在线观看喷潮| 日韩亚洲欧美一区二区三区| 日本一区二区三区四区| 亚洲一二三级电影| 国产综合久久久久久久久久久久| 99精品在线观看视频| 91精品国产色综合久久不卡蜜臀 | 最新热久久免费视频| 奇米色一区二区三区四区| 福利一区二区在线| 在线不卡的av| 中文字幕一区二区三区乱码在线 | 日韩欧美亚洲另类制服综合在线| 中文字幕av免费专区久久| 亚洲免费高清视频在线| 狠狠色丁香久久婷婷综合丁香| 色综合天天狠狠| 久久嫩草精品久久久久| 亚洲一区av在线| 国产v综合v亚洲欧| 欧美一卡二卡三卡四卡| 亚洲精品视频免费观看| 欧美一卡2卡3卡4卡| 亚洲人成网站在线| 国产综合色视频| 制服丝袜国产精品| 亚洲精品五月天| 国产成人鲁色资源国产91色综| 欧美性xxxxxxxx| 亚洲天堂网中文字| 国产成人精品亚洲日本在线桃色| 337p亚洲精品色噜噜噜| 亚洲日本乱码在线观看| 懂色av一区二区夜夜嗨| 欧美成人精精品一区二区频| 水蜜桃久久夜色精品一区的特点| 91蜜桃婷婷狠狠久久综合9色| 久久久久久久综合日本| 日本不卡123| 欧美剧情片在线观看| 亚洲午夜久久久| 色久优优欧美色久优优| 亚洲色图制服诱惑 | 国内久久精品视频| 欧美精品高清视频| 亚洲成人久久影院| 欧美在线视频不卡| 一区二区三国产精华液| 一本久久综合亚洲鲁鲁五月天| 国产精品美女一区二区三区| 国产精品夜夜嗨| 久久久激情视频| 成人精品亚洲人成在线| 国产精品美女久久久久久| 不卡一区二区中文字幕| 中文字幕在线不卡|