您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于CAN总线的主从机通信系统设计
武汉理工大学课程论文《现场总线技术》课程论文论文题目:基于CAN总线主从机通信系统设计学院(系):信息工程学院专业:电子科学与技术班级:信研学生姓名:XXX学号:1049721202900教师:周伟2013年5月30日武汉理工大学课程论文I摘要现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN(ControllerAreaNetwork)属于现场总线的范畴,是一种多主方式的串行通讯总线,数据通信实时性强。与其它现场总线比较而言,CAN总线具有通信速率高、容易实现、可靠性高、性价比高等诸多特点。本系统要在单片机中实现CAN总线的接口,通过CAN总线,实现两个模块之间的数据通讯。系统主要由四部分所构成:PC机、微控制器80C51、独立CAN通信控制器SJA1000和CAN总线收发器PCA82C250。微处理器80C51负责SJA1000的初始化,通过控制SJA1000实现数据的发送和接收等通信任务。CAN总线节点的软件设计主要包括三大部分:CAN节点初始化、报文发送和报文接收。本系统通过扩展CAN总线控制器SJA1000,在单片机系统中实现了CAN总线的接口,并且编写了SJA1000的驱动程序,通过读写其的内部寄存器,完成工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器(AMR)和接收代码寄存器(ACR)的设置、波特率参数设置和中断允许寄存器(IER)的设置等基本操作;利用各基本操作,完成了对SJA1000的初始化,并且实现了数据发送和接收。关键词:CAN总线;SJA1000;89C51;PCA82C250。武汉理工大学课程论文II目录第1章绪论.................................................................................................................1第2章课程设计的方案.........................................................................................22.1概述....................................................................................................................22.2系统组成总体结构............................................................................................2第3章硬件设计.......................................................................................................33.1单片机最小系统设计........................................................................................33.1.1单片机AT89C51....................................................................................33.1.2时钟电路................................................................................................43.1.3复位电路设计........................................................................................43.1.4电源电路设计........................................................................................43.2CAN总线电路设计...........................................................................................53.2.1控制器SJA1000.....................................................................................53.2.2驱动器及接口电路MAX232................................................................63.2.3发送隔离6N137.....................................................................................63.2.4收发器PCA82C250...............................................................................73.3硬件原理图........................................................................................................9第4章软件设计.....................................................................................................104.1主程序..............................................................................................................104.2初始化子程序..................................................................................................104.3报文发送子程序..............................................................................................114.4报文接收子程序..............................................................................................12第5章系统实验数据及分析..............................................................................14第6章设计总结.....................................................................................................15附录程序清单........................................................................................................16参考文献......................................................................................................................22武汉理工大学课程论文1第1章绪论CAN即控制器局域网络,控制器局部网(CAN-CONTROLLERAREANETWORK)是BOSCH公司领先推出的一种多主机局部网,由于其高性能、高可靠性、实时性等优点现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。控制器局部网将在我国迅速普及推广。由于CAN为愈来愈多不同领域采用和推广,导致要求各种应用领域通信报文的标准化。为此,1991年9月PHILIPSSEMICONDUCTORS制订并发布了CAN技术规范(VERSION2.0)。该技术规范包括A和B两部分。2.0A给出了曾在CAN技术规范版本1.2中定义的CAN报文格式,能提供11位地址;而2.0B给出了标准的和扩展的两种报文格式,提供29位地址。此后,1993年11月ISO正式颁布了道路交通运载工具--数字信息交换--高速通信控制器局部网(CAN)国际标准(ISO11898),为控制器局部网标准化、规范化推广铺平了道路。武汉理工大学课程论文2第2章课程设计的方案2.1概述本次设计主要是综合应用所学知识,设计基于CAN总线的主从机通信系统,并在实践的基本技能方面进行一次系统的训练。能够较全面地巩固和应用“工业控制网络”课程中所学的基本理论和基本方法,并初步了解CAN总线协议规范。系统介绍:扩展CAN总线控制器,在单片机系统中实现CAN总线的接口,并编写接口芯片的驱动程序。通过CAN总线,实现两个模块之间的数据通讯,CPU控制第一个模块发送1帧数据,第二个模块收到这帧数据并送至另一个CPU的内部存储器。2.2系统组成总体结构在本系统中,采用AT89C51单片机,AT89C51与PC机串行通信,设置SJA1000工作于Intel模式,由PC机发送的数据写入SJA1000并通过CAN收发器发送。接收数据是通过中断进行的,CAN总线传输过来的数据经CAN接口芯片PCA82C250接收并写入SJA1000的RXFIFO,然后通过中断提请CPU读取,读取的数据上传送给PC机。系统结构框图如图2.1所示。图2.1系统结构框图82c250收发器6N137发送隔离6N137发送隔离SJA1000CAN总线控制器AT89C51单片机MAX232武汉理工大学课程论文3第3章硬件设计3.1单片机最小系统设计3.1.1单片机AT89C51ATMEL公司生产的AT89C51单片机采用高性能的静态80C51设计,并采用先进工艺制造,还带有非易失性Flash程序存储器。它是一种高性能、低功耗的8位CMOS微处理芯片,市场应用最多。其主要特点如下:图3.1AT89C51●面向控制的8为CPU;●一个片内振荡器和时钟产生电路,振荡频率为0~24MHz;●片内4KBFlashROM程序存储器;●128B的片内数据存储器;●可寻址64KB的片外程序存储器和片外数据存储器控制电路;●2个16位定时/计数器;武汉理工大学课程论文4●5个中断源,2个中断优先级;●一个全双工的异步串行口;●4个并行I/O口,共32条可单独编程的I/O线;●21个特殊功能寄存器;●具有节点工作方式,即休闲方式和掉电保护方式;3.1.2时钟电路时钟电路用于产生单片机工作所需的时钟信号。时钟信号可以有两种方式产生:内部时钟方式和外部时钟方式。本设计选用内部时钟方式如图3.2所示。图3.2时钟电路3.1.3复位电路设计复位操作可以使单片机初始化,也可以使死机状态下的单片机重新启动,因此复位电路对单片机非常重要。复位电路一般分为上电复位,按键复位等。本系统所选用的复位电路为按键复位如图3.3。图3.3按键复位电路3.1.4电源电路设计本系统用LM1572芯片设计电源电路。LM1572是一个频率为500kHz降压型开武汉理工大学课程论文5关脉宽调制稳压电路,可驱动1.5A的负载,占用较小的PCB空间,有极好的电流响应
本文标题:基于CAN总线的主从机通信系统设计
链接地址:https://www.777doc.com/doc-3659332 .html