DM642的MCBSP接口配置为SPI主模式

[复制链接]
5963|2
 楼主| wangyaliss 发表于 2009-2-21 14:25 | 显示全部楼层 |阅读模式
请教各位高手,我用DM642的MCBSP接口作为SPI主器件,来控制DA转换,寄存器初始化如下,程序可以跑起来,DXR寄存器中也有我想要发送的值,但用示波器测量没有信号,片选、时钟、数据都没有输出,有没有哪位大侠指点一下,已经搞了好几天了:<br /><br />void&nbsp;mcbsp1_init()&nbsp;&nbsp;//配置McBSP0为SPI主设备<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//串行接口接收器被禁止并且处于复位状态<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_SPCR&nbsp;=&nbsp;0x00800000;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//每帧一段,每段一字,Ignore&nbsp;FS&nbsp;after&nbsp;the&nbsp;first&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_RCR&nbsp;&nbsp;=&nbsp;0x00010040;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//16&nbsp;BITs,Ignore&nbsp;FS&nbsp;after&nbsp;the&nbsp;first<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_XCR&nbsp;&nbsp;=&nbsp;0x00010040;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_SRGR&nbsp;=&nbsp;0x200F010F;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_PCR&nbsp;&nbsp;=&nbsp;0x00000A0F;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP0_SPCR&nbsp;=&nbsp;0x00801800;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//FSX,CLKX输出,FSR,CLKR输入&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//启动采样率发生器<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_SPCR&nbsp;=&nbsp;0x00C01800;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//使能串口的收发,选择时间停止模式<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;McBSP1_SPCR&nbsp;=&nbsp;0x00C11801;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//McBSP1_SPCR&nbsp;=&nbsp;0x00C11801;&nbsp;<br /><br />}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><br /><br />void&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myhMcbsp1&nbsp;=&nbsp;MCBSP_open(MCBSP_DEV1,&nbsp;MCBSP_OPEN_RESET);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mcbsp1_init();&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MCBSP_enableSrgr(myhMcbsp1);//Enable&nbsp;the&nbsp;McBSP<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MCBSP_enableFsync(myhMcbsp1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MCBSP_enableRcv(myhMcbsp1);&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MCBSP_enableXmt(myhMcbsp1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(1)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(!MCBSP_xrdy(myhMcbsp1)){}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MCBSP_write(myhMcbsp1,outA);&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br />
benbenlling 发表于 2010-3-2 17:26 | 显示全部楼层
现在怎么样了?
jwrr 发表于 2010-3-11 20:48 | 显示全部楼层
需要加入延时。可以参考spru943手册52页。 1# wangyaliss
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部