您好,我在用C5517
请问MCBSP与usb程序结合要有什么注意之类的吗?当运行了
void MCBSP_reset(CSL_McbspHandle hMcbsp)
{
Uint16 k=0;
//
//
CSL_FINS(hMcbsp->sysRegs->PRCR, SYS_PRCR_MCBSP_RST, CSL_SYS_PRCR_MCBSP_RST_RST);
//
//
hMcbsp->sysRegs->CLKSTOP1 = (Uint16) (((hMcbsp->sysRegs->CLKSTOP1 & 0xFFBF) | 0x0000));
for(k=0;k<5;k++) { __asm(" NOP"); }
//McBSP registers
hMcbsp->Regs->SPCRL = CSL_MCBSP_SPCRL_RESETVAL;
hMcbsp->Regs->SPCRU = CSL_MCBSP_SPCRU_RESETVAL;
hMcbsp->Regs->RCRL = CSL_MCBSP_RCRL_RESETVAL;
hMcbsp->Regs->RCRU = CSL_MCBSP_RCRU_RESETVAL;
hMcbsp->Regs->XCRL = CSL_MCBSP_XCRL_RESETVAL;
hMcbsp->Regs->XCRU = CSL_MCBSP_XCRU_RESETVAL;
hMcbsp->Regs->SRGRL = CSL_MCBSP_SRGRL_RESETVAL;
hMcbsp->Regs->SRGRU = CSL_MCBSP_SRGRU_RESETVAL;
hMcbsp->Regs->MCRL = CSL_MCBSP_MCRL_RESETVAL;
hMcbsp->Regs->MCRU = CSL_MCBSP_MCRU_RESETVAL;
hMcbsp->Regs->RCERA = CSL_MCBSP_RCERA_RESETVAL;
hMcbsp->Regs->RCERB = CSL_MCBSP_RCERB_RESETVAL;
hMcbsp->Regs->XCERA = CSL_MCBSP_XCERA_RESETVAL;
hMcbsp->Regs->XCERB = CSL_MCBSP_XCERB_RESETVAL;
hMcbsp->Regs->RCERA = CSL_MCBSP_RCERA_RESETVAL;
hMcbsp->Regs->RCERB = CSL_MCBSP_RCERB_RESETVAL;
hMcbsp->Regs->PCRL = CSL_MCBSP_PCRL_RESETVAL;
hMcbsp->Regs->RCERC = CSL_MCBSP_RCERC_RESETVAL;
hMcbsp->Regs->RCERD = CSL_MCBSP_RCERD_RESETVAL;
hMcbsp->Regs->XCERC = CSL_MCBSP_XCERC_RESETVAL;
hMcbsp->Regs->XCERD = CSL_MCBSP_XCERD_RESETVAL;
hMcbsp->Regs->RCERE = CSL_MCBSP_RCERE_RESETVAL;
hMcbsp->Regs->RCERF = CSL_MCBSP_RCERF_RESETVAL;
hMcbsp->Regs->XCERE = CSL_MCBSP_XCERE_RESETVAL;
hMcbsp->Regs->XCERF = CSL_MCBSP_XCERF_RESETVAL;
hMcbsp->Regs->RCERG = CSL_MCBSP_RCERG_RESETVAL;
hMcbsp->Regs->RCERH = CSL_MCBSP_RCERH_RESETVAL;
hMcbsp->Regs->XCERG = CSL_MCBSP_XCERG_RESETVAL;
hMcbsp->Regs->XCERH = CSL_MCBSP_XCERH_RESETVAL;
}后,USB就不能正常操作了,但是当我把这些注释掉之后,usb就能正常了。
请问怎么回事,而且对于PRCR寄存器的操作,是不是就是用那个外设之前对PRCR相应的位置1就行了吧。