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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于CAN总线技术的汽车车灯电动车窗雨刮的控制系统资料Word格式.docx

1、 9)CAN总线采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。1.2 CAN总线协议的报文帧结构形式在报文传输时,不同的帧具有不同的传输结构,下面将分别介绍四种传输帧的结构,只有严格按照该结构进行帧的传输,才能被节点正确接收和发送。(1)数据帧由七种不同的位域(Bit Field)组成:帧起始(Start of )、仲裁域(Arbitration Field)、控制域(Control Field)、数据域(DataField)、CRC域(CRC Field)、应答域(ACK Field)和帧结尾(End of )。数据域的长度可以为08个字节。1)帧起始(SOF):帧起始(

2、SOF)标志着数据帧和远程帧的起始,仅由一个“显性”位组成。在CAN的同步规则中,当总线空闲时(处于隐性状态),才允许站点开始发送(信号)。所有的站点必须同步于首先开始发送报文的站点的帧起始前沿(该方式称为“硬同步”)。2)仲裁域:仲裁域由标识符和RTR位组成,标准帧格式与扩展帧格式的仲裁域格式不同。标准格式里,仲裁域由1l位标识符和RTR位组成。标识符位有ID28IDl8。扩展帧格式里,仲裁域包括29位标识符、SRR位、IDE(Identifier Extension,标志符扩展)位、RTR位。其标识符有ID28IDO。为了区别标准帧格式和扩展帧格式,CANl012版本协议的保留位r1现表示

3、为IDE位。IDE位为显性,表示数据帧为标准格式;IDE位为隐性,表示数据帧为扩展帧格式。在扩展帧中,替代远程请求(Substitute Remote Request,SRR)位为隐性。仲裁域传输顺序为从最高位到最低位,其中最高7位不能全为零。RTR的全称为“远程发送请求(Remote TransmissionRequest)”。RTR位在数据帧里必须为“显性”,而在远程帧里必须为“隐性”。它是区别数据帧和远程帧的标志。3)控制域:控制域由6位组成,包括2个保留位(r0、r1同于CAN总线协议扩展)及4位数据长度码,允许的数据长度值为08字节。4)数据域:发送缓冲区中的数据按照长度代码指示长度

4、发送。对于接收的数据,同样如此。它可为08字节,每个字节包含8位,首先发送的是MSB(最高位)。5)CRC校验码域:它由CRC域(15位)及CRC边界符(一个隐性位)组成。CRC计算中,被除的多项式包括帧的起始域、仲裁域、控制域、数据域及15位为0的解除填充的位流给定。此多项式被下列多项式X15+X14+X10+X8+X7+X4+X3+1除(系数按模2计算),相除的余数即为发至总线的CRC序列。发送时,CRC序列的最高有效位被首先发送接收。之所以选用这种帧校验方式,是由于这种CRC校验码对于少于127位的帧是最佳的。6)应答域:应答域由发送方发出的两个(应答间隙及应答界定)隐性位组成,所有接收

5、到正确的CRC序列的节点将在发送节点的应答间隙上将发送的这一隐性位改写为显性位。因此,发送节点将一直监视总线信号已确认网络中至少一个节点正确地接收到所发信息。应答界定符是应答域中第二个隐性位,由此可见,应答间隙两边有两个隐性位:CRC域和应答界定位。7)帧结束域:每一个数据帧或远程帧均由一串七个隐性位的帧结束域结尾。这样,接收节点可以正确检测到一个帧的传输结束。CAN 总线在奥迪A6汽车车灯上的应用 摘要:以汽车控制局域网CAN总线为基础,结合89C51单片机,对奥迪汽车的的车灯进行控制。 关键词:89C51,sja1000,CAN总线,82c250 正文: 灯光控制系统是保证汽车安全行驶的一

6、个重要系统。传统的灯光控制系统多采用继电器和独立模式控制,这使得车内线束过多且布线复杂,会引起严重的电磁干扰,使系统的可靠性下降。CAN(Controller Area Network)数据总线是一种适用汽车环境的汽车局域网。它能够很好的解决这个问题,它具有较高的传输速度,主要是针对汽车中对实时性要求很高的动力系统而设计的。利用CAN总线,不仅能简化线束,而且还能大大降低车辆的故障率。基于CAN总线的灯光控制系统,就很好用利用CAN总线的优势,发挥车灯的最大性能。 本设计利用CAN总线通信协议建立汽车灯光(前照灯)控制系统的局域网(对于汽车其他灯光可以按照同样道理设计而成,只需要多加几个通信的

7、节点),控制的灯光有:远光灯、近光灯、示宽灯、雾灯、转向灯。通过CAN总线实现上述灯光的开和闭的控制。2.1 灯光控制系统的网络硬件设计。对于传统的灯光控制系统如图一所示。(图一) 从图一可以看出,传统供电系统是所谓的并行结构,一个用电器赔一跟电力线和一个开关,开关置于驾驶员旁,由驾驶员控制开关通断,控制灯(或其他用电器)工作。这种结构缺点是若用电设备越多,电力线就越多,这无疑是加大了汽车的负担而且容易收到干扰,导致器件不能正常运行。 对于CAN总线的灯光控制系统如图二所示。它利用CAN总线,能够有效的减小电力线的数量,减少干扰,实现优化控制。 (图二) 我们可以直接在(图二)中增加CAN总线

8、收发器,及其MCU控制电路,这样就能实现更多的车灯控制系统。2.2 MCU的选择本设计选用AT89C51单片机作为灯光控制节点MCU。P89C51单片机是一个8位高性能微控制器。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位的单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

9、由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2.3 CAN通讯控制器 本设计采用SAJ1000独立CAN控制器。PHILIPS公司的PCA82C200是符合CAN2.0A协议的总线控制器,SJA1000是它的替代产品,它是应用于汽车和一般工业环境的独立CAN总线控制器。具有完成CAN通信协议所要求的全部特性。经过简单总线连接的SJA1000可完成CAN总线的物理和数据链路层的所有功能。其硬件与软件设计和PCA82C200的基本CAN模式

10、(BesicCAN)兼容。同时,新增加的增强CAN模式(PeliCAN)还可支持CAN2.0B协议。2.4 CAN总线收发器本文世纪采用CAN总线收发器82C250。PCA82C250是CAN协议控制器和物理总线之间的接口,该器件对总线提供差动发送能力并对CAN控制器提供差动接收能力。如在ISO11898标准中描述的,它们可以用高达1Mbit/s的位速率在两条有差动电压的总线电缆上传输数据。这是全世界使用最广泛的CAN收发器之一。 图三为车灯控制系统硬件电路图,它的工作原理为:CAN总线控制器与单片机连通,由单片机的程序给予初始化,并选通控制器,当单片机P1.0P1.4其中一个管脚开关按下时,

11、立刻把数据传送到CAN控制器SJA1000,利用CAN总线收发器82C250将信号发出,通过CANH,CANL两个管脚传输数据,当控制对象(车灯)系统中的收发器收到信号时,其系统中的CAN总线控制器发出中断,使车灯系统的MCU执行相关程序,控制车灯驱动电路,使其相应的车灯完成控制目的。(注意图中的发光二极管为车灯的驱动电路,驱动车灯的亮和灭) (图三)微处理器AT89C51负责SJA1000的初始化,通过控制SJA1000实现数据的接受和发送等通讯任务。SJA1000的AD0AD7连接到单片机的P0.0P0.7口,SJA1000的CS连接到89c51的P2.0,P2.0为0时片外存储器地址可选

12、中SJA1000,CPU通过这些地址可对SJA1000执行相应的读/写操作。SJA1000的RD,WR,ALE分别与89c51的引脚相连,INT接INT0。 82c250与CAN总线的接口采用了一定的完全和抗干扰措施。一般情况下,若CAN总线系统干扰很强烈,为了增强CAN总线节点的抗干扰能力,SJA1000的TX0和RX0并不是直接与82C250的TXD和RXD相连,而是通过高速光耦6N137后与82c250相连,且光耦部分电路VCC和VDD完全隔离,这样就可以实现总线上各节点间的电气隔离。2.5 系统的软件设计 系统软件设计的关键是通讯程序的设计。本设计的通讯软件程序主要由3部分组成:初始化

13、程序、中央处理器程序、车灯控制程序。编写主要运用KEIL的C语言对AT89C51进行软件程序设计。2.6 CAN控制初始化程序 初始化程序主要是通过对CAN控制器控制段中的寄存器写入控制字,从而确定CAN控制器的工作方式等。有3种方式进入初始化程序:一是上电复位;二是硬件复位;三是软件复位,即运行期间通过给CAN控制器发一个复位请求,置复位请求为1。在复位期间,必须初始化的寄存器有:MR模式寄存器、CDR时分寄存器、ACR接收代码寄存器、AMR屏蔽寄存器、BTR总线定时定时器及OCR输出控制寄存器等。需要注意的是,这些寄存器仅能在复位期间写访问。因此,在对这些寄存器初始化前,必须确保系统进入了

14、复位状态。流程图如下:2.7 中央处理器程序设计 中央处理器程序包括初始MCU,以及初始化CAN控制器。通过查询,判断是否有开关信号发出。若有,将此信号发送到CAN控制器,CAN控制器经处理后发送到CAN收发器。 程序流程图如下:否 是 图1. 中央MCU控制程序中央处理器程序如下#include#define uchar unsigned char#define uint unsigned intuchar sj8;#define TIM0 -50000sbit cs=P20;#define MyAddr 1#define CAN_DATA P0#define CAN_CR 0 /控制#de

15、fine CAN_CMR 1 /命令#define CAN_SR 2 /状态#define CAN_IR 3 /中断#define CAN_ACR 4 /验收#define CAN_AMR 5 /屏蔽#define CAN_BTR0 6 /时序0#define CAN_BTR1 7 /时序1#define CAN_OCR 8 /输出#define CAN_TXB 10 /发送缓冲#define CAN_RXB 20 /接收缓冲#define CAN_CDR 31 /分频uchar pdata CAN32 _at_(0);void CAN_INI() /*初始化部分*/ CANCAN_CR=0x

16、01; /进入复位模式,允许访问各个寄存器 CANCAN_ACR=MyAddr; /验收,表示接收的数据中第一位为1。 CANCAN_AMR=0x00; /屏蔽;00表示不屏蔽,8位全有效。 CANCAN_BTR0=0x07; /总线时序0 CANCAN_BTR1=0xff; /总线时序1 CANCAN_OCR=0x1A; /0xaa,0xd2,0xfa 输出控制 CANCAN_CR=0x02; /接收中断使能,否则不能接收 void delay(uint x) /延时部分 uint y; for(y=x;y0;y-);void CAN_SEND() /*发送数据部分*/ uchar i,p;

17、 p=CANCAN_SR; /状态寄存器的内容给p if (p&0x04) /检查第三位即发送缓冲器的状态,为1 CPU可以向发送缓冲器写报文 p=CAN_TXB; /*p指向发送缓存首址*/ for(i=0;i TR0=1; /启动0号计数器,-50000equsFFFF3CB0;TH0=B0,TL0=3C EX0=1; ET0=1; EA=1; PX0=1; while(1) if(P0&0xff)!=0xff) delay(10000); sj0=P00; sj1=P01; sj2=P02; sj3=P03; sj4=P04; sj5=1;sj6=1;sj7=1;CAN_SEND();v

18、oid Timer1() interrupt 1 using 12.8车灯控制程序 当CANH,和CNAL,有数据传来时,经过CAN总线数据接受器接受到的数据,发送给SJA1000控制器,控制器接受完毕后发出中断请求,MCU接受中断请求,发生中断随之处理中断程序。 程序框图如下: 否 图2.车灯控制系统MCU程序车灯控制程序如下uchar CANBUS=0;sbit qd1=P01;sbit qd0=P00;sbit qd2=P02;sbit qd3=P03;sbit qd4=P04;sbit qd5=P05;sbit qd6=P06;sbit qd7=P07; while(1);void C

19、AN_INT() interrupt 0 using 1/*接收中断*/ p=CANCAN_IR; if(p&0x01) /中断寄存器的低一位为一:RXFIFO不空且中断寄存器的RIE(接收中断使能)位置1 p=CAN_RXB;/接收数据的首地址给pi+) sji=CANp+;/读接收的数据 CANCAN_CMR=0x04; /*释放接收缓存*/ CANBUS=1; if(CANBUS=1) qd0=sj0; qd1=sj1; qd2=sj2; qd3=sj3; qd4=sj4; qd5=sj5; qd6=sj6; qd7=sj7;CAN总线在奥迪A6汽车电动车窗上的应用3.1系统的总体设计现

20、在各中高档轿车都安装有电动车窗,按钮控制车窗玻璃的升降。如果车窗无智能,司机在没有注意到乘客的手或物体伸出窗口的情况下按下按钮,乘客容易被车窗夹伤。为了安全,很多乘车都采用电动防夹车窗。在充分研究有关CAN总线在汽车电子系统中的应用和电动车窗防夹方案的基础上,提出一种基于CAN总线的轿车车窗智能控制系统的设计方案,实现车窗在正常工作模式下防夹控制功能和紧急情况下(异常工作模式)快速升降车窗控制功能。CAN总线系统节点分为不带微控制器的非智能节点和带微控制器的智能节点。该系统采用智能节点设计,轿车车窗按CAN总线结构和电器元件在汽车中的物理位置划分为左前、右前、左后和右后4个节点单元。其中左前节点为主控制单元,除负责本地(左前)车窗的升降,还可以远程控制其他车窗。各节点采用独立的带CAN功能的微控制器设计,其CAN网络结构如图所示。3.2硬件接口电路设计该系统采用片内含有CAN控制器的P8xC591作为节点单元主控制器。P8xC591采用强大的80C51指令集;内部集成有SJAl000 CAN控制器的PeliCAN功能;全静态内核提供了扩展的节电方式:振荡器停止和恢复而不丢失数据;改进的1:l内部时钟分频

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

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