_csl_pscmdcfgget.c

来自「TI达芬奇dm644x各硬件模块测试代码」· C语言 代码 · 共 37 行

C
37
字号
#include <csl_pscAux.h>

#pragma CODE_SECTION (CSL_pscMdCfgGet, ".text:csl_section:psc");

CSL_Status  CSL_pscMdCfgGet(
    CSL_PscHandle     hPsc,
    CSL_PscMdCfg      *mdCfg    
	){

  CSL_PscRegsOvly pscRegs = hPsc->regs;
  Uint16 i;

  /* Get the current state and interrupt configuration */
  for( i = 0; i < mdCfg->numMds; i++ ){

    /* Get current state configuration (SwRstDisable, SyncRst, Disable, or Enable) */
    /*  Read Module interrupt configuration (EMUIHB and EMURST) */
    mdCfg->mdState[i] =  (CSL_PscMdState) CSL_FEXT(pscRegs->MDSTAT[mdCfg->mdId[i]], PSC_MDSTAT_STATE);

    /* Get current interrupt configuration (Enabled or Disabled) */
    mdCfg->mdIntEnable[i].pscMdEmuihb =  (CSL_PscIntEnable) CSL_FEXT(pscRegs->MDCTL[mdCfg->mdId[i]], PSC_MDCTL_EMUIHBIE);
    mdCfg->mdIntEnable[i].pscMdEmurst =  (CSL_PscIntEnable) CSL_FEXT(pscRegs->MDCTL[mdCfg->mdId[i]], PSC_MDCTL_EMURSTIE);  
  }

  /* Update the state record array if not NULL */
  if( mdCfg->mdStateRecord != NULL ){ 
    for( i = 0; i < CSL_PSC_NUM_MD; i++ ){
      mdCfg->mdStateRecord[i] = (CSL_PscMdState) CSL_FEXT(pscRegs->MDSTAT[i], PSC_MDSTAT_STATE);
    }
  }


  return (CSL_SOK);
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?