This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6713B McBSP spi从机模式

Other Parts Discussed in Thread: CC1310

在将McBSP配置成从机模式时,与CC1310通信,DSP接收数据是正确的, 发送数据只能发送10几次。

  • mcbsp配置如下:
    MyMcbspConfig.spcr= (Uint32)
    ((MCBSP_SPCR_XINTM_XRDY << _MCBSP_SPCR_XINTM_SHIFT )
    |(MCBSP_SPCR_RINTM_RRDY << _MCBSP_SPCR_RINTM_SHIFT )
    |(MCBSP_SPCR_CLKSTP_NODELAY << _MCBSP_SPCR_CLKSTP_SHIFT )//SPI
    |(MCBSP_SPCR_DLB_OFF << _MCBSP_SPCR_DLB_SHIFT )
    |(MCBSP_SPCR_XRST_YES << _MCBSP_SPCR_XRST_SHIFT )
    );
    MyMcbspConfig.rcr = (Uint32)
    ((MCBSP_RCR_RPHASE_SINGLE << _MCBSP_RCR_RPHASE_SHIFT )

    |(MCBSP_RCR_RFRLEN1_OF(120) << _MCBSP_RCR_RFRLEN1_SHIFT )
    //|(MCBSP_RCR_RFRLEN2_OF(1) << _MCBSP_RCR_RFRLEN2_SHIFT )

    |(MCBSP_RCR_RWDLEN1_8BIT << _MCBSP_RCR_RWDLEN1_SHIFT )
    //|(MCBSP_RCR_RWDLEN2_OF(0) << _MCBSP_RCR_RWDLEN2_SHIFT )

    |(MCBSP_RCR_RCOMPAND_DEFAULT << _MCBSP_RCR_RCOMPAND_SHIFT )//MSB

    |(MCBSP_RCR_RFIG_YES << _MCBSP_RCR_RFIG_SHIFT )

    |(MCBSP_RCR_RDATDLY_0BIT << _MCBSP_RCR_RDATDLY_SHIFT )
    |(MCBSP_RCR_RWDREVRS_DISABLE << _MCBSP_RCR_RWDREVRS_SHIFT )
    );
    MyMcbspConfig.xcr = (Uint32)
    ((MCBSP_XCR_XPHASE_SINGLE << _MCBSP_XCR_XPHASE_SHIFT )//单相帧、双相帧

    |(MCBSP_XCR_XFRLEN1_OF(30) << _MCBSP_XCR_XFRLEN1_SHIFT )
    //|(MCBSP_XCR_XFRLEN2_OF(73) << _MCBSP_XCR_XFRLEN2_SHIFT )

    |(MCBSP_XCR_XWDLEN1_32BIT << _MCBSP_XCR_XWDLEN1_SHIFT )
    //|(MCBSP_XCR_XWDLEN2_8BIT << _MCBSP_XCR_XWDLEN2_SHIFT )

    |(MCBSP_XCR_XCOMPAND_DEFAULT << _MCBSP_XCR_XCOMPAND_SHIFT )//MSB

    |(MCBSP_XCR_XFIG_YES << _MCBSP_XCR_XFIG_SHIFT )

    |(MCBSP_XCR_XDATDLY_0BIT << _MCBSP_XCR_XDATDLY_SHIFT )
    |( MCBSP_XCR_XWDREVRS_DISABLE << _MCBSP_XCR_XWDREVRS_SHIFT)
    );
    MyMcbspConfig.srgr= (Uint32)
    ((MCBSP_SRGR_CLKSM_INTERNAL << _MCBSP_SRGR_CLKSM_SHIFT )
    |(MCBSP_SRGR_FSGM_DXR2XSR << _MCBSP_SRGR_FSGM_SHIFT )
    //|(MCBSP_SRGR_FSGM_FSG << _MCBSP_SRGR_FSGM_SHIFT )//ERROR
    |(MCBSP_SRGR_CLKGDV_OF(1) << _MCBSP_SRGR_CLKGDV_SHIFT )//250 error 80 OK,加快采样速度
    );
    MyMcbspConfig.pcr = (Uint32)
    ((MCBSP_PCR_XIOEN_SP << _MCBSP_PCR_XIOEN_SHIFT )//0
    |(MCBSP_PCR_RIOEN_SP << _MCBSP_PCR_RIOEN_SHIFT )//0

    |(MCBSP_PCR_FSXM_EXTERNAL << _MCBSP_PCR_FSXM_SHIFT )//发送帧同步模式
    |(MCBSP_PCR_FSRM_EXTERNAL << _MCBSP_PCR_FSRM_SHIFT )//

    |(MCBSP_PCR_CLKXM_INPUT << _MCBSP_PCR_CLKXM_SHIFT )//master
    |(MCBSP_PCR_CLKRM_INPUT << _MCBSP_PCR_CLKRM_SHIFT )

    |(MCBSP_PCR_DXSTAT_1 << _MCBSP_PCR_DXSTAT_SHIFT )
    |(MCBSP_PCR_DRSTAT_1 << _MCBSP_PCR_DRSTAT_SHIFT )

    |(MCBSP_PCR_CLKSSTAT_0 << _MCBSP_PCR_CLKSSTAT_SHIFT )


    |(MCBSP_PCR_FSXP_ACTIVELOW << _MCBSP_PCR_FSXP_SHIFT )
    |(MCBSP_PCR_FSRP_ACTIVELOW << _MCBSP_PCR_FSRP_SHIFT )

    |(MCBSP_PCR_CLKRP_RISING << _MCBSP_PCR_CLKRP_SHIFT )//关系DSP 正常读取DMA数据
    |(MCBSP_PCR_CLKXP_RISING << _MCBSP_PCR_CLKXP_SHIFT )
    );
    采样CPU查询标志位来接收发送数据
  • 请问发送10几次后具体是什么问题?不发数据了?还是发送到数据错误,是有规律的错误吗?比如错位。
  • 毛病找到了,需要初始化一下多通道禁止功能,不然处于多通道模式。
  • 想问一下,Flashburn烧写软件到哪里下载?
  • 可以到softwaredesignsolutions公司网站下载。
    classic.softwaredesignsolutions.com/flashburn4.aspx