ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:209.89KB ,
资源ID:21666433      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21666433.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(CAN总线与RS转换接口电路设计Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

CAN总线与RS转换接口电路设计Word格式文档下载.docx

1、CAN总线协议层次结构由高到低如表1-1所示。表1-1CAN总线协议层次结构协议层对应OSI模型说明LLC数据链路层逻辑链路控制子层,用于为链路中的数据传输提供上层控制手段MAC媒体访问控制子层,用于控制帧结构、仲裁、错误界定等数据传输的具体实现物理层物理层的作用是在不同节点之间根据所有的电气属性进行位的实际传输LLC层和MAC层也可以看作是CAN总线数据链路层的两个子层。其中LLC层接收MAC层传递的报文,主要完成报文滤波、过载通知以与恢复管理等工作。而MAC层则为数据报文的传输进行具体的控制,包括帧结构控制、总线仲裁、错误检测、出错界定、报文收发控制等工作。物理层定义了信号是如何实际传输的

2、,因此涉与到位时间、位编码、同步的解释,CAN总线协议并未对物理层部分进行具体的规定。1.3 CAN总线报文传输结构报文传输由以下4个不同的帧类型所表示1数据帧:数据帧携带数据从发送器至接收器。数据帧由7个不同的位场组成:帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结尾。数据场的长度可以为0。数据帧(或远程帧)通过帧间空间与前述的各帧分开。2远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧。远程帧由6个不同的位场组成:帧起始、仲裁场、控制场、CRC场、应答场、帧末尾。通过发送远程帧,作为某数据接收器的站通过其资源节点对不同的数据传送进行初始化设置。3错误帧:任何单元检测到总线

3、错误就发出错误帧。错误帧由两个不同的场组成。第一个场用作为不同站提供的错误标志(ERROR FLAG)的叠加。第二个场是错误界定符。为了能正确地终止错误帧,“错误被动”的节点要求总线至少有长度为3个位时间的总线空闲(如果“错误被动”的接收器有本地错误的话)。因此,总线的载荷不应为100%。有两种形式的错误标志,主动错误标志(Active error flag)和被动错误标志(Passive error flag)。4过载帧:过载帧用以在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。过载帧包括两个位场:过载标志和过载界定符。有两种过载条件都会导致过载标志的传送:(1)接收器的内部条件(此

4、接收器对于下一数据帧或远程帧需要有一延时)。(2)间歇场期间检测到一“显性”位。由过载条件1 而引发的过载帧只允许起始于所期望的间歇场的第一个位时间开始。而由过载条件2引发的过载帧应起始于所检测到“显性”位之后的位。1.4 CAN总线错误处理1.4.1 错误检测有以下5种不同的错误类型(这5种错误不会相互排斥)1位错误(Bit Error)单元在发送位的同时也对总线进行监视。如果所发送的位值与所监视的位值不相合,则在此位时间里检测到一个位错误。但是在仲裁场(ARBITRATION FIELD)的填充位流期间或应答间隙(ACK SLOT)发送一“隐性”位的情况是例外的。此时,当监视到一“显性”位

5、时,不会发出位错误。当发送器发送一个被动错误标志但检测到“显性”位时,也不视为位错误。2填充错误(Struff Error)如果在使用位填充法进行编码的信息中,出现了第6个连续相同的位电平时,将检测到一个填充错误。3CRC错误(CRC Error)CRC序列包括发送器的CRC计算结果。接收器计算CRC的方法与发送器相同。如果计算结果与接收到CRC序列的结果不相符,则检测到一个CRC错误。4形式错误(Form Error)当一个固定形式的位场含有1个或多个非法位,则检测到一个形式错误。(备注:接收器的帧末尾最后一位期间的显性位不被当作帧错误)5应答错误(Acknowledgment Error)

6、只要在应答间隙(ACK SLOT)期间所监视的位不为“显性”,则发送器会检测到一个应答错误。1.4.2 错误标定检测到错误条件的站通过发送错误标志指示错误。对于“错误主动”的节点,错误信息为“主动错误标志”,对于“错误被动”的节点,错误信息为“被动错误标志”。站检测到无论是位错误、填充错误、形式错误,还是应答错误,这个站会在下一位时发出错误标志信息。只要检测到的错误的条件是CRC错误,错误标志的发送开始于ACK界定符之后的位(其他的错误条件除外)。2. CAN控制器SJA1000分析2.1 CAN节点结构与SJA1000操作模式SJA1000独立的CAN控制器有2个不同的操作模式:BasicC

7、AN模式(和PCA82C200兼容);PeliCAN模式BasicCAN模式是上电后默认的操作模式。因此用PCA82C200开发的已有硬件和软件可以直接在SJA1000上使用,而不用作任何修改。PeliCAN模式是新的操作模式,它能够处理所有CAN2.0B规范的帧类型。而且它还提供一些增强功能,例如,SJA1000支持一些错误分析功能,支持系统诊断、系统维护和系统优化,而且这个模式里也加入了对一般CPU的支持和系统自身测试的功能。使SJA1000能应用于更宽的领域。本设计采用PeliCAN模式,因此只给出PeliCAN模式增强功能。如表2-1所示。表2-1PeliCAN模式的增强功能CAN2.

8、0B (active)CAN2.0B active 支持带有29 位标识符的网络扩展应用发送缓冲器有11 位或29 位标识符的报文的单报文发送缓冲器增强的验收滤波器两个验收滤波器模式支持11 位和29 位标识符的滤波可读的错误计数器支持错误分析在原型阶段和在正常操作期间可用于:诊断、系统维护、系统优化可编程的出错警告界限错误代码捕捉寄存器出错中断仲裁丢失捕捉中断支持系统优化包括报文延迟时间的分析单次发送使软件命令最小化和允许快速重载发送缓冲器仅听模式SJA1000能够作为一个认可的CAN 监控器操作,可以分析CAN 总线通信或进行自动位速率检测自测试模式支持全部CAN 节点的功能自测试或在一个

9、系统内的自接收通常,每个CAN模块能够被分成不同的功能块,如图2-1所示。CAN控制器执行在CAN规范里规定的完整CAN协议。它通常用于报文缓冲和验收滤波。通用CAN收发器实现从CAN控制器到CAN总线物理层的电气连接。而所有这些CAN功能都由一个模块控制器控制,它负责执行应用层的功能。图2-1 CAN模块装置2.2 SJA1000内部结构与其功能分析1SJA1000内部结构SJA1000内部可以分为接口管理逻辑、发送缓冲区、接收FIFO、比特流处理器、接收滤波器、定位逻辑器、错误管理逻辑、复位模块和振荡电路这几个部分组成。其内部结构和相互关系如图2-2所示。图2-2 SJA1000内部结构图

10、2SJA1000引脚功能 SJA1000中共有28个外部引脚,芯片封装形式可以是DIP28,也可以是SO28。 AD7AD0(引脚2、1、2823) 这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

11、的时钟信号输入端。该时钟频率可以由SJA1000的内部时钟控制寄存器进行可编程控制,若时钟控制寄存器的Clock Off 位为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) 中

12、断信号输出端。当产生事件且内部中断寄存器对应位被置位时,该引脚产生低电平,通知处理器产生外部中断,处理器可以通过查看中断事件寄存器来了解发生了何种中断。该引脚为集电极开路,因此多个/INT信号可以直接连接在一起产生线“或”。 /RST(引脚17) 芯片复位端。 VDD2(引脚18) 输入比较器的电源端。 RX0、RX1(引脚19、20) CAN输入比较器的输入端0和输入端1。 VSS2(引脚21) 输入比较器的接地端。VDD1 (引脚22) 电源端。3SJA1000寄存器与其功能SJA1000的功能配置和行为由主控制器的命令控制。因此SJA1000能满足不同属性的CAN总线系统的要求。主控制器

13、和SJA1000之间的数据交换经过一组寄存器(控制段)和一个RAM(报文缓冲器)完成。RAM部分的寄存器和地址窗口组成了发送和接收缓冲器,对于主控制器来说就象是外围器件寄存器。表2-2根据它们在系统的作用分组列出了SJA1000寄存器。注意,一些寄存器只在PeliCAN模式有效,控制寄存器仅在BasicCAN模式里有效。一些寄存器是只读的或只写的,还有一些只能在复位模式中访问。表2-2 SJA1000 内部寄存器的分类使用类型寄存器名称(符号)寄存器地址功能PeilCAN模式BasicCAN模式选择不同的操作模式的要素模式(MOD)选择睡眠模式、验收滤波器模式、自测试模式、只听模式和复位模式控

14、制(CR)在BasicCAN模式里选择复位模式命令(CMR)BasicCAN模式的睡眠模式命令时钟分频器(CDR)31在CLKOUT设置时钟信号(引脚7)选择PeilCAN模式、比较器旁路模式、TX1(管脚14)输出模式设定CAN通讯的要素验收码(ACK)验收屏蔽(AVR)1629202345验收滤波器位的模式选择总线定时寄存器0(BTR0)总线定时寄存器1(BTR1)67位定时参数的设置输出控制(OCR)8输出驱动器属性的选择1自接收、清除数据超载、释放接收缓冲器、中止传输和传输请求的命令状态(SR)2报文缓冲器的状态、CAN核心模块的状态中断(IR)3CAN中断标志中断使能(IER)在Pe

15、ilCAN模式使能和禁能中断在BasicCAN模式使能和禁能中断事件复杂的错误检测和分析的要素仲裁丢失捕捉(ALC)11显示仲裁丢失的位置错误代码捕捉(ECC)12显示最近一次的错误类型和位置出错警告界限(EWLR)13产生出错警告中断的阀值选择RX错误记数(RXERR)14反映接收错误记数器的当前值TX错误记数(TXERR)14、15反映发送错误计数器的当前值Rx报文计数器(RMC)29接收FIFO里的报文数量RX缓冲器起始地址(RBSA)30显示接收缓冲器提供的报文的当前内部RAM地址信息缓冲器发送缓冲器(TXBUF)16281019接收缓冲器(RXBUF)2029(1)发送缓冲器/接收缓

16、冲器在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-3 PeliCAN模式读访问和写访问CAN地址(十进制)名称组成和标注16帧信息1位说明

17、,如果报文包括一个标准帧或扩展帧1位远程传输请求位4位数据长度码,说明数据字节的数量17,18标识符字节1,2标准帧:11位标识符扩展帧:16位标识符19,20标识符字节3,4仅扩展帧:13个标识符帧类型19262128数据字节18由数据长度码说明,最多8个数据字节(2)验收滤波器独立的CAN控制器SJA1000装配了一个多功能的验收滤波器,该滤波器允许自动检查标识符和数据字节。使用这些有效的滤波方法,可以防止对于某个节点无效的报文或报文组存储在接收缓冲器里。因此降低了主控制器的处理负载。滤波器由验收码寄存器和屏蔽寄存器根据给定算法来控制。接收到的数据会和验收代码寄存器中的值进行逐位比较。接收

18、屏蔽寄存器定义与比较相关的位的位置(0=相关1=不相关)。只有收到的报文相应位与验收代码寄存器的相应位相同,报文才会被接收。PeliCAN模式的验收滤波已被扩展:4个8位的验收码寄存器(ACR0,ACR1,ACR2和ACR3)和验收屏蔽寄存器(AMR0,AMR1,AMR2和AMR3)可以用多种方法滤波报文。报文的哪些位用于验收滤波,取决于收到的帧(标准帧或扩展帧)和选择的滤波器模式(单滤波器或双滤波器)。对于不需要经过验收滤波的报文位(例如报文组被定义为接受),验收屏蔽寄存器必须相应的位位置上置“1”。如果报文不包括数据字节(例如:是一个远程帧或者数据长度码为零)但是验收滤波包括数据字节,则如

19、果标识符直到RTR位都有效的话,报文会被接收。3. CAN总线与RS-232转换接口电路设计3.1 CAN总线与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协议的物理层和数据

20、链路层协议的实现。其中物理接口采用PCA82C250芯片实现物理层的电平转换和传输。CAN控制器使用SJA1000芯片,实现数据链路层协议。3.2 主控制模块电路设计图3-2主控制模块电路图主控制模块负责处理CAN以与RS-232接口的数据通信与控制,利用AT89C51完成两种格式数据帧的交换,并对接口进行控制。如图3-2中所示,RS-232与CAN的转接板主要实现RS-232接口与CAN总线接口之间的数据传输,其运算量不大,因此选用可以有效降低成本的AT89C51作为整个设计的主控制器。AT89C51提供以下标准功能:4k字节Flash闪速存储器,1000次可擦写周期,三级加密程序存储器,1

21、28字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内振荡器与时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件的可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM、定时/计数器、窜行通信口与中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止所有部件工作直到下一个硬件复位。AT89C51的电源使用+5V电源,同时其P3.5、P3.4以与P1.4P1.5外接一个DIP6开关,用于设置单片机本身的地址信息。AT89C51使用的晶振信号由SJA1000提供(SJA1000用24MHz的片外晶振),S

22、JA1000的CLKOUT引脚接入MCU的XTAL1引脚。3.2.1 AT89C51与6116电路设计图3-3AT89C51与6116连接电路图由于CAN总线速率与RS-232接口速率并不相同,因此设计中还增加了片外RAM芯片6116,用作转换双方的数据缓冲区。设计中使用P2.7接反向器连接6116的片选端,所以接口转换电路中的片外RAM的起始地址实际上应为0X8000。AT89C51通过数据总线、地址总线与控制总线与存储器连接,如图3-4所示:图3-4片外存储器原理框图本设计中选用的是6116。6116为2KX8位的静态RAM,其逻辑图3-5如下:图3-5 片外RAM6116逻辑图其中A0A

23、10为11根地址线,I/OI/O7为8根数据线,/E为片选端,当/E低电平有效时才能选中芯片。/G为数据输出选通端,/W为写信号端。其工作方式见表3-1:表3-1片外数据存储器工作方式控制信号/E/G/W读写非选通3.2.2 看门狗电路设计一般有软件看门狗和硬件看门狗两种。软件看门狗不需外接硬件电路,但系统需要出让一个定时器资源,而且若系统软件运行不正常,可能导致看门狗系统也瘫痪。硬件看门狗是真正意义上的“程序运行监视器”,如计数型的看门狗电路通常由555多谐振荡器、计数器以与一些电阻、电容等组成,分立元件组成的系统电路较为复杂,运行不够可靠。所以本设计使用带有SPI总线接口的X25045实现

24、硬件看门狗功能。图3-6 X25045芯片图1X25045引脚功能/CS: 片选择输入SO: 串行输出,数据由此引脚逐位输出SI: 串行输入,数据或命令由此引脚逐位写入X25045SCK: 串行时钟输入,其上升沿将数据或命令写入,下降沿将数据输出/WP: 写保护输入。当它低电平时,写操作被禁止Vss: 地Vcc: 电源电压RESET:复位输出2X25045的特性可选时间的看门狗定时器 VCC的降压检测和复位控制5种标准的开始复位电压使用特定的编程顺序即可对低电压检测和复位开始电压进行编程 复位电压可低至VCC=1V 省电特性 在看门狗打开时,电源小于50uA在看门狗关闭时,电源小于10uA在读

25、操作时,电源小于2mA4K位EEPROM 1000000次的擦写周期具有数据的块保护功能,可以保护1/4、1/2或全部的EEPROM,当然也可以置于不保护状态内建防误写措施 用指令允许写操作 写保护引脚时钟可达3.3M短的编程时间 16字节的页写模式 写时由器件内部自动完成 典型的器件写周期为5ms3X25045功能如图3-7所示,X25045将四种功能合于一体,上电复位控制、看门狗定时器、降压管理以与具有块保护功能的串行EEPROM,它有助于简化转换接口的设计,减少印制板的占用面积,提高可靠行。图3-7 X25045内部结构图该芯片内的串行EEPROM具有块锁保护COMS串行EEPROM,它被组织成8位的结构,它由一个由四线构成的SPI总线方式进行操作,其擦写周期至少有1000000次,并且写好的数据能够保存100年。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1