打印
[CAN-bus/DeviceNet]

AVR单片机的can通信问题求助!!!

[复制链接]
1667|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xhming|  楼主 | 2008-7-9 10:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用的是ATmage16单片机,现在出现一个问题,当我发送数据的时候,读取状态寄存器时,一直不对。

if((ReadSjaReg(REG_STATUS)&0x08))
  {

    PORTC&=~0x08;
    if((ReadSjaReg(REG_STATUS)&0x04))
    { 
      *((uchar *)REG_TxBuffer1) = SendBuf[0];
      *((uchar *)REG_TxBuffer2) = SendBuf[1];
      datalong = SendBuf[1] & 0x0f;
     if(datalong>0)
      {
       *((uchar *)REG_TxBuffer3) = SendBuf[2];
       *((uchar *)REG_TxBuffer4) = SendBuf[3];
       *((uchar *)REG_TxBuffer5) = SendBuf[4];
       *((uchar *)REG_TxBuffer6) = SendBuf[5];
       *((uchar *)REG_TxBuffer7) = SendBuf[6];
       *((uchar *)REG_TxBuffer8) = SendBuf[7];
       *((uchar *)REG_TxBuffer9) = SendBuf[8];
       *((uchar *)REG_TxBuffer10) = SendBuf[9];
   }
   WriteSjaReg(REG_COMMAND,0x01); //置位发送请求位
   PORTC&=~0x10;
    } 
  }

就没进入到这个里面来,那应该是状态寄存器出了问题,这个该怎么解决啊。

相关帖子

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

本版积分规则

14

主题

41

帖子

0

粉丝