文档详情

基于CAN总线和ARM9的煤矿井下通信的设计.doc

发布:2017-02-04约1.76千字共4页下载文档
文本预览下载声明
基于CAN的CAN总线是公司汽车性能可靠性应用工业控制、智能、安防、交通、医疗、环境等。CANCAN总线。本文采用作为采用SJA1000CAN总线82C250作为总线的收发器,SJA1000和82C250的使用从硬件上保证了系统的电气性能和稳定性。电路主要、SJA1000、82C250和6N137组成。SJA1000用来实现数据接收和发送图1为硬件电路原理图。 图1 井下通信模块的硬件电路原理图 系统硬件部分设计的时候主要是从通信的可靠性、稳定性和系统的处理速度来考虑的。其次还考虑系统的兼容性、可移植性等,具体设计如下: 1)控制器:本系统采用的是Philips公司生产的S3C2410 ARM9微处理器,S3C2410A是一款基于ARM9的32位内核的RISC微处理器,最高可达266MHz的主频,它具有高性能、低功耗、接口丰富和体积小等特性,同时S3C2410具有丰富的内设。通过连接功能丰富的外围设备,S3C2410是一款非常适合嵌入式设备使用的控制器。 2)总线控制器:SJA1000是一独立控制器驱动器CA82C250是CAN总线的关键部件之一,是总线控制器和物理连接之间的桥梁,完全符合“ISO11898”标准,最高速率可达1Mbps,具有抗瞬间干扰保护总线的能力,斜率控制可以有效降低射频干扰,查分接收器可以抗宽范围的共模干扰和电磁干扰,具有热保护、防短路、低电流待机等功能,为系统的稳定可靠工作提供了保障。 4)高速光耦:6N137是一款用于单通道的高速光耦合器,内部有一个850nm波长的AIGaAs LED和一个集成检测器组成,其检测器则由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成,具有温度、电流和电压补偿功能。6N137特别适合于数字开关、马达控制、总线隔离和AD转换等场合。 由于SJA1000和S3C2410之间的逻辑电平不是完全兼容的,所以在硬件设计过程中需要对S3C2410的读、写电平必须做逻辑变换,主要包括地址、数据总线的复用,地址锁存信号、读写及片选信号的变换以及中断信号的变换等,地址总线复用采用74LVC245进行变换,逻辑电平采用74LVC244进行变换,如图1所示。 三、通信节点程序设计 通信模块的主要包括CAN通信模块驱动程序、发送接收。CAN初始化放在系统的驱动程序中,而数据接收和数据发送采用中断方式以提高系统的运行效率。在设计和调试过程中为了均衡通信速率、传输距离和传输质量等方面因素,CAN总线使用BasicCan模式,波特率为20kbps。CAN控制的初始化在复位模式下进行工作方式、接收滤波、波特率和中断允许寄存器设置等回到工作状态进行正常。 CAN与ARM9空闲时就向SJA1000的发送缓冲区写入数据,SJA1000自动完成数据发送。对于数据目的地址是SJA1000自动完成的,程序只要指定发送的目标地址号即可,发送数据流程如下图所示。 图2 数据发送流程 3.3 信息接收程序 本设计采用中断方式实现数据的接收,在SJA1000接收数据缓冲区满时发出中断,中断程序完成缓冲区数据的读取,随后释放缓冲区准备下次数据接收。终端接收程序流程如下图所示。 图3 数据接收流程 四、调试和试验 在完成系统设计和样机制作后,系统在实验室和煤矿井下进行了调试和试验,经过现场试验改进了系统的一些元器件和工作方式,将原来控制和SJA1000集中复位电路修改成了单独复位,而且为了可靠复位控制器增加复位芯片;再就是将SJA1000的时钟设置了独立的时钟电路,独立的晶振;软件对SJA1000的驱动程序进行参数上的调整,测试了系统的最大通讯速率和系统的最大通信距离,通过现场测试并在保证系统速率、可靠性和现场要求的基础上设定通信速率为20kbps。 通过试验, [1] Philips Semiconductors.SJA1000 Stand_alone CAN controller[S].1997 :1-60 [2] Philips Semiconductors.PCA82C250 / 251 CAN Transceiver .1996:1-28 [3] Philips Semiconductors.S3C2410中文手册.
显示全部
相似文档