现场总线控制技术作业

现场总线控制技术作业

ID:12327361

大小:78.50 KB

页数:7页

时间:2018-07-16

现场总线控制技术作业_第1页
现场总线控制技术作业_第2页
现场总线控制技术作业_第3页
现场总线控制技术作业_第4页
现场总线控制技术作业_第5页
资源描述:

《现场总线控制技术作业》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、现场总线控制技术作业1.为了实现数据的可靠传输,在通信过程中常采取一些差错检测措施。常用的检错方式有奇偶校验、求和校验、纵向冗余校验、循环冗余校验等。说简要明这些检错方式的原理及其实现方法,并编写程序代码(C语言编写)。答:(1)奇偶校验:奇偶检验是常用的检错方法。其原理是在7单位的ASCII代码后增加一位,是码中“1”的个数成奇数(奇校验)或偶数(偶校验)。经过传输后,如果其中一位(包括奇数个位)出错,则接收端按同样的规则就能发现错误。例如,规定收发双方采用偶校验,在接收端收到的包括校验位在内的各单位数据域中,如果出现的1的个数是偶数,就表明

2、传输是正确的,数据可用。如果某个数据域中1的个数不是偶数,就表明出现传输错误。程序代码:inteven_parity(intvalue,intn_bits);%party初始值为0{while(n_bits>0){parity+=value&1;value>>=1;n_bits-=1;}return(parity%2)==0;}(2)求和检验:求和校验在发送端将数据分为k段,每段均为等长的n比特。将分段1与分段2做求和操作,再逐一与分段3至k做求和操作,得到长度为n比特的求和结果。将该结果取反后作为校验和放在数据块后面,与数据块一起发送到接收端

3、。在接收端对接收到的、包括校验和在内的所有k+1段数据求和,如果结果为零,就认为传输过程没有错误,所传数据正确,如果结果不为零,则表明发生了错误。程序代码:unsignedshortchecksum(unsignedshort*buf,intnword)  {unsignedlongsum;  for(sum=0;nword>0;nword--)  sum+=*buf++;  sum=(sum>>16)+(sum&0xffff);  sum+=(sum>>16);  return~sum;}(3)纵向冗余校验:纵向冗余校验(LRC)是一种从纵向

4、通道上的特定比特串产生校验比特的错误检测方法。在行列格式中(例如,在磁带中),LRC经常是与VRC一起使用,这样就会为每个字符校验码。程序代码:SetLRC=0ForeachcharactercinthestringdoSetLRC=LRCXORcenddo(4)循环冗余检查(CRC):循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。若CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。程序代码:8位数据CRC查表v

5、iodCRC16_Table(unsignedchar*pMsg.unsignedcharlen){unsignedcharj;UnsignedintCRCindex;……For(j=0;j>8)^*pMsg;CRC16Temp<<=8;CRC16Temp^=CRC16Table[CRCindex];}……}2.描述通过硬件方式实现CAN总线通信的方法(要求画出结构框图,并加以说明)?查阅资料,列出当前市面上常用的实现CAN总线通信的控制器、集成有CAN控制器的处理器、C

6、AN收发器等与CAN总线通信的芯片,并简要说明使用方法。(1)硬件方式实现CAN通信结构图CAN总线接口电路主要包括:单片机、控制器接口、总线收发器。SJA1000在电路中是一个总线接口芯片,通过它实现上位机与现场微处理器之间的数据通信。该电路的主要功能是通过CAN总线接收来自上位机的数据进行分析组态,然后下传给下位机的控制电路实现控制功能,当CAN总线接口接收到下位机的上传数据,SJA1000就产生一个中断,引发微处理器产生中断,通过中断处理程序接收每一帧信息并通过CAN总线上传给上位机进行分析。AT89C51是CAN总线接口电路的核心,其承

7、担CAN控制器的初始化、CAN的收发控制等任务。(2)Intel制造商:82526CAN通信控制器,符合CAN2.0A协议82527CAN通信控制器,符合CAN2.0B协议(独立的CAN控制器,它可以通过并行总线与各种微控制器连接,也可以通过串口(SP1)与无并行总线控制器如M68HC05连接。)87C196CA/CB扩展的87C196+CAN通信控制器,支持CAN2.0A的协议Philips制造商:82C200CAN通信控制器,实现CAN2.0A的标准格式通信帧的通信控制。SJA1000CAN通信控制器,82C200的替代品,支持CAN2.0

8、B的协议。82C250通用CAN总线收发器(82C250是CAN通信控制器与物理总线之间的接口,器件可以提供对总线的差动发送和接收功能)TJA1040

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。