CAN总线上有两个节点,ARM9+SJA1000+tja1040主发送,LPC2294自带CAN1+tja1040只接收<br /><br />测试时,数据区是一个字节的数据byte1,<br /> 在byte1的第7位即bit6是低时,sja1000发送和LPC2294的接收都正常,各种速率下都接收正确,如byte1的数据0xbf和0x00变化;<br /> 在byte1的bit6设置过高后,LPC2294接收出错,如byte1由0x00变为0xcf后,接收到的数值始终为0xcf;<br /> 硬件上,SJA1000的连接无短路;<br /><br />试过了所有的波特率参数设置值;用两个LPC2294作节点测试是一切正常,问题应该是出在SJA1000这边,<br />初始化过程:(晶振11.0592MHz,波特率251.3k)<br />CAN_MODE=0x07;<br />CAN_CDR=0xc8;<br />CAN_BTR0=0x00;<br />CAN_BTR1=0x4f;<br />CAN_OCR=0x1a;<br />CAN_MODE=0x08;<br /><br />请教大家:为何会在字节的中间1位出现问题?<br /> 感谢回答!! |
|