Unsigned char init_CAN (unsigned int btr0btr1)
{
EA=0;
EX0=1:
CAN— REGISTER [CONTROL]=1;//复位请求
CAN_ ACC=CAN_ REGISTER [CONTROL];
While (!CAN_ACC_0)
{
CAN REGISTER [CONTROL] =1;//确定是否复位
CAN_ACC=CAN—REGISTER [CONTROL];
}
//设置接受代码寄存器
CAN-REGISTER [ACCEPTANCE_CODE]=ACC_CODE;
//设置接受屏蔽寄存器
CAN_REGISTER [ACCEPTANCE_MASK] =ACC_MASK;
//设置总线时序0寄存器
CAN — REGISTER [BUS_TIMING_1]=btr0btrl;
//设置总线时序1寄存器
CAN_REGISTER [BUS_TIMING_0]=btr0btrl》 》8:
//设置输出控制寄存器
CAN_REGISTER [OUTPUT— CONTROL]=OUTONTRL;
//设置时钟分频寄存器
CAN_REGISTER [CDR]=CDRVALUE;
//设置控制寄存器
CAN_REGISTER [CONTROL]=CNTRLREG
//设置命令寄存器
CAN_ REGISTER [COMMAN D]&=0xe0;
CAN_REGISTER [COMMAND]I=0x0e;
CAN_REGISTER [COMMA ND]&=0xe0;
EA=1:
Return (OK);
}
4、应用情况及效果
基于现场总线的汽车检测系统由4个工位机组成。第1工位机包括底盘测功机、废气分析仪、噪声声级计、全自动烟度计及油耗仪;第2工位机包括转向盘及操纵力检测仪、全功能侧滑台、车轮转向仪、悬架松旷检测台及传动系松旷仪;第3工位机包括踏板力行程检测仪、制动检验台、悬架特性检测台、车体形位偏差仪及轴重仪;第4工位机包括发动机检测仪、前照灯检测仪、喇叭声级计及左右轴距差检测仪。网络使用了屏蔽双绞线,连线长为100m,传输速率为125kbps。
实践证明,把现场总线技术应用到汽车检测线以后,该系统通信可靠、性能稳定,取得了良好的经济效益和社会效益,其主要表现在如下几方面:
(1) 节省了成本。由于系统采用了现场总线,通过屏蔽双绞线连接各处分散的独立设备,而且嵌入式系统的控制器代替工位机中的工控机,与以前不使用现场总线技术相比,可以节省项目经费。
(2) 具有良好的扩展性。由于现场总线的开放性,可随意增设工位,总线上可以挂接32个设备。
(3) 远距离高速通信。传输距离小于50m时,数据传输速率可达1Mbps,提高检车效率。
(4) 系统维修方便。总线上某个设备出现故障,不会导致整个系统的瘫痪,仍可维持其余设备的正常运行,检修时只需断开故障设备即可,提高了系统的整体可靠。
5、结束语
目前在汽车设计领域中,很多汽车厂家采用ISO颁布的CAN国际标准(ISO1 1898)。这标准允许不同厂家生产的零部件能在同一辆汽车中进行有效、协调的工作,构成了所谓的开放式系统,检测线采用CAN总线技术,有利于从汽车上直接获取其故障信息,使得标准化的故障诊断和排放检测成为可能。