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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于ARM7的CAN总线网络设计Word文档下载推荐.docx

1、本课题的最终目的是达到对现场总线控制系统的掌握和应用,并且掌握用电子硬件开发的思路和方法,培养和提高个人的独立科研及设计能力。本课题亦可为其它嵌入式系统所用,对其它嵌入式系统的开发有重要价值。1.3 ARM嵌入式系统的发展趋势和现况嵌入式系统的发展在很大程度上改变了以往前后台系统单一的功能,是智能设备向多任务、多功能、智能化、图形操作人机界面的方向发展,并取得了广泛的应用。例如,以前的电梯系统通常使用PLC作为主控单元,针对当今的高速、高层次电梯已经无法发挥出其优势,取代它的是具有多功能、多接口、图形界面的嵌入式电梯主控控制器。现代的先进汽车,更是具有多个嵌入式系统,完善的功能和放心的安全性能

2、也是我们有目共睹的。就连美国的火星车,也采取了嵌入式系统。所以,纵观当今的电子行业,几乎所有的产品领域都朝着嵌入式方向发展并不断深入。由于网络与通信技术的发展,嵌入式系统在经历了近20年的发展历程后,又进入了一个新的历史发展阶段,即从普通的低端应用进入到一个高、低端并行发展,并且不断提升低端应用技术水平的时代,其标志是近年来32位MCU的发展。32位MCU的应用不会走8位机百花齐放、百余种型号系列齐上阵的道路,这是因为在8位机的低端应用中,嵌入对象与对象专业领域十分广泛而复杂;而32位的MCU的高端应用则多集中在网络、通信和多媒体技术领域,32位MCU将会集中在少数厂家发展的少数型号系列上。在

3、众多嵌入式系统厂家参与下,基于ARM系列处理器的应用技术会在众多领域取得突破性进展。Intel公司将ARM系列向更高端的嵌入式系统发展;而NXP公司则在向高端嵌入式系列发展的同时,向低端的8位和16位机的高端应用延伸。Intel公司和NXP公司的发展都体现了各自的特点,并充分发挥了各自的优势。因此,在32位嵌入式系统的应用中,ARM系列会形成ARM公司领军,众多厂家参与,计算机专业、电子技术专业以及对象专业人士共同推动的局面,形成未来32位嵌入式系统应用的主流趋势。1.4本设计的任务本课题以CAN-bus智能楼宇、照明系统的设计为基础,采用当前比较流行的iCAN协议,硬件平台采用基于ARM7的

4、LPC2000系列芯片作为该平台的核心。LPC2000系列中的LPC2x9x芯片内部集成FullCAN控制器,受到了同行业的青睐。在软件方面,重点描述了系统软件的构建和驱动程序框架的编写。具体工作如下:1、对iCAN总线的技术规范、通信协议以及标准进行学习,以及与CAN2.0协议的差别。2、对设计中运用的芯片LPC2000系列进行学习,掌握实际运用的方法。完成基于CAN总线技术的智能节点模块的设计。实现采集现场数据的传送。本次设计的重点就是CAN总线通信接口电路设计。3、在硬件搭建完成的基础上,完成系统软件设计,画出初始化流程图,数据的发送和接受流程图,编写其相对的程序。4、在设计的基础上完成

5、相应的仿真,本来想完成实物的设计,但由于能力有限未能实现,希望能做一些仿真。第2章 CAN总线技术 2.1 CAN-bus 的特点CAN属于总线式串行通信网络,由于其采用了许多新技术及其独特的设计,与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性,因而一些世界著名的汽车厂商如BENZ,BMW,ROLLS-ROYCE等都采用CAN总线来实现汽车内部控制系统与各检测和执行机构间的数据通信11。其特点可概括如下12:1、CAN为多主方式工作,也就是说网络上的任何一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从,通信方式比较灵活,而不用站点地址等节点信息。2、C

6、AN网络上的节点信息分成不同的优先级,可满足不同的实时要求,高优先级的数据最多可在134us内得到传输。3、CAN总线采用非破坏性总线仲裁技术。当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁的时间。4、CAN总线只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。5、CAN的直接通信距离最远可达10km(速率5kbps以下);通信速率最高可达1 Mbps(此时通信距离最长为40m)。6、CAN上的节点主要取决于总线驱动电路,目前可达110个;报文标识符可达2032种(CAN2.0A

7、),而扩展标准(CAN2.0B)的报文标识符几乎不受限制。7、CAN总线采用短帧结构,传输时间短,受干扰概率小,具有极好的检错效果。8、CAN的每帧信息都有CRC检验及其他检错措施,保证了数据出错率极低。9、CAN通信介质可为双绞线、同轴电缆或光纤,选择灵活。在系统结构确定的基础上,上述方案选择的依据将贯穿于整个系统的硬件设计和调试过程中。同时,系统设计还要考虑到新颖性和技巧性的兼顾。2.2 CAN-bus与RS-485的特性比较 CAN-bus总线在通信能力、可靠性、实时性、灵活性、易用性、传输距离远、成本底等方面有着明显的优势,成为业界最有前途的现场总线之一。这里我们选取在国内广泛应用的R

8、S-485总线与CAN-bus总线进行比较,从中不难看出在串行的数据通信上CAN-bus总线具有的强大优势。表2.1 CAN-bus与RS-485的特性比较特性RS-485CAN-bus成本低廉稍高总线利用率低高网络特性单主网络多主网络数据传输率容错机制无有通信失败率极低节点错误的影响网络瘫痪无影响通信距离1.5km可达10km网络调试困难非常容易开发难度大小后期维护成本2.3 CAN-bus 分层结构2.3.1 CAN-bus 的ISO/OSI参考模型结构 根据CAN2.0 B协议,ISO/OSI参考模型结构分为两层:数据链路层和物理层;如图:数据链路层逻辑链路控制子层LLC接收滤波超载通知

9、恢复管理媒体访问控制子层MAC数据封装/拆装帧编码(填充,解除填写)媒体访问管理错误检测出错标定应答串行化/解除串行化物理层位编码/解码位同步同步故障界定总线故障管理图2.1 CAN-bus 的ISO/OSI参考模型结构LLC子层的主要功能是:为数据传送和远程数据请求提供服务,确认由LLC子层接收的报文已被接收,并为恢复管理和通知超载提供信息。MAC子层的功能主要是传送规则,亦即控制帧的结构、执行仲裁、错误检测、出错标定和故障界定。物理层的功能是有关全部电气特性在不同节点间的实际传送。CAN技术规范CAN2.0B定义了数据链路中的MAC子层和LLC子层的一部分,并描述与CAN有关的外层。物理层

10、定义了信号怎样进行发送,因而,涉及位定时、位编码元和同步的描述。在这部分技术规范中,未定义物理层中的驱动器/接收器特性,以便允许根据具体应用,对发送媒体和信号电平进行优化,使信号传输更加方便17。MAC子层是CAN协议的核心,它描述由LLC子层接收到的报文和对LLC子层发送的认可报文。MAC子层可响应报文帧、仲裁、应答、错误检测标定。MAC子层有称为故障界定的一个管理实时监控,它具有识别永久故障或短暂扰动的自检机制。LLC子层的主要功能是报文滤波、超载通知和恢复管理18。2.3.2 帧结构1、帧格式有两种不同的帧格式,它们的标示符场的长度不同:具有11位标示符的帧称为标准帧,而含有29位标示符

11、的帧称为扩展帧。2、帧类型表2.2 帧的种类及用途帧帧用途数据帧用于发送单元向接收单元传送数据的帧远程帧用于接收单元向具有相同 ID的发送单元请求数据的帧错误帧用于当检测出错误时向其它单元通知错误的帧过载帧用于接收单元通知其尚未做好接收准备的帧帧间隔用于将数据帧及遥控帧与前面的帧分离开来的帧(1) 数据帧 数据帧由7个不同的位场组成,即帧起始、仲裁场、控制场、数据场、CRC场、应答场和帧结束20。数据帧的结构如图2.2示:图2.2 数据帧 帧起始(SOF)标志数据帧和远程帧的起始,它仅由一个显性位构成。只有在总线处于空闲状态时才允许站开始发送。所有站都必须同步于首先开始发送的那个站的帧起始前沿

12、。仲裁场由标识符ID和RTR位(远程发送请求位)组成。对于CAN2.0B,标准格式和扩展格式的仲裁场格式不同。在标准格式中,仲裁场由11位ID和RTR位组成,标识符为ID.28ID.18,如图2.3所示:图2.3 标准格式的仲裁场而在扩展格式中,仲裁场由29位标识符、SRR位(替代远程请求位)、IDE位(标识符扩展位)和RTR 位(远程发送求位)组成,标识符位为ID.28ID.0,如图2-4所示:图2.4 扩展格式的仲裁场控制场由保留位和数据长度码共6位组成。其结构如图2.5所示。数据长度代码图2.5 控制场标准格式和扩展格式的控制域结构相同但位置不同。CAN2.0A规范的r1位相当于CAN2

13、.0B规范的IDE位。两个保留位r1、r0必须发送显性位,但接收器认可显性和隐性的全部组合。数据长度码DLC指出数据场的字节数目。数据长度码为4位,在控制场中被发送。数据字节的允许使用数目为08,不能使用其他数值。数据场由数据帧中被发送的数据组成,它可包括08个字节8位。首先发送的是最高有效位。CRC场包括CRC序列,后随CRC定界符,共16位。如图2.6所示。应答场图2.6 CRC场CRC序列由循环冗余码求得的帧检查序列组成,最适用于位数小于127的帧。为实现CRC计算,被除多项式系数由不包含填充为的位流给定,组成该位流的成分包括帧起始、仲裁场、数据场(若存在的话)和在后面添加的15个0。此

14、多项式被下面的生成多项式除:,除得的余数就是发送到总线上的CRC序列。CRC序列后面是CRC界定符,它只包括一个隐性位。应答场(ACK)为两位,包括应答间隙和应答界定符,如图2.7所示。帧结束图2.7 应答场在应答场中,发送器送出两个隐位。当接收器正确地接收到有效地报文,该接收器就会在应答期间发送显性位(即发送应答)来通知发送器。所有接收到有效报文的接收器都会发送应答,而不管该报文能否通过接收器的报文过滤或最终是否被采用。ACK界定符是应答场的第二位,必须为隐性。因此,应答间隙被两个隐性位(CRC界定符和ACK界定符)包围。帧结束:每个数据帧和远程帧均由7个隐性位组成的标志序列界定21。(2)

15、 远程帧 远程帧由6个不同的位场组成:帧起始、仲裁场、控制场、CRC场、应答场和帧结束22。其结构如图2.8所示。帧间隔或过载帧图2.8 远程帧与数据帧相反,远程帧的RTR位是隐性位。远程帧不存在数据场。DLC的数据值是没有意义的,它可以是0-8中的任何数值,该数值也就是所请求数据帧的数据长度码。(3) 错误帧出错帧由两个不同的场组成,第一个部分由来自不同节点的出错标志叠加而成,随后的第二部分是出错界定符。如图2.9所示。图2.9 错误帧出错标志有两种形式:积极出错标志和消极出错标志由6个连续的隐性位组成(有时被其他节点的显性位覆盖)。一个错误积极节点如果检测到了一个出错条件,会发送一个积极出

16、错标志进行标识。这一个出错标志违反了位填充规则(填充规则适用于从帧起始到CRC界定符之间的所有域)或破坏了应答场和帧结束的固定格式,结果引起其他节点检测到新的出错条件并各自开始发送出错标志。所以,这个在总线上可被检测到的显性位序列是各个节点发出的不同出错标志的叠加的结果。该序列的总长度在612位之间变化。一个错误消极节点如果检测到了一个出错条件,会试图发送一个消极出错标志进行标识。这个错误消极节点等待6个具有相同极性的连续位(从消极出错标志的起始开始),当检测到6个相同极性的连续位,消极出错标志的发送即告完成。出错界定符由8个隐性位组成。出错标志发出后,每个节点都发送隐性位,并监视总线,直到检

17、测到隐性位,随后开始发送剩余的7个隐性位。(4)过载帧过载帧包括两个位场:过载标志和过载界定符。如图2.10所示。图2.10 过载帧有三种过载条件都会导致过载标志的传送:1)接收器的内部条件(此时接收器对于下一数据帧或远程帧需要有一延时)。2)间歇场期间检测到显性位。3)如果CAN节点在错误界定符或过载界定符的第8位(最后一位)采样到一个显性位,节点会发送一个过载帧(不是错误帧)。错误计数器不会增加。由过载条件1而引发的过载帧只允许起始于所期望的间歇场的第一个位时间,而由过载条件2和3引发的过载帧应起始于所检测到显性位之后的位。、过载标志由6个显性位组成。过载标志的所有形式和“活动错误”标志的

18、一样。过载标志的形式破坏了间歇场的固定形式。因此,所有其他的站也都检测到过载条件并与此同时发出过载标志。如果有的节点在间歇的第3个位期间于本地检测到显性位,则其他的节点将不能正确地解释过载标志,而是将这6个显性位中的第一个位解释为帧的起始。这第6个显性位破坏了产生错误条件的位填充的规则。过载界定符包括8个隐性位。过载界定符的形式和错误界定符的形式一样。过载标志被传送后,站就一直监视总线直到检测到一个从显性位到隐性位的跳变为止。此时,总线上的每一个站完成了过载标志的发送,并开始同时发送7个以上的隐性位23。(5)帧间隔数据帧(或远程帧)与它前面帧的隔离是通过帧间隔实现的,无论其前面的帧为何类型(

19、数据帧、远程帧、出错帧、过载帧)。所不同的是,过载帧与出错帧之前没有帧间隔,多个过载帧之间也不是由帧间隔隔离的。帧间隔包括间歇场、总线空闲的位场以及可能的暂停发送场。只有刚发送出前一报文的错误消极节点才需要暂停发送场24。非错误消极节点或者作为前一报文接收器的节点的帧间隔如图2.11所示。图2.11 非错误消极节点帧间隔作为前一报文发送器的错误消极节点的帧间隔如图2.12所示。图2.12 错误消极节点帧间隔2.3.3 报文滤波及校验1、报文的滤波取决于整个识别符,允许在报文滤波中将任何的识别符位置设置为“不考虑”的可选屏蔽寄存器。可以选择多组的识别符,使之被映射到隶属的接收缓冲器里。如果使用屏

20、蔽寄存器,它的每一位必须是可编程的,即它们能够被允许或禁止报文滤波。屏蔽寄存器的长度可以包含整个识别符,也可以包含部分识别符。2、校验报文有效的时间点,发送器与接收器不同。(1)发送器如果直到帧的末尾均没有错误,则此报文对于发送器有效:如果报文破损,则报文会根据优先权自动重发。为了能够和其他报文竞争总线,重发传输必须在总线空闲时启动。(2)接收器如果直到最后的一位(除了帧末尾位)均没有错误,则报文对于接收器有效;如果一个“显性”电平也不会引起格式错误,帧末尾最后的位则被置于“不重要”状态。2.3.4 错误处理帧错误有以下5种不同的类型:1、位错误单位在发送位的同时也对总线进行监视。如果所发送的

21、位置与所监视的位置不相符合,则在此时间里检测到一个位错误(bit error);但是在仲裁场的填充位流期间或应答间隙发送一“隐性”位的情况是例外的此时,当监视到一“显性”位时,不会发出位错位。当发送器发送一个被动错误标志,但检测到“显性”位时也不视为位错误。2、填充错误如果在使用位填充法进行编码的信息中,出现了第6个连续相同的位电平时,将检测到一个天聪错误。3、CRC错误CRC序列包括发送器的CRC计算结果,接收器计算CRC的方法与发送器相同。如果计算结果与接收到CRC序列的结果不同,则检测到一个CRC错误。4、形式错误当一个固定形式的为场含有一个或多个非法位,则检测到一个形式错误。5、应答错

22、误只要在应答间隙期间所监视的位不为“显性”,则发送器会检测到一个应答错误。2.3.5 位定时与同步位定时与同步的基本概念包括:标称位速率、标称位时间、时间份额、信息处理时间、时间段的长度、同步。1、位周期结构同步段 传播段 相位缓冲段1 相位缓冲段2 采样点图2.13位时间结构2、同步机制(1)硬同步 同 传播 步 延迟 相位缓冲段1 相位缓冲段2段 段图2.14 硬同步2.4 CAN-bus 应用层协议 2.4.1 常用的CAN-bus应用层协议高层协议是在CAN规范的基础上发展起来的应用层,好多已经广泛应用。常用的CAN-bus高层协议有:DeviceNet 协议 制定组织:ODVACAL

23、协议 制定组织:CIACANopen协议 制定组织:CANkingdom协议 制定组织:KvaserJ1939协议 制定组织:SAESDS协议 制定组织:HoneywellDeviceNet协议和CANopen协议是真正占据市场的协议。标准的应用层协议具有以下特点:1、 一个开放的、标准的CAN-bus高层协议;2、 制定属于特定行业的CAN-bus应用方案;3、 支持不同厂商设备的互用性、可交换性;4、 完善地定义标准设备模型;5、 开放扩充自定义接口;6、 对总线仲裁、数据交换、错误处理有明显的界定。2.4.2 基于CAN-bus的iCAN协议iCAN协议详细的定义了CAN-bus报文中帧

24、标识符以及数据的分配和应用,建立了一个统一的设备模型,定义了设备的I/O资源和访问规则,主要内容如:(1)iCAN报文格式定义,规定了iCAN协议规范中使用的CAN帧类型、以及帧ID、报文数据的使用(2)报文传输协议,规定了基于iCAN协议的设备之间的通讯方式(3)设备的定义,设备标识、设备应用单元、设备通讯以及应用参数以及定义标准设备类型,区分网络上设备具有的不同功能或者产品类型(4)网络管理,规定了设备通讯监控以及错误管理1、iCAN协议的通信层结构iCAN协议iCAN报文格式定义报文传输协议的网络管理设备功能定义应用层协议CAN底层协议 CAN-bus图2.15 iCAN协议的通信层结构

25、2、iCAN的报文传输协议(1)iCAN协议的通信模式1)点对点传送iCAN报文源地址1 目的地址8节点1节点2节点8图2.16 iCAN协议的点对点传送2)广播式传送源地址1 目的地址0xFF图2.17 iCAN协议的广播式传送3)事件触发通信模式节点9 输入超限 定时上传 定时上传图2.18 iCAN事件触发通信模式2、iCAN协议报文处理流程等待CAN报文报文中MAC ID接收无效报文,丢失 与节点MAC ID 不相符 与节点MAC ID相符是否建立连接连接没有建立建立连接验证功能码非法功能码有效功能码 验证数据或者资源无效参数有效参数根据报文内容进行处理异常响应正常响应发送响应报文图2.19 iCAN报文处理流程3、iCAN协议的特点iCAN协议在汲取DeviceNET和CANopen 协议之精粹基础上,充分继承和发展了基于连接和对象寻址两种核心功能。支持多种传输方式,包括轮询方式、状态触发方式以及定时循环方式,还根据国内实际情况,

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

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