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.

I2C实验中MCBSP的配置问题

Other Parts Discussed in Thread: TMS320VC5509A

在I2C实验的数字回音实验中,程序中启动MCBSP0的程序为:

/*初始化McBSP0*/
hMcbsp = MCBSP_open(MCBSP_PORT0,MCBSP_OPEN_RESET);
/*设置McBSP0*/
MCBSP_config(hMcbsp,&Mcbsp1Config);
/*启动McBSP0*/
MCBSP_start (hMcbsp,
MCBSP_RCV_START | MCBSP_XMIT_START,
0);

MCBSP_getConfig(hMcbsp,&Mcbsptest);

对于MCBPS_start这个API操作,手册中解释为:

Q1:程序中

#define MCBSP_RCV_START  (1u)
#define MCBSP_XMIT_START  (2u)

定义的MCBSP_RCV_START与MCBPD_XMIT_START的值,从手册中看出,对应的不应该是寄存器SPCR1中的域RRST=1及SPCR2中的域XRST=2吗?

但是运行MCBSP_start之后,寄存器中域值的变化情况为:

SPCR1中的RRST=1

SPCR2中的XRDY=1     XRST=1

这是为什么?

Q2:MCBSP_RCV_START | MCBSP_XMIT_START,  :中或‘|’操作是什么意思?这与Q1中域值变化有何关系?