在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中域值变化有何关系?
|