打印

用2812同步串口MCBSP跟AD链接出现问题,帮忙

[复制链接]
2693|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hyh0lh|  楼主 | 2009-5-15 11:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
yidong1981| | 2009-5-15 14:51 | 只看该作者

说的太简单了

你要把你的McBSP配置好才行啊,McBSP工作在什么模式下,如果配置不对,那么自然检测不到

使用特权

评论回复
板凳
hyh0lh|  楼主 | 2009-5-15 15:19 | 只看该作者

同步口设置

void InitMcbsp(void)
{ //禁用FIFO功能
  McbspRegs.MFFTX.all = 0x0000;
  McbspRegs.MFFRX.all = 0x001f;
  McbspRegs.MFFCT.all = 0x0000;
  McbspRegs.MFFINT.all = 0x0005;
  McbspRegs.MFFST.all = 0x0000;
  
  McbspRegs.MFFTX.bit.MFFENA = 0;//禁止FIFO
  McbspRegs.MFFTX.bit.XRESET = 0;//发送器退出复位
  McbspRegs.MFFRX.bit.RRESET = 0;//接收器退出复位
  
  
  McbspRegs.SPCR2.all = 0x0000;//帧同步产生器复位,采样速率生成器复位,发送器复位
  McbspRegs.SPCR1.all = 0x0000;//发送器关闭,接收器复位
  
  McbspRegs.RCR2.all = 0x0041;//单相位帧,每帧一字,无压缩,MSB,1位数据延迟
  McbspRegs.RCR1.all = 0x0040;//每帧1字,字长16位
  McbspRegs.XCR2.all = 0x0041;//单相位帧,每帧一字,无压缩,MSB,1位数据延迟
  McbspRegs.XCR1.all = 0x0040;//每帧1字,字长16位
  McbspRegs.SRGR2.all = 0x8000;//外部时钟输入
  McbspRegs.SRGR1.all = 0x0101;//帧同步有效宽度1个周期,采样速度分频系数为1
  McbspRegs.MCR2.all = 0x0000;
  McbspRegs.MCR1.all = 0x0000;
  McbspRegs.PCR1.all = 0x0081;//外部帧同步输入
  
  McbspRegs.SPCR2.bit.XINTM = 2;//帧同步产生中断
  //McbspRegs.SRGR2.bit.FSGM = 1;
  //McbspRegs.SPCR2.bit.XRDY = 1;
  McbspRegs.SPCR2.all |= 0x0040;//采样速率生成器退出复位
  McbspRegs.SPCR2.bit.FRST = 1;//帧同步产生器退出复位
  McbspRegs.SPCR2.bit.XRST = 1;
  McbspRegs.SPCR1.bit.RRST = 1;
  McbspRegs.SPCR1.bit.DXENA =1;
}    


void AD_enable(void)
{
  Uint16 i;
  
  AD_MSE=1;
  for(i=0;i<5;i++);
}

void AD_disable(void)
{
  Uint16 i;
  
  AD_MSE=0;
  for(i=0;i<5;i++);
}

void AD73360_write_word(unsigned int cmd)
{
  McbspRegs.DXR1.all=cmd;
  while(McbspRegs.SPCR2.bit.XRDY==0){};
}

Uint16 AD73360_read_word(void)
{
  while(!MRINT_flag);
  MRINT_flag=0;
  return AD73360_R_DATA;
}

void AD_start()
{
  unsigned int data;
  
  while(MRINT_flag){data=AD73360_read_word()^data;}
  InitMcbsp();
  AD_enable();

  AD73360_write_word(W73360REGB);
  AD73360_write_word(W73360REGC);
  AD73360_write_word(W73360REGD);
  AD73360_write_word(W73360REGE);
  AD73360_write_word(W73360REGF);
  AD73360_write_word(W73360REGG);
  AD73360_write_word(W73360REGH);
  AD73360_write_word(W73360REGA);
  AD73360_write_word(R73360DATA);
}
麻烦各位帮我看看

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

55

帖子

1

粉丝