《毕业设计(论文)基于CAN总线的汽车油量采集系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于CAN总线的汽车油量采集系统设计.doc(24页珍藏版)》请在三一办公上搜索。
1、本科毕业设计(论文)基于CAN总线的汽车油量采集系统设计院 部: 机械工程学院 专 业: 汽车服务工程 班 级: 2011级汽车服务 学 号: 学生姓名:指导教师: 2015年5月3日目录摘要IIAbstractIII第1章 绪论11.1什么是CAN 总线11.2 CAN总线的产生与发展11.2.1 CAN总线的产生背景11.2.2现场总线的发展过程21.3 CAN总线的优点和特点21.3.1现场总线的优点21.3.2现场总线的特点3第2章 CAN总线技术42.1 CAN总线介绍42.2 CAN总线的基本工作原理42.3 CAN总线的特点52.4 CAN协议分析52.4.1CAN协议的分层结构
2、5第3章 系统硬件电路设计63.1系统硬件设计整体框架63.1.1 油量采集框架图63.2电源模块设计73.3信号放大电路83.4信号采集电路93.5 CAN总线接口电路10第4章 系统软件设计124.1数据采集模块软件设计134.2 CAN总线通信软件设计154.2.2数据的发送和接受15第5章 总结19参考文献20致 谢21摘要当前的汽车一般都具备有平均油耗和瞬时油耗显示的这一功能,但是油耗测量在当前的任何一个国家都没有可参考的国家标准,现在每个国家经常用的油耗测量原理包括称重法、容积法、电喷脉冲宽度法、碳平衡法和流量计法这几种。但是经过长期的使用结果来看容积法和流量法的精确度比较高,但这
3、些都还是不能测量出瞬时耗油率,它们都只适用于发动机在稳定的工况下燃油消耗率的测定;电喷脉冲宽度法是目前应用较为广泛的一种测量,它的测量原理是根据燃油喷射来控制脉冲的宽度来换算油耗量多少,由于油压不稳定的特性对喷油量必然有着一定的影响,一部分的车型还具备回油结构,从而其精度相对会下降,但是碳平衡法的计量精度可以达到2,然而成本太高,实用性也不是很高,以上来看,基于流量传感器的油耗检测方法都比其他测量方案都要精确因此具有很高的研究意义。对汽车耗油量也会有一定的提升。伴随着社会通讯技术的提高,计算机技术和控制技术也在全面的发展,在这样的背景下CAN总线技术也随之产生。CAN总线技术的产生很大程度上推
4、动了测控领域的网络化的进程,也带动了仪器仪表的网络化发展速度,CAN总线作为当今社会一种新兴的总线技术,它具有高性能,高可靠性这些优点,它是一种能支持集散控制系统和实时控制的多主串行总线,CAN总线基础构成的简单化,因此这也成就了它的低成本并实现了工程能接受的价格要求,已经逐渐成为了当今自动化领域发展的热门点之一,也会将来发展汽车中必不可缺的一部分,它也会在这个社会站稳脚跟。 这篇文章是对CAN总线技术进行研究,讨论了一些应用和优点并讲述了产生的背景及原因,讲述了CAN总线的特点和优势所在,并且讲述了光电检测技术特点及未来的发展趋势,然后,针对本文所选用的CAN总线进行了一系列的研究讨论,论述
5、了CAN总线的工作原理和分层结构、协议和数据帧结构的特点和优点,针对光电检测领域的发展趋势,该文章设计了一种基于CAN总线的数据采集系统,把CAN总线作为通信总线主要系统,该系统的主控制器是TMS320F2812,外接刀D转换芯片AD977A进行数据采集和转换,并通过CAN总线将数据传输。关键词:CAN总线、油量传感器 单片机 CAN控制器AbstractThe cars are generally have average fuel consumption and instant fuel consumption display the function, but measurement o
6、f fuel consumption in any country in the current is no reference national standards, now each country are often used in oil consumption measuring principle including gravimetric method, volumetric method, fuel injection pulse width method, carbon balance method and the flow meter method, several. Bu
7、t after long-term use of the volume and flow of the accuracy is relatively high, but these are still cant measure the instantaneous fuel consumption rate, they are only suitable for the engine in a stable condition for determination of fuel consumption rate; injection pulse width method is used for
8、measuring widely, it is the principle of the measurement according to the fuel injection to control the pulse width of the conversion to the amount of fuel consumption, because of the characteristics of hydraulic instability will inevitably have a certain influence on the amount of fuel injection, a
9、 part of the model also has oil return structure, thus the precision of relative will drop, but the measuring accuracy of carbon balance method can reach 2%, but the cost is too high, practicality is not high, above, flow sensor detection method based on fuel consumption than the other measurement s
10、chemeWith the improvement of social communication technology, computer technology and control technology also in the development of a comprehensive, under such a background of CAN bus technology arises. Constitute the basis of support as the process of CAN bus technology to a large extent to promote
11、 the field of measurement and control network, but also led to the instrumentation network development speed, can bus in todays society, a new bus technology, it has high performance and high reliability of these advantages, it is a kind of distributed control system and real time control of multi m
12、aster serial bus, can bus is simple, therefore the achievements of its low cost and to achieve the project can accept the price requirements, has gradually become the current automation field development hot one, will be in the future development of the automobile essential part, it will be in the s
13、ociety to gain a footholdThis article is to study the CAN bus technology, this paper discusses some applications and advantages and tells the background and causes, describes the features and advantages of CAN bus, and describes the characteristics of photoelectric detection technology and the devel
14、opment trend of the future, then, based on the selection of the CAN bus has conducted a series of research the discussion, this paper discusses the characteristics and advantages of CAN Bus Principle and hierarchical structure, protocol and data frame structure, according to the development trend of
15、 the photoelectric detection technology, this paper designs a data acquisition system based on CAN bus, the CAN bus as the communication bus system, the main controller of the system is TMS320F2812, external the knife D conversion chip AD977A for data acquisition and conversion, and data transmissio
16、n through CAN bus.Key word:CAN bus、CAN controller for oil quantity sensor第1章 绪论1.1什么是CAN 总线CAN总线是控制器局域网络(Controller Area Network, CAN)的简称,是由著名的德国BOSCH公司开发的,他们是由研发和生产汽车电子产品,CAN总线最终也也发展成了国际标准(ISO118?8)。北美国家和西欧国家已经把CAN总线协议看成了标准总线。 CAN总线,它主要是应用于生产现场,它可以使现场设备之间实现现场自我控制。并且在装置之间实现双向技术、串行技术、多节点数字通信的多种技术,它们都
17、是通过IEC/TC65负责测量和控制的,系统的数据通信部分和国际标准化工作是由SC65/WG6定义的,它不同与其它总线的是它支持双向、多节点、总线式的全数字式通讯,这就说明了它不仅单单是一种通信技术,也不单纯的靠用数字仪表代替模拟仪表,而是采用新一代的CAN总线控制的新型系统。它被人们简称为自动化领域计算机局域网,它在工业数据通信网络的基础是不能动摇的,它的作用就是在生产过程现场级控制设备之间及其与更高控制管理层之间的联系,它是一个开放式的基层网络,新型全分布式的控制系统,它突出的控制技术己得到了国际的关注,并成为了总线技术发展的重点,这也会将自动化系统结构与设备推向一个更高的台阶。1.2 C
18、AN总线的产生与发展1.2.1 CAN总线的产生背景在没产生CAN总线时,计算机领域的数据传输大多数都在使用RS232和CCITTV.24等通信标准,尽管它们被社会广泛的应用,但它们始终存在通讯速率较低、只能点对点传的输方式、这将无法支持更高层次的计算机之间的功能操作的严重缺点,同时,在复杂或大规模的应用(如工业现场控制或生产自动化领域)中需要使用大量的传感器、控制器和执行器等,它们通常都是分布在非常广的范围内,如果在最低层上就采用传统星型拓扑结构和LAN组件,这两个形式都会使整个系统的造价很昂贵,所以在这样的情景下就需要在整个网络的底层上设计出廉价且耐用的通信系统, CAN总线就是在这样的背
19、景下产生的。1.2.2 现场总线的发展过程CAN总线带着它的特点和优点在国际上得到了发展,它的最初应用是在商业于差分智能化仪表上的,它的特点就是在原来的模拟仪表上增加拥有计算功能的微处理器芯片,并在直流信号上增加了数字信号,从而使现基于CAN总线的数据采集处理系统的进入了数字信号的时代,并在很多著名的公司和人才的带领下研发出了很多系统成果,这些研发出来的设备它具备了智能化和功能自治性的特点,它体现在该系统可以在任何时间里检测设备的状况,还可以靠现场设备控制一些基本功能。这个系统的结构是具有分散的特性,CAN总线的结构很简单化并实行的是全分布控制。这样它在很大程度上提高系统的可靠性。还有对现场环
20、境的适应性,CAN总线具备了同轴电缆、双绞线、光缆、射频、电力线、红外线等这些优点,它们都具具备了较强的抗干扰能力大大的确保了系统的安全性,由于CAN总线的结构简化,就不会出现哪些复杂的接线,也不需要DCS系统的信号调理转换隔离等功能,这样的设计大大节约了硬件的数量,还有简单的连线设计也就大大降低了安装的价格,这套设备还具有自我诊断与简单故障处理功能,这样便减少了维护的工作量,不会因为人的小疏忽让设备瘫痪,这套设备的智能化、互换性、数字化提高了系统的准确性和可靠性,它还具易于重构、设计简单化等优点。1.3 CAN总线的优点和特点1.3.1 现场总线的优点CAN总线的产生让工业控制系统的运行,设
21、计,安装以及维护等都方便了很多,其优越性主要体现在一下几点:(l)节省大部分的硬件数量与投资,因为CAN总线系统有着一点对多点的传输功能,这就是它可减少变送器和线缆数量的原因,这样特点可以让系统不再需要单独的控制器、计算单元等,也不会有哪些复杂的接线,也再需要DCS系统的信号调理、隔离技术、转换等功能,还可以用控制PC机作为操作站,这些优点便节省了一大笔的硬件的投资,因为控制设备的不断减少,这样就可以提升对控制室的其它地面积的应用了。(2)它可以降低安装费用,CAN总线系统的接线很简单,由于一对双绞线或一条电缆上通常可挂接多个设备,因而硬件和线的数量的用量也会大大的减少,相对应的便是连线设计与
22、接头校对的工作量也将会大幅度减少这样一来人工也减少,当设备需要增加多的现场控制设备时,因为它具有一个支点接多点的优点,这就使得根本不需增设新的电缆,可以在任意一个节点连接,这样不但减少了价格,也减少了设计、安装的等工作量,在这些优点下我们也做反复试验的测算,从这些测验的资料上来看安费用可装降低在60%以上。(3)节省维护开销和时间,因为CAN总线控制系统具有自我检测和简单的故障分析,这两点就可以节省客户的开销和维修的时间,这些都是CAN总线的特点与优点。1.3.2 现场总线的特点CAN总线控制系统既是一种全分布式控制系统,又是一个开放型通信网络,它打破了传统控制系统一对一的分别进行连线的结构形
23、式,把以前集散控制系统(DCS)彻底改成了分散的控制系统,并且它是一项以智能传感器、计算机、控制、数字通信、网络为主要内容的综合技术。其主要技术特点如下:(1) 系统设备之间的信息可以实现交换,并建立起统一的底层网络系统,通过CAN总线构筑自动化领域的开放互连系统,使多种总线共存于一个系统之中,多种总线共存的局面在一个很长时间内存在仍是无法避免的 ,不同厂家的设备之间可进行互连并实现信息的交换是因为通信协议的公开,CAN总线研发就是为了总线系统得到开放,这样做的目的就是为了让客户自己拥有组成系统的权利面对CAN总线这样的数据采集处理系统的设计。用户便有了高度的系统集成主动权,也就是说用户可以自
24、由选择不同厂商所生产的设备来集成系统,这就避免了选择的单一性,这样也让用户有了多样化的选择,不会为系统集成中不兼容的协议而一筹莫展,让系统集成过程中的主动权掌握在用户自己的手中。提高了系统的准确性与可靠性,模拟信号与CAN总线设备的智能化、数字化相比,它比模拟信号的测量与控制的准确度提高了不少,从而减少了传送误差,同时,由于系统连线的减少和结构的简化,现场仪表内部功能也随之加强了,这样就减少了信号的往返传输,便提高了系统的工作可靠性。此外,它具有的设备标准化和功能模块化的优点,因而具备了设计简单,易于重构的优点。第2章 CAN总线技术2.1 CAN总线介绍CAN总线就是控制器局域网,它的产生就
25、是为了提高汽车的性能,还有简化汽车复杂的系统,这就是德国BOSCH公司为何开发的原因。为了对使用汽车的客户提供舒适性、安全性、低成本的要求,在这样的背景下下各种各样的电子控制系统就被不断被开发了出来,由于这些系总线的结构复杂,系统之间通信所用的数据类型及对可靠性的要求也不相同,线束的数量也不断的增加,为适应和减少线束的数量、1986年德国电气商博世公司开发出面向汽车CAN通信协议。CAN总线就这样被广泛的应用于火车、汽车、机器人、数控机床、机械制造、医疗器械、传感器、消防管理、自动化仪表等多种领域。此后,CAN通过15011898及15011519进行了标准化,现在在欧洲便成为了汽车网络的标准
26、协议,支持CAN总线协议的就有很多国际著名大公司。2.2 CAN总线的基本工作原理CAN总线的结构形式就是CAN总线中一个节点发送多信息,多个节点接收信息,令牌方式Arcnet和CAN总线的信息存取方式有着很大的不同,CAN总线的信息存取方式也不同于主从方式的Bithus,而它是采用的是一种广播式的存取工作方式,与其之前的网络结构有着很大的不同之处,在CAN总线的通信协议中,节点地址相关的信息是不存在的,这也就没了节点地址这一概念。CAN总线体现出的是数据并不是节点,因此加入或撤销节点这都不会对设备的网络的工作有影响,这就体现了控制系统简明、单独工作、的特点。 以下是对CAN总线的基本通信工作
27、原理做的简单的介绍。(1) CAN总线上报文所要传输的是优先级标志区和欲传送的数据内容,因此所有节点都会接收到在总线上传送出的报文,并且能正确接收和发出正确的辨认,至于这报文是要被丢弃还是得到处理这些都是完全取决于接收节点本身反应,在节点自己进行报文选择时,它也可以自己选择发送到什么站点,这就取决于要系统是怎么设计的了,这样的设计在网络负载很严重的情况下也不会瘫痪,这是因为总线的冲突时间被节省了。(2)CAN总线的节点可实现点对点,一点对多点的方式来进行数据的传送和接收,报文滤波会处理这样的信息,不会需要需专门的调度。(3)在现社会CAN总线的直接通信距离最远可达10km,这远比其他的距离远,
28、通信速率最高可达IMbPs(通信距离最长为40m)。(4)如今的报文采用的是短帧结构,它们的传输时间是很短,而且受干扰概率是很低的,这些优点很好的控制了数据出错率。 (5)CAN总线的通信介质大多数都是双绞线,同轴电缆或光纤,这就体现出了选择多方面性。(6)CAN总线节点在出现错误严重的情况下时,系统就会具有自动关闭输出功能,这样系统就会让其他节点的操作不受其影响。2.3 CAN总线的特点根据以上分析的CAN总线的基本工作原理,其特点可概括如下:CAN总线为多主方式工作都具有一对多的传输方式,网络上任一节点都可以在任意时刻主动地向网络上其它的节点发送信息,但是它也不会不分主从,这样的通信方式因
29、此变得非常的灵活。(2)CAN总线网络上的节点有不同优先级之分,优先级有数据会得到更好的接受,这样就可以满足不同的实时要求了,(3)CAN总线现在采用的是非破坏性总线仲裁技术,总线在接收不同节点的信息时,它会选择接收优先级高的信息。这时优先级底的就会自己停止发送信息,从而节省了总线冲突仲裁的大量时间,就算是在网络负载很重的情况下,也不会出网络瘫痪情况。 2.4 CAN协议分析 2.4.1 CAN协议的分层结构CAN总线技术为了使总线器件之间能兼容,因此综合考虑ISO/OSI的基准模型,从而将CAN总线结构划分为两层:数据链路层和物理层。第3章 系统硬件电路设计3.1系统硬件设计整体框架本系统采
30、用受浮子控制的可变电阻传感器。其优点包括价格低,传感器自身无半导体器件,适应温度环境宽,结构简单、尺寸小、重量轻、价格低廉且性能稳定,受环境因素(如温度、湿度、电磁场干扰等)影响小,可以实现输出输入间任意函数关系。3.1.1油量采集框架图燃油表由油量传感器、光电耦合器PIC18F458 单片机、CAN 收发 MCP2551、CAN 总线、步进电机、LCD 液晶显示器等硬件组成。油量采集原理如图 3.1 所示:图3.1油量采集原理图当油箱中燃油量减少时,浮子下降,传感器阻值增大,通过指示表电热线圈中的电流减少。当油箱中燃油量较多时,浮子上升,传感器阻值减少,通过指示表电热线圈中的电流增大。当传感
31、器采集的信号经 PIC18F458 单片机处理后,经步进电机驱动芯片驱动步进电机带动指针指示,并由液晶显示器显示当前油量 。本系统采用两个浮子式可变阻传感器:A 和 B。传感器 A 的增加值(减少值)等于传感器B的减少值(增加值)。当车辆在水平路面上行驶的时候,电压UA=UB 。 U平=(UA+UB)/2=UA=UB 当车辆在有一定倾角的路面上行驶的时候,可变电阻增加(减少)Rx,即: UAi=5V(R-R0-RX)/R UBi =5V(R-R0+RX)/R 因此其平均值为: U =(UA+UB)/2=5V(R-R0)/R 3.2电源模块设计系统通过外部的+23 V直流稳压电源进行供电,将它装
32、换成适合芯片工作的电压,如图3.2所示。图3.2电源变换电路TMS320F2812芯片的一大特点就是采用了内核电电压分干的双电源供电方式,这样的方式有效的降低了芯片的功耗,中路电源电压为+3.1 V,以此来为GPIO、ROM、FLASH提供稳定的工作电压,这样就可以直接与外部得低电压器件进行连接了,这样一来就不需要再添加额外的电来转换电路了,而另一路电源为+l.5V,主要是为CPU内核提供能源,即为器件的内部逻辑提供稳定的电压,因此,在设计系统电路时,需要将十SV电源变换为+3.3V和+l.5V给DSP供电,这就需要设计一个专门的电压转换电路,电压转换电路如图3.3所示,图3.3DSP电源变换
33、电路电源调整器,这个系统一路输出电压为3.3V,另一路则是输出电压为l.5V,每路输出电流的范围在O1A,且具有超低的典型静态电流(85pA),当器件不工作状态时,静态电流也会有1A。NSP的电源芯片采用TPs767D315芯片,TPs767n315这两个是Tl公司推出的双路低压差3.3 信号放大电路除了字传感器外,一般大多数的传感器都是是将模拟非电量转换为模拟电量,但是这些模拟电量通常不宜直接用数据采集电路进行数字化,这些都还需要进行适当的信号调理放大,才能实现进行A/D的转换,采用的运算放大器和采用仪表放大器AD620、AD620结构如图3.4所示图3.4AD620的引脚图引脚功能如表3.
34、5所示表3.5AD620引脚功能介绍运算放大器采用仪表放大器AD620、AD620这是美国AD公司生产的产品,这是是一套完整的单片仪表放大器,提供DIP和SOIC两种封装,供电电源范围为士2.3V+lSV,最大工作电电流仅为1.3mA,最大输入失调电压为125pV,作为能接收微弱信号的前置调理器。在这最进的发展中,AD62O已经成为工业标准的高性能、低成木的仪表放大器。3.4 信号采集电路在对输出信号进行放大预处理后,必须做的就是先对信号进行采样,模拟出一数字的转换,这样之后才能由数字信号处理器DSP对其进行采集和数字滤波进行处理,信号采集电路如图3.6所示:图3.6信号采集电路这个系统选择使
35、用芯片AD977A来完成数据采集AD977A是美国QAD公司的低功耗的16位逐次逼近型模数转换器,它主要有以下特性:(l)单电源SV供电,内部是2.5V。(2)最高采样的速率为200kSPS。(3)它有高速串行数据接口。3.5 CAN总线接口电路CAN总线器件具备两种选择方案:一种是片内集成CAN的微控制器,P8XC591/2、MC6s376、es05lFo4o/1等,另一种方案则是独立的CAN控制器,如SJA1000、82CZOO、82526控制器等,但是独立的CAN控制芯片需要外接一个微处理器才能正常的运行,为了设计的简化,提高系统的可靠性,该文设计中选用的TMS320F2812这是带有C
36、AN控制器的微控制器的,这样一来就大大简化了接口电路设计,并提高了系统的稳定性,具体的CAN通信接口电路如图3.7所示:图3.7CAN通信接口电路F2812之所以很好用是因为它配置的是增强型的CAN通信模块,因此也减轻了其他接收器的压力,数据的传输也变得很顺畅的,但是为了进一步提高系统的抗干扰能力,他们就在CAN控制器引脚TX、RX和DSP之间采用了高速光祸6N137构成隔离,这样之后就能实现总线上各节点的电气隔离,以此来提高节点的稳定性和安全性,选择跳针是为了选择是否接入120贝的终端匹配电阻。因为CAN总线是以一个节点能悬挂多个节点,所以能实现多点通信的特性。此外,CAN总线数据传输速度很
37、快、抗干扰能力比之前的那些系统都强、出错率很低,这样就保证了远距离控计算机以此来实现实时控制。第4章 系统软件设计嵌入式系统一般选用汇编语言或C语言进行软件的开发。汇编语言程序效率有着较高的优点,但是工作量较大是它的缺点,可读性也比较的差,C语言虽然效率略低于汇编,但是C语言具有非常良好的可读性和可维护性,并且还有移植方便、扩展灵活、标准数库较多的优点,这是汇编无法做到的,考虑到本设计要进行大量的数据采集与通讯工作,子模块也众多,为了使代码规范化和模块化,使系统结构化,因此决定采用C语言进行程序设计。我们使用的是Tl公司开发的EES(eodeeompose:studio)也是当今使用最为广泛的
38、DSP开发软件之一。现在所有的TIDSP都可以使用该软件进行研发,同时,它还提供了DSP/BIOS开发工具DSP/BIOS是一种嵌入式的操作系统,这样就可以极大的方便用户编写和调试多任务应用程序了,此外,EES的版本也很多具有选择的多样性,本系统使用的是EES2.2版本系统软件主要包括的是初始化程序、数据采集程序、数字滤波程序CAN通信程序等。部分系统流程图如图4.8图4.8系统程序流程图由上的流程图知,它的工作流程就是首先把相关的DSP相关模块进行初始化,并等待信号触发DSP中断以此来启动SPI传输数据。在等待的过程中必须中断定时器,在启动A/D采集数据,DSP会把采集到的数据进行数字滤波,
39、这样就可以有效地将因外界干扰因此掺入在被测信号中的噪声脉冲滤掉,信号质量将会大大的提高。本系统采用的是复合滤波算法,这会对采集到的数据进行滤波处理,这些数据被 DSP滤波处理后才能由CAN总线实时传输给工控机。4.1数据采集模块软件设计CAN转换的好的数据是通过SPI总线发送到DSP上,就算是串行外设接口,是一个高速同步串行输入和输出接口, SPI通常用于DSP处理器和外部芯片之间进行通信。典型的应用包括显示驱动器、移位寄存器、模数转换器(ADCS)等。这个总线占用的接口线是很少,但有着通信效率高的优点,并且能支持此系统的处理芯片是很多的,同时它还具有标准的传输协议,而且速度快,还能够同时接受
40、和发送,因此这个系统得到了广泛地应用。本系统中,DSPTMS320F2812是作为主设备,AD977A作为副设备,通过DSP的GPIO口来控制AD977A的片选,这样就可以转化工作的状态了,然后在DSP提供的时钟脉冲的作用下,把AD977A转换的结果存到指定节点上。AD977A的工作时序图如图4.9所示图4.9AD977A工作时序图首先是通过DSP的相关寄存器设置,把其配置设计为从模式,接下来就是对SPI的字长,波特率,时钟模式等进行相对应的配置。然后由TMS320F2812片内安装的定时器产生的定时中断,以此来定时启动AD977A工作,当定时器产生中断,在执行中断服务程序后,使GPIO输出高
41、电平,当侧C引脚变成高电平后,AD977A进入读取转换结果模式。这时,由DSP运行读取转换结果程序,为AD977A提供外部时钟,然后向DSP传输上次转换结果。 如果需要在时钟上升沿处来读取数据,则需要向AD977A提供17个时钟脉冲,因为数据是从高位到低位传输的,在结果读取完并记录下来后,这时就要将引脚GPIOBO输出低电平,也得把侧C引脚拉低,这样做的目的就是为了让AD977A进入采样转换的模式,这才能保证正常进行下次的数据采样,在系统AD977A进行采样转换的过程中,在采样转换没有完毕的时间段内引脚将会一直保持低电平,这就使得DSP并不能及时的读取AD977A中的新的一次转换结果,它要在下
42、次定时器中断产生时才能读取数据,这样的工作形式就是为了让采样转换和数据传输的两个过程能分时进行,这就避免了数据传输时产生的电磁干扰对模拟信号采样转换造成不必要的影响。表4.10是分别采集到0.5v和1.98V恒定直流电压源时的结果表,我们将10次采样结果取平均值后得出,真实值为O.5V时,采集到的平均电压为O.496V,误差为0.8%;与真实值为1.98V时,采集到的平均电压为1.971V,误差为0.5%,从表的两组数据中可以看出,AD还是存在着一定漂移,但是就是目前的精度也可以满足工业现场的需要,如果再加入数字滤波和一定的电压补偿,这样就会使整个AD的性能进一步得到加强,AD的漂移也会降低,
43、精度便更一步得到提高 。图4.10AD采集结果4.2 CAN总线通信软件设计TMS320F2812DSP的CAN控制器模是拥有32位外设模块的CAN控制器模块,所以只要正确设置其他的模块,这样的优点就能很好的让微控制器和CAN控制器两个控制器之间就能进行通信了。ECAN通信模块的软件设计主要包括下面的三个部分和一些附加部分构成,数据发送模块、系统初始化模块和数据接收模块。再附加上中断处理、信息处理、。这样就形成了一个通信模块。 4.2.2 数据的发送和接受在该系统中,系统单位进行数据传输是通过报文和邮箱,采用的是位仲裁以此来对总线进行访问,系统采用标准数据帧传送数据。邮箱数据域配置在进行数据域
44、改变之前,在这之前必须要禁用邮箱。然后才对数据域置位,改变先前的请求,再之后才设置邮箱ID和信息控制寄存器,这个程序就是采用了中断接收和查询发送,并结合其它寄存器中的状态,来判断是否是进行发送数据还是接收数据。数据发送与接收流程图如图4.11所示:图4.11初始化流程图(l)数据的发送:先将邮箱配置调解成发送邮箱模式,必须将CANTRS寄存器中对应的位清零,这才能保证数据发送不会出错,通过清除邮箱使能寄存器(CANME)对应的位来禁止邮箱使能该发送邮箱,装载邮箱的信息标识符寄存器(MSGID),设置CANME寄存器中对应的位,从而使邮箱。配置好后发送邮箱后,在把消息数据写入邮箱数据区,置位发送
45、请求寄存器(CANTRS)中的相应标志位来启动消息发送,CAN模块处理CAN消息的发送,当发送操作成功或者中止发送后,模块将TRS标志复位到O,当一个数据邮箱被刷新后,就可以在用这个数据邮箱了。数据发送程序部分代码如下所示:InitECan();ECanaMboxes.MBOXO.MID.all=0x00040000;/发送邮箱的ID号ECanaMboxes.MBOX15.MID.all=0x0004000F;ECanaRegs.CANMD.all=oxFFFFOO00;/配置为发送邮箱ECanaRegs.CANME.all=oxFFFFFFFF;foro=0;jMDRL.all;/向邮箱RA
46、M区写数据ECanaMboxes.MBOXj.MDRH.all=Mailbox一MDRH.all;for(i=O;iTXCOLjNT;i+)/开始发送ECanashadow.CANTRS.all=oxFFFF0000;/TRS置位ECanaRegs.CANTRS.all=ECanashadow.CANTRS.all;While(ECanaRegs#CANTA.all=0)/等待TA置位ECanashadow.CANTA.all=oxFFFF0000;/清除TAECanaRegs.CANTA.all=ECanashadow.CANTA.all:looPcount+;(2)数据的接受:先将邮箱配置调解成接收邮箱,通过清除邮箱使能寄存器(CANME)对应的位来禁止邮箱,在把选定的标识符写到对应的信息标识符寄存器(MSGID)。如果AME位己设置为l,则必须对对应的接受屏蔽寄存器编程。设置邮箱方向寄存器中对应标志位(CANMD寄存器的位3=1),把邮箱配置为一个接收邮箱。通过设置邮箱使能寄存器(CANME)中对应的标志位来使能邮箱。配置为接收邮箱后,当接收到一个消息时,接收消息挂起寄存器(CANRMP)中相应的标志位就会被置位,据后,CPU需要验证RMP有没有被模块再次置位,说明数抓已