查看: 8431|回复: 2

大家遇到过can总线通讯错误问题吗?

[复制链接]

该用户从未签到

发表于 2007-11-4 10:05:06 | 显示全部楼层 |阅读模式
分享到:
版主您好:
我是*****的,有个项目想使用CAN总线传输数据,数据的发送接收函数调了很长时间,一直有个问题搞不明白,今天给zlg客服打电话,电话里说不清楚,在这里贴出来,望给予帮助,非常感谢!
1.系统结构
上位机采用贵公司的PCI-5121卡,下位机采用如下电路,上位机向下位机发送数据
 
 

下位机原理图如上附件所示,器件包括P89V51RD2FN,CTM1040T,SJA1000T
2.现象
2.1 用下位机向CAN卡发送数据,8个0xff,CAN卡显示接收正常,
2.2除ff不正常,其余正常
CAN卡发送1个数据ff,下位机接收为ff
CAN卡发送2个数据ff,下位机接收为48 ff
CAN卡发送3个数据ff,下位机接收为ff ff ff
CAN卡发送4个数据ff,下位机接收为48 ff 48 48
CAN卡发送5个数据ff,下位机接收为48 ff ff ff ff
CAN卡发送6个数据ff,下位机接收为 48 ff 48 ff ff ff
CAN卡发送7个数据ff,下位机接收为 ff ff 48 ff ff ff ff
CAN卡发送8个数据ff,下位机接收为48 ff 48 ff ff ff ff ff (此组数据多次发送,接收到的结果还不一样,出现ff、08、48三种结果都有可能)
3.测试过程
用5121自发自收,发送0xff,0xff,发现发送出去的是0xff,0xff,但是在下位机看到的变量确实是0x08,0xff(用仿真器看的,即使烧程序到片子,把接收到的数据,直接发送回总线,结果也是一样)
4.初始化程序(basic 模式)
void Init(void)
{
while((reg_CR&0x01)==0x00) //reg_CR为控制寄存器,判断是否进入复位模式
{
reg_CR=reg_CR|0X01;
}
reg_CDR=0X48; //reg_CDR时钟分频寄存器,basic模式、CBP=1;关闭时钟,
reg_AMR=0XF0; //reg_AMR验收屏蔽寄存器
reg_ACR=0x01; //reg_ACR验收代码寄存器
reg_BTR0=0X80;
reg_BTR1=0Xfa; //波特率400kbps
reg_OCR=0XaA; // 输出控制寄存器
while((reg_CR&0x01)==0x01) //进入正常工作模式,中断使能
{
reg_CR=reg_CR&0XFE;
reg_CR=reg_CR|0X1E;
}
EA=1;
}
5.接收程序(查询)
void rsvmessage()
{
uchar dlc,i; //dlc代表数据长度,i为计数循环使用临时变量
uchar flag_IR; // flag_IR读取中断寄存器的临时变量
if(reg_SR&0x03) //检查reg_SR状态寄存器,如果SR.0==1有信息或者SR.1==1溢出进入
{
flag_IR=reg_IR; // flag_IR读取中断寄存器reg_IR
if(flag_IR&0x01) //如果是接收中断
{
do{}while(reg_SR&0x10); // 查询状态寄存器SR.4位,如果正在接收信息,则等待
iRecData[0]=reg_Rsvone; //把基地址+0x14地址的数reg_Rsvone存入iRecData[0]
iRecData[1]=reg_Rsvtwo; //把基地址+0x15地址的数reg_Rsvtwo存入iRecData[1]
dlc=iRecData[1]&0x0f; //读取数据长度
for(i=0;i
{ //把基地址+0x16,reg_Rsvdata1开始的dlc个字节存入 iRecData[]中
iRecData[i+2]=*(®_Rsvdata1+i);
}
reg_CMR=0x04; //释放
flagdata=1; //标志位,说明收到了数据
} //if(flag_IR&0x01)结束
else //如果溢出清除
{
if(reg_SR&0x02) reg_CMR=0x0c;
}
} // if(reg_SR&0x03)结束
}
showimg.jpg
回复

使用道具 举报

该用户从未签到

发表于 2008-5-2 23:36:41 | 显示全部楼层

RE:大家遇到过can总线通讯错误问题吗?

学习!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2008-7-26 21:40:10 | 显示全部楼层

回复:大家遇到过can总线通讯错误问题吗?

研究
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-9 09:40 , Processed in 0.133560 second(s), 20 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.