总线与转换接口电路设计.doc

上传人:wj 文档编号:2122403 上传时间:2023-05-02 格式:DOC 页数:23 大小:281.50KB
下载 相关 举报
总线与转换接口电路设计.doc_第1页
第1页 / 共23页
总线与转换接口电路设计.doc_第2页
第2页 / 共23页
总线与转换接口电路设计.doc_第3页
第3页 / 共23页
总线与转换接口电路设计.doc_第4页
第4页 / 共23页
总线与转换接口电路设计.doc_第5页
第5页 / 共23页
总线与转换接口电路设计.doc_第6页
第6页 / 共23页
总线与转换接口电路设计.doc_第7页
第7页 / 共23页
总线与转换接口电路设计.doc_第8页
第8页 / 共23页
总线与转换接口电路设计.doc_第9页
第9页 / 共23页
总线与转换接口电路设计.doc_第10页
第10页 / 共23页
总线与转换接口电路设计.doc_第11页
第11页 / 共23页
总线与转换接口电路设计.doc_第12页
第12页 / 共23页
总线与转换接口电路设计.doc_第13页
第13页 / 共23页
总线与转换接口电路设计.doc_第14页
第14页 / 共23页
总线与转换接口电路设计.doc_第15页
第15页 / 共23页
总线与转换接口电路设计.doc_第16页
第16页 / 共23页
总线与转换接口电路设计.doc_第17页
第17页 / 共23页
总线与转换接口电路设计.doc_第18页
第18页 / 共23页
总线与转换接口电路设计.doc_第19页
第19页 / 共23页
总线与转换接口电路设计.doc_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

总线与转换接口电路设计.doc

《总线与转换接口电路设计.doc》由会员分享,可在线阅读,更多相关《总线与转换接口电路设计.doc(23页珍藏版)》请在冰点文库上搜索。

总线与转换接口电路设计.doc

石家庄经济学院本科生毕业设计

摘要…………………………………………………………………………………….…..……Ι

ABSTRACT..................................................................................................................................ΙΙ

引言 1

1.CAN总线协议分析 2

1.1CAN总线主要特点 2

1.2CAN总线协议 2

1.3CAN总线报文传输结构 3

1.4CAN总线错误处理 3

1.4.1错误检测 3

1.4.2错误标定 4

2.CAN控制器SJA1000分析 5

2.1CAN节点结构与SJA1000操作模式 5

2.2SJA1000内部结构及其功能分析 6

3.CAN总线与RS-232转换接口电路设计 11

3.1CAN总线与RS-232转换接口电路总体设计 11

3.2主控制模块电路设计 12

3.2.1AT89C51与6116电路设计 13

3.2.2看门狗电路设计 14

3.3AT89C51与RS-232转换接口电路设计 16

3.3.1RS-232-C标准分析 16

3.3.2RS-232与AT89C51接口电路设计 18

3.4SJA1000与AT89C51接口电路设计 19

3.4.1SJA1000与AT89C51接口电路设计 19

3.4.2物理层接口电路设计 21

3.5元器件清单 22

结论 22

致谢 24

参考文献 25

CAN总线与RS-232转换接口电路设计

引言

现场总线是安装在生产过程区域的现场设备/仪表与控制室内的自动控制装置/系统之间的一种串行数字式多点双向通信的数据总线,多用于工空等领域,应用现场总线技术不仅可以降低系统的布线成本,还具有设计简单、调试方便等优点,同时,由于现场总线本身还提供了灵活而又功能强大的协议,这就使得用户对系统配置,设备选型具有强大的自主权,可以任意组合多种功能模块扩充系统的功能。

在众多的现场工业总线中,CAN总线是一种具有国际标准而且性能价格比又较高的现场总线,它在当今自动控制领域中的应用极为广泛,并发挥着重要的作用。

一个由CAN总线构成的单一网络中,理论上可以挂接无数个节点。

实际应用中,节点数目受网络硬件的电气特性所限制。

CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。

另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。

CAN通讯协议描述了在设备之间信息如何传递。

它对层的定义与开放系统互连模型(OSI)一致。

每一层与另一设备上相同的那一层通讯。

实际的通讯是发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。

CAN的结构定义了模型的最下面的两层:

数据链路层和物理层。

应用层通过不同的新型协议层(专门用于特殊的工业领域加上由个别CAN用户定义的任何合适的方案)和物理层连接。

物理层和数据链路层对于设计者来说是透明的,并包含在所有执行CAN协议的部件中。

实际中,许多设备是RS-232接口,为了实现CAN总线数据和RS-232接口设备数据的传输,设计完成了CAN总线与RS-232转换接口电路设计。

1.CAN总线协议分析

1.1CAN总线主要特点

CAN总线是一种多主式的串行通信总线,具有极高的实时性和可靠行,最高通信速率可以达到1Mbit/s,是一种十分优秀的现场工业总线。

CAN总线具有如下特点:

结构简单,只有2根线与外部相连,且内部集成错误探测和管理模块。

通信方式灵活。

可以多主方式工作,网络上的其他节点发送信息,而不分主从。

可以点对点、点对多点或者全局广播方式发送和接收数据。

网络上的节点信息可分成不同的优先级,以满足不同的实时要求。

CAN总线通信格式采用短帧格式,每帧字节最多为8个,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。

同时,8字节也不会占用总线时间过长,从而保证了通信的实时性。

采用非破坏性总线仲裁技术。

当两个节点同时向总线上发送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传送数据。

这大大的节省了总线仲裁冲突的时间,杂网络负载很重的情况下也不会出现网络瘫痪。

直接通信距离最大可达10Km(速率5Kbit/s以下),最高通信速率可达1Mbit/s(此时距离最长为40Km),节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。

CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检测、优先级判别等多项工作。

CAN总线采用CRC进行数据检测并可提供相应的错误处理功能,保证了数据通信的可靠性。

1.2CAN总线协议

CAN总线协议主要描述设备之间的信息传递方式,从结构上可分成3个层次,分别对应OSI网络模型的最低两层数据链路层和物理层。

CAN总线协议层次结构由高到低如表1-1所示。

表1-1CAN总线协议层次结构

协议层

对应OSI模型

说明

LLC

数据链路层

逻辑链路控制子层,用于为链路中的数据传输提供上层控制手段

MAC

媒体访问控制子层,用于控制帧结构、仲裁、错误界定等数据传输的具体实现

物理层

物理层

物理层的作用是在不同节点之间根据所有的电气属性进行位的实际传输

LLC层和MAC层也可以看作是CAN总线数据链路层的两个子层。

其中LLC层接收MAC层传递的报文,主要完成报文滤波、过载通知以及恢复管理等工作。

而MAC层则为数据报文的传输进行具体的控制,包括帧结构控制、总线仲裁、错误检测、出错界定、报文收发控制等工作。

物理层定义了信号是如何实际传输的,因此涉及到位时间、位编码、同步的解释,CAN总线协议并未对物理层部分进行具体的规定。

1.3CAN总线报文传输结构

报文传输由以下4个不同的帧类型所表示

1.数据帧:

数据帧携带数据从发送器至接收器。

数据帧由7个不同的位场组成:

帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结尾。

数据场的长度可以为0。

数据帧(或远程帧)通过帧间空间与前述的各帧分开。

2.远程帧:

总线单元发出远程帧,请求发送具有同一识别符的数据帧。

远程帧由6个不同的位场组成:

帧起始、仲裁场、控制场、CRC场、应答场、帧末尾。

通过发送远程帧,作为某数据接收器的站通过其资源节点对不同的数据传送进行初始化设置。

3.错误帧:

任何单元检测到总线错误就发出错误帧。

错误帧由两个不同的场组成。

第一个场用作为不同站提供的错误标志(ERRORFLAG)的叠加。

第二个场是错误界定符。

为了能正确地终止错误帧,“错误被动”的节点要求总线至少有长度为3个位时间的总线空闲(如果“错误被动”的接收器有本地错误的话)。

因此,总线的载荷不应为100%。

有两种形式的错误标志,主动错误标志(Activeerrorflag)和被动错误标志(Passiveerrorflag)。

4.过载帧:

过载帧用以在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。

过载帧包括两个位场:

过载标志和过载界定符。

有两种过载条件都会导致过载标志的传送:

(1)接收器的内部条件(此接收器对于下一数据帧或远程帧需要有一延时)。

(2)间歇场期间检测到一“显性”位。

由过载条件1而引发的过载帧只允许起始于所期望的间歇场的第一个位时间开始。

而由过载条件2引发的过载帧应起始于所检测到“显性”位之后的位。

1.4CAN总线错误处理

1.4.1错误检测

有以下5种不同的错误类型(这5种错误不会相互排斥)

1.位错误(BitError)

单元在发送位的同时也对总线进行监视。

如果所发送的位值与所监视的位值不相合,则在此位时间里检测到一个位错误。

但是在仲裁场(ARBITRATIONFIELD)的填充位流期间或应答间隙(ACKSLOT)发送一“隐性”位的情况是例外的。

此时,当监视到一“显性”位时,不会发出位错误。

当发送器发送一个被动错误标志但检测到“显性”位时,也不视为位错误。

2.填充错误(StruffError)

如果在使用位填充法进行编码的信息中,出现了第6个连续相同的位电平时,将检测到一个填充错误。

3.CRC错误(CRCError)

CRC序列包括发送器的CRC计算结果。

接收器计算CRC的方法与发送器相同。

如果计算结果与接收到CRC序列的结果不相符,则检测到一个CRC错误。

4.形式错误(FormError)

当一个固定形式的位场含有1个或多个非法位,则检测到一个形式错误。

(备注:

接收器的帧末尾最后一位期间的显性位不被当作帧错误)

5.应答错误(AcknowledgmentError)

只要在应答间隙(ACKSLOT)期间所监视的位不为“显性”,则发送器会检测到一个应答错误。

1.4.2错误标定

检测到错误条件的站通过发送错误标志指示错误。

对于“错误主动”的节点,错误信息为“主动错误标志”,对于“错误被动”的节点,错误信息为“被动错误标志”。

站检测到无论是位错误、填充错误、形式错误,还是应答错误,这个站会在下一位时发出错误标志信息。

只要检测到的错误的条件是CRC错误,错误标志的发送开始于ACK界定符之后的位(其他的错误条件除外)。

2.CAN控制器SJA1000分析

2.1CAN节点结构与SJA1000操作模式

SJA1000独立的CAN控制器有2个不同的操作模式:

BasicCAN模式(和PCA82C200兼容);

PeliCAN模式

BasicCAN模式是上电后默认的操作模式。

因此用PCA82C200开发的已有硬件和软件可以直接在SJA1000上使用,而不用作任何修改。

PeliCAN模式是新的操作模式,它能够处理所有CAN2.0B规范的帧类型。

而且它还提供一些增强功能,例如,SJA1000支持一些错误分析功能,支持系统诊断、系统维护和系统优化,而且这个模式里也加入了对一般CPU的支持和系统自身测试的功能。

使SJA1000能应用于更宽的领域。

本设计采用PeliCAN模式,因此只给出PeliCAN模式增强功能。

如表2-1所示。

表2-1PeliCAN模式的增强功能

CAN2.0B(active)

CAN2.0Bactive支持带有29位标识符的网络扩展应用

发送缓冲器

有11位或29位标识符的报文的单报文发送缓冲器

增强的验收滤波器

两个验收滤波器模式支持11位和29位标识符的滤波

可读的错误计数器

支持错误分析在原型阶段和在正常操作期间可用于:

诊断、系统维护、系统优化

可编程的出错警告界限

错误代码捕捉寄存器

出错中断

仲裁丢失捕捉中断

支持系统优化包括报文延迟时间的分析

单次发送

使软件命令最小化和允许快速重载发送缓冲器

仅听模式

SJA1000能够作为一个认可的CAN监控器操作,可以分析CAN总线通信或进行自动位速率检测

自测试模式

支持全部CAN节点的功能自测试或在一个系统内的自接收

通常,每个CAN模块能够被分成不同的功能块,如图2-1所示。

CAN控制器执行在CAN规范里规定的完整CAN协议。

它通常用于报文缓冲和验收滤波。

通用CAN收发器实现从CAN控制器到CAN总线物理层的电气连接。

而所有这些CAN功能都由一个模块控制器控制,它负责执行应用层的功能。

模块控制器

CAN控制器

CAN收发器

传感器

执行器

人机接口

微处理器

SJA1000

PCA82C250/251

传感器

执行器

人机接口

CAN总线

图2-1CAN模块装置

2.2SJA1000内部结构及其功能分析

1.SJA1000内部结构

SJA1000内部可以分为接口管理逻辑、发送缓冲区、接收FIFO、比特流处理器、接收滤波器、定位逻辑器、错误管理逻辑、复位模块和振荡电路这几个部分组成。

其内部结构和相互关系如图2-2所示。

图2-2SJA1000内部结构图

2.SJA1000引脚功能

SJA1000中共有28个外部引脚,芯片封装形式可以是DIP28,也可以是SO28。

AD7~AD0(引脚2、1、28~23)这8个引脚为8位地址/数据端

ALE/AS(引脚3)Intel模式下,该引脚为ALE信号输入端。

Motorola模式下,该引脚为AS信号输入端。

/CS(引脚4)芯片片选端

/RD/E(引脚5)Intel模式下,该引脚为/RD信号输入端,Motorola模式下,

该引脚为E信号输入端。

/WR(引脚6)Intel模式下,该引脚为/WR信号输入端,Motorola模式下,

该引脚为RD//WR信号输入端。

CLKOUT(引脚7)SJA1000的

时钟信号输入端。

该时钟频率可以由SJA1000的内部时钟控制寄存器进行可编程控制,若时钟控制寄存器的ClockOff位为1,则该引脚无效。

VSS1(引脚8)逻辑地

XTAL1、XTAL2(引脚9、10)外部晶振接入端。

Mode(引脚11)模式选择端。

该引脚用于处理器接口的选择,当该引脚接高电平时,SJA1000工作在Intel模式,当该引脚接低电平时,SJA1000工作在Motorola模式。

VDD3(引脚12)输出驱动器的电源端。

TX0、TX1(引脚13、14)CAN输出驱动器的输出端0和输出端1。

VSS3(引脚15)输出驱动器的接地端。

/INT(引脚16)中断信号输出端。

当产生事件且内部中断寄存器对应位被置位时,该引脚产生低电平,通知处理器产生外部中断,处理器可以通过查看中断事件寄存器来了解发生了何种中断。

该引脚为集电极开路,因此多个/INT信号可以直接连接在一起产生线“或”。

/RST(引脚17)芯片复位端。

VDD2(引脚18)输入比较器的电源端。

RX0、RX1(引脚19、20)CAN输入比较器的输入端0和输入端1。

VSS2(引脚21)输入比较器的接地端。

VDD1(引脚22)电源端。

3.SJA1000寄存器及其功能

SJA1000的功能配置和行为由主控制器的命令控制。

因此SJA1000能满足不同属性的CAN总线系统的要求。

主控制器和SJA1000之间的数据交换经过一组寄存器(控制段)和一个RAM(报文缓冲器)完成。

RAM部分的寄存器和地址窗口组成了发送和接收缓冲器,对于主控制器来说就象是外围器件寄存器。

表2-2根据它们在系统的作用分组列出了SJA1000寄存器。

注意,一些寄存器只在PeliCAN模式有效,控制寄存器仅在BasicCAN模式里有效。

一些寄存器是只读的或只写的,还有一些只能在复位模式中访问。

表2-2SJA1000内部寄存器的分类

使用类型

寄存器名称(符号)

寄存器地址

功能

PeilCAN模式

BasicCAN模式

选择不同的操作模式的要素

模式(MOD)

0

选择睡眠模式、验收滤波器模式、自测试模式、只听模式和复位模式

控制(CR)

在BasicCAN模式里选择复位模式

命令(CMR)

BasicCAN模式的睡眠模式命令

时钟分频器(CDR)

31

31

在CLKOUT设置时钟信号(引脚7)选择PeilCAN模式、比较器旁路模式、TX1(管脚14)输出模式

设定CAN通讯的要素

验收码(ACK)

验收屏蔽(AVR)

16~29

20~23

4

5

验收滤波器位的模式选择

总线定时寄存器0(BTR0)

总线定时寄存器1(BTR1)

6

7

6

7

位定时参数的设置

输出控制(OCR)

8

8

输出驱动器属性的选择

命令(CMR)

1

1

自接收、清除数据超载、释放接收缓冲器、中止传输和传输请求的命令

状态(SR)

2

2

报文缓冲器的状态、CAN核心模块的状态

中断(IR)

3

3

CAN中断标志

中断使能(IER)

4

在PeilCAN模式使能和禁能中断

控制(CR)

0

在BasicCAN模式使能和禁能中断事件

复杂的错误检测和分析的要素

仲裁丢失捕捉(ALC)

11

显示仲裁丢失的位置

错误代码捕捉(ECC)

12

显示最近一次的错误类型和位置

出错警告界限(EWLR)

13

产生出错警告中断的阀值选择

RX错误记数(RXERR)

14

反映接收错误记数器的当前值

TX错误记数(TXERR)

14、15

反映发送错误计数器的当前值

Rx报文计数器(RMC)

29

接收FIFO里的报文数量

RX缓冲器起始地址(RBSA)

30

显示接收缓冲器提供的报文的当前内部RAM地址

信息缓冲器

发送缓冲器(TXBUF)

16~28

10~19

接收缓冲器(RXBUF)

16~28

20~29

(1)发送缓冲器/接收缓冲器

在CAN总线上发送的数据被载入SJA1000的存储区,这个存储区叫“发送缓冲器”。

从CAN总线上收到的数据也存储在SJA1000的存储区,这个存储区叫“接收缓冲器”,在BasicCAN模式下。

这些缓冲器包括2、3或5个字节的标识符和帧信息(取决于模式和帧类型),而最多可以包含8个数据字节。

在PeliCAN模式:

这些缓冲器是13个字节长(见表2-3)

−1字节帧信息

−2个或4个标识符字节(标准帧或扩展帧)

−最多8个数据字节。

表2-3是PeliCAN模式里的RX缓冲器1(读访问)和TX缓冲器(写访问2)

表2-3PeliCAN模式读访问和写访问

CAN地址(十进制)

名称

组成和标注

16

帧信息

1位说明,如果报文包括一个标准帧或扩展帧

1位远程传输请求位

4位数据长度码,说明数据字节的数量

17,18

标识符字节1,2

标准帧:

11位标识符

扩展帧:

16位标识符

19,20

标识符字节3,4

仅扩展帧:

13个标识符

帧类型

标准帧:

19~26

扩展帧:

21~28

数据字节1~8

由数据长度码说明,最多8个数据字节

(2)验收滤波器

独立的CAN控制器SJA1000装配了一个多功能的验收滤波器,该滤波器允许自动检查标识符和数据字节。

使用这些有效的滤波方法,可以防止对于某个节点无效的报文或报文组存储在接收缓冲器里。

因此降低了主控制器的处理负载。

滤波器由验收码寄存器和屏蔽寄存器根据给定算法来控制。

接收到的数据会和验收代码寄存器中的值进行逐位比较。

接收屏蔽寄存器定义与比较相关的位的位置(0=相关1=不相关)。

只有收到的报文相应位与验收代码寄存器的相应位相同,报文才会被接收。

PeliCAN模式的验收滤波已被扩展:

4个8位的验收码寄存器(ACR0,ACR1,ACR2和ACR3)和验收屏蔽寄存器(AMR0,AMR1,AMR2和AMR3)可以用多种方法滤波报文。

报文的哪些位用于验收滤波,取决于收到的帧(标准帧或扩展帧)和选择的滤波器模式(单滤波器或双滤波器)。

对于不需要经过验收滤波的报文位(例如报文组被定义为接受),验收屏蔽寄存器必须相应的位位置上置“1”。

如果报文不包括数据字节(例如:

是一个远程帧或者数据长度码为零)但是验收滤波包括数据字节,则如果标识符直到RTR位都有效的话,报文会被接收。

3.CAN总线与RS-232转换接口电路设计

3.1CAN总线与RS-232转换接口电路总体设计

图3-1CAN与RS-232接口转换电路

图3-1为CAN总线与RS-232接口转换电路图。

整个转换接口电路包括:

主控制模块、RS-232接口转换电路和CAN控制模块3个主要部分。

主控制模块处理CAN总线以及RS-232接口的数据通信和控制,利用AT89C51完成两种格式数据帧的交换,并对接口进行控制。

RS-232接口电路由MAX232芯片构成,实现将单片机串口的TTL电平与RS-232电平的相互转换。

CAN控制器模块,主要完成CAN协议的物理层和数据链路层协议的实现。

其中物理接口采用PCA82C250芯片实现物理层的电平转换和传输。

CAN控制器使用SJA1000芯片,实现数据链路层协议。

3.2主控制模块电路设计

图3-2主控制模块电路图

主控制模块负责处理CAN以及RS-232接口的数据通信与控制,利用AT89C51完成两种格式数据帧的交换,并对接口进行控制。

如图3-2中所示,RS-232与CAN的转接板主要实现RS-232接口与CAN总线接口之间的数据传输,其运算量不大,因此选用可以有效降低成本的AT89C51作为整个设计的主控制器。

AT89C51提供以下标准功能:

4k字节Flash闪速存储器,1000次可擦写周期,三级加密程序存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件的可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM、定时/计数器、窜行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止所有部件工作直到下一个硬件复位。

AT89C51的电源使用+5V电源,同时其P3.5、P3.4以及P1.4~P1.5外接一个DIP6开关,用于设置单片机本身的地址信息。

AT89C51使用的晶振信号由SJA1000提供(SJA1000用24MHz的片外晶振),SJA1000的CLKOUT引脚接入MCU的XTAL1引脚。

3.2.1AT89C51与6116电路设计

图3-3AT89C51与6116连接电路图

由于CAN总线速率与RS-232接口速率并不相同,因此设计中还增加了片外RAM芯片6116,用作转换双方的数据缓冲区。

设计中使用P2.7接反向器连接6116的片选端,所以接口转换电路中的片外RAM的起始地址实际上应为0X8000。

AT89C51通过数据总线、地址总线及控制总线与存储器连接,如图3-4所示:

AT89C51

存储器

地址总线

控制总线

数据总线

图3-4片外存储器原理框图

本设计中选用的是6116。

6116为2KX8位的静态RAM,其逻辑图3-5如下:

6116

A0~10VCC

I/O0~7

/W

/G

/EGND

S1

图3-5片外RAM6116逻辑图

其中A0~A10为11根地址线,I/O~I/O7为8根数据线,/E为片选端,当/E低电平有效时才能选中芯片。

/G为数据输出选通端,/W为写信号端。

其工作方式见表3-1:

表3-1片外数据存储器工作方式

控制信号

/E

/G

/W

0

0

1

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 数学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2