DSP与CAN总线通信系统设计_第1页
DSP与CAN总线通信系统设计_第2页
DSP与CAN总线通信系统设计_第3页
DSP与CAN总线通信系统设计_第4页
DSP与CAN总线通信系统设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科生课程设计(论文)辽 宁 工 业 大 学工业控制网络课程设计(论文)题目:DSP与CAN总线通信系统设计院(系): 电气工程学院 专业班级: 自动化093 学 号: 090302084 学生姓名: 宋进帅 指导教师: 起止时间: 2013.1.1-2013.1.11 14课程设计(论文)任务及评语院(系):电气工程学院 教研室: 学 号090302084学生姓名宋进帅专业班级自动化093设计题目DSP与CAN总线通信系统设计课程设计(论文)任务实现功能DSP与CAN总线通信系统设计,实现DSP与CAN总线协议的转换。设计硬件包括总线控制器、总线收发器及ATMEL系列单片机及DSP芯片等。软

2、件采用汇编语言或C语言,并调试与分析。设计任务及要求1、确定设计方案,画出方案框图。2、DSP与CAN总线通信系统硬件设计,包括元器件选择。3、画出硬件原理图。4、绘出程序流程图,并编写初始化、接收及发送程序。5、要求认真独立完成所规定的全部内容;所设计的内容要求正确、合理。6、按学校规定的格式,撰写、打印设计说明书一份;设计说明书应在4000字以上。技术参数1、符合CAN2.0B规范;2、40米内最高可达1Mbit/s;(设计选定传输速率为250K bit/s)3、抗宽范围的共模干扰,抗电磁干扰;4、可扩充110个节点;工作计划1、布置任务,查阅资料,确定系统设计方案(2天)2、系统硬件设计

3、及模块选择(3天)3、系统软件设计及编写功能程序及调试(3天)4、撰写、打印设计说明书(1天)5、验收及答辩。(1天)指导教师评语及成绩平时: 论文质量: 答辩: 总成绩: 指导教师签字: 年 月 日注:成绩:平时20% 论文质量60% 答辩20% 以百分制计算摘 要CAN控制器局域网络 ( Controller Area Network ,CAN )是一种串行多主站控制器局域网总线 。它具有很高的网络安全性 、通信可靠性和实时性 ,而且简单实用 ,网络成本低 ,特别适用于环境温度恶劣 、电磁辐射强和振动大的工业环境 。数字信号处理(Digital Signal Processing,简称DS

4、P)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。数字信号处理是一种通过使用数学技巧执行转换或提取信息,来处理现实信号的方法,这些信号由数字序列表示。在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。德州仪器、Freescale等半导体厂商在这一领域拥有很强的实力。 本文是以DSP为微控制器的CAN 总线通信系统,以AT89C52作为智能节点,利用SJA1000 CAN总线控制器 与82C250 CAN总线收发器,进行协议转换,使DSP与CAN总线通信,从而控制CAN总线

5、上的智能节点AT89C52。关键词:DSP; CAN总线; 智能节点; SJA1000;目 录第1章 绪论11.1 CAN总线概述11.2 CAN总线典型特征1第2章 系统的总体设计2第3章 系统硬件设计33.1 DSP选择33.2单片机最小系统的设计33.3 CAN总线控制器SJA100043.4 收发器PCA82C25043.5 6N137光耦合器53.6 总体接线图6第4章 系统软件设计84.1初始化CAN控制器84.2信息的发送和接收10第5章 课程设计总结13参考文献14第1章 绪论1.1 CAN总线概述CAN控制器局域网络 ( Controller AreaNet work ,CA

6、N )是一种串行多主站控制器局域网总线 。它具有很高的网络安全性 、通信可靠性和实时性 ,而且简单实用 ,网络成本低 ,特别适用于环境温度恶劣 、电磁辐射强和振动大的工业环境 。CAN 总线可有效支持分布式控制或实时控制 。该总线的通信介质可以是双绞线 、同轴电缆或光纤。1.2 CAN总线典型特征( 1) CAN 总线为多主站总线 ,各节点可在任意时刻向网络上的其他节点发送信息 ,且不分主从 ;( 2) CAN 总线采用独特的非破坏性总线仲裁技术 ,高优先级节点优先传送数据 ,故实时性好 ;( 3) CAN 总线具有点对点 、一点对多点及全局广播传送数据的功能 ;( 4) CAN 总线采用短帧

7、结构 ,每帧有效字节数最多为 8 个 ,数据传输时间短 ,并有 CRC 及其他校验措施 ,数据出错率极低 ;( 5) CAN 总线上某一节点出现严重错误时 ,可自动脱离总线 ,而总线上的其他操作不受影响 ;( 6) CAN 总线系统扩充时 ,可直接将新节点挂在通信距离最远可达 10 km ( 速率在 5 Kb/ s 以下) ;( 7) CAN 总线的最大传输速率可达 1 Mb/ s ,直接通信距离最远可达 10 km ( 速率在 5 Kb/ s 以下);( 8) CAN 总线上的节点数取决于总线驱动电路 ,在标准帧 ( 11 位报文标识符) 时 ,可达到 110 个 ,而在扩展帧 ( 29 位

8、报文标识符) 时 ,个数不受限 。第2章 系统的总体设计系统是DSP与CAN总线通信系统的设计,DSP作为系统微处理器,AT89C52单片机作为DSP的智能节点,要求实现DSP与单片机通过CAN总线通信。本设计中主要讲述无片内CAN控制器的DSP与CAN总线的通讯。系统总体控制结构框图如图2.1所示:TMS320LF2407 AT89C52SJA1000CAN控制器SJA1000CAN控制器光耦隔离器光耦隔离器光耦隔离器光耦隔离器PCA82C250PCA82C250DSP地址数据控制总线传感器继电器CANBUS图2.1 系统总体控制结构框图 本系统中,AT89C52作为智能节点,连接输入检测信

9、号和输出控制信号与外界进行信息交换,并将数据进行初步处理。DSP作为微处理器对检测数据进行总体处理,得出相应控制信号。SJA1000是CAN总线控制器,与82C250电平转换器联合使用将单片机与DSP信号转换为CAN总线协议,通过CAN总线进行传输通信。高速光耦6N137连接SJA1000与82C250,增强了CAN总线节点的抗干扰能力。第3章 系统硬件设计3.1 DSP选择本设计中选用TMS320LF2407,TMS320LF2407控制器是TI 公司专为基于控制的应用而设计的,它将高性能的DSP内核和丰富的微控制器外设功能集于单片之中,每秒执行20 兆条指令的运算能力,几乎所有的指令都可在

10、50ns的单周期内完成,使得TMS320F2407控制器能提供比传统16位微控制器和处理器强大得多的性能。它具有以下一些特点: 32位中央算术逻辑单元,32累加器,16位*16位并行乘法器,3个定标移位器,8个16位辅助寄存器和一个用于数据存储器间接寻址的专用算术单元;544字*16位片内数据/程序双口RAM;16K字*16 位片内程序FLASH,224K字*16 位最大寻址存储范围,支持硬件等待状态;四级流水线操作,八级硬件堆栈,六个外部中断;兼容TMS320C2××系列DSP 的指令集;12路比较/PWM; 通道,3个16位通用定时器,3个具死区功能的全比较单元,3 个

11、单比较单元,4个捕获单元;双10位A/D 转换器;28个可单独编程的多路复用I/O引脚;基于锁相环(PPL)的时钟模块;带实时中断的看门狗定时器模块;串行通信接口(SCI)和串行外设接口(SPI)。3.2单片机最小系统的设计采用AT89C52单片机作为系统的控制器。它是一种低功耗、高性能CMOS八位微控制器,具有8K在系统可编程Flash存储器。时钟使用外部时钟电路晶振选择12MHz。复位电路使用上电加手动的复位电路。图3.1 单片机最小系统图3.3 CAN总线控制器SJA1000SJA1000 是一种独立控制器,用于移动目标和一般工业环境中的区域网络控制(CAN),它是PHILIPS半导体P

12、CA82C200 CAN 控制器BasicCAN 的替代产品而且它增加了一种新的工作模式PeliCAN, 这种模式支持具有很多新特性的CAN 2.0B 协议. 图3.2 SJA1000实物图3.4 收发器PCA82C250PCA82C250是CAN协议控制器和物理总线之间的接口,该器件对总线提供差动发送能力并对CAN控制器提供差动接收能力。 图3.3 82C250实物图82C250抗瞬间干扰,保护总线;斜率控制,降低射频干扰(RFI);差分接收器,抗宽范围的共模干扰,抗电磁干扰(EMI);热保护;防止电池和地之间的短路;高速率(最高可达1Mbps);具有抗汽车环境下的瞬间干扰,保护总线能力 ;

13、采用斜率控制(Slope Control),降低射频干扰(RFI); 过热保护; 总线与电源及地之间的短路保护; 低电流待机模式。3.5 6N137光耦合器6N137光耦合器是一款用于单通道的高速光耦合器,其内部有一个850 nm波长AlGaAs LED和一个集成检测器组成,其检测器由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成。具有温度、电流和电压补偿功能,高的输入输出隔离,LSTTL/TTL兼容,高速(典型为10MBd),5mA的极小输入电流。特性:转换速率高达10MBit/s;摆率高达10kV/us;扇出系数为8;逻辑电平输出;集电极开路输出;工作参数

14、:最大输入电流,低电平:250uA 最大输入电流,高电平:15mA 最大允许低电平电压(输出高):0.8v 最大允许高电平电压:Vcc 最大电源电压、输出:5.5V 扇出(TTL负载):8个(最多) 工作温度范围:-40°C to +85°C 典型应用:高速数字开关,马达控制系统和A/D转换等 图3.4 6N137引脚图信号从脚2和脚3输入,发光二极管发光,经片内光通道传到光敏二极管,反向偏置的光敏管光照后导通,经电流-电压转换后送到与门的一个输入端,与门的另一个输入为使能端,当使能端为高时与门输出高电平,经输出三极管反向后光电隔离器输出低电平。当输入信号电流小于触发阈值或

15、使能端为低时,输出高电平,但这个逻辑高是集电极开路的,可针对接收电路加上拉电阻或电压调整电路。3.6 总体接线图本系统采用的总线控制器是SJA1000,为增强CAN总线节点的抗干扰能力,SJA1000通过高速光耦6N137后与PCA82C250相连,这样能很好地实现本系统与CAN总线的电气隔离,图3.5为CAN总线控制器总仙女驱动电路连接图。图3.5 CAN总线控制器,总线驱动器电路连接图TMS320LF2407内部集成一个完全的CAN控制器,CAN控制器通过CAN驱动芯片PCA82C250与其它CAN控制器进行通信。TMS320LF2407用3.7V供电,而PCA82C250用5V供电。TM

16、S320LF2407通过高速光耦6N137后与82C250相连,增强了CAN总线节点的抗干扰能力,图3.6为TMS320LF2407 CAN通信系统硬件电路设计图。图3.6 TMS320LF2407 CAN通信系统硬件电路设计图第4章 系统软件设计4.1初始化CAN控制器在使用CAN控制器钱必须对他的一些内部寄存器进行设置,如位配置寄存器的设置及对邮箱进行初始化。(1)初始化或重新设置位配置寄存器。位配置寄存器主要由BCR1和BCR2两个寄存器组成,BCR1和BCR2寄存器决定了CAN控制器的通信波特率、同步跳转宽度、采样次数和重同步方式。(2)初始化邮箱。对邮箱初始化主要是设置邮箱的标识符,

17、发送的是远程帧还是数据帧及对发送的数据区(即对MBXnAMBXnD)赋初值。开始初始化处理其他控制程序是否有接受中断是否有发送请求调用发送程序接收中断程序是否否图4.1 系统软件流程图基本模式下SJA1000的初始化 CAN00=0x01; CAN04=L_CONTROLLER; /*站地址*/ CAN05=0; CAN06=0x47; /*波特率为50Kbps*/ CAN07=0x2f; CAN08=0xaa; /*下拉输出*/ CAN00=0x72; 扩展方式下SJA1000的初始化 while(!(MOD_CAN&0x01) MOD_CAN=0x01; /进入复位状态 CDR_C

18、AN=0xC8;/初始化时钟分频寄存器 IER_CAN=0x01;/允许接收中断 BTR0_CAN=0x01; BTR1_CAN=0x1C;/初始化两个总线定时寄存器 OCR_CAN=0xDA;/设置输出控制寄存器 ACR0_CAN=0x01;/设置接收滤波器。接收码寄存器、接收屏 ACR1_CAN=0x01;/蔽寄存器的设置与该节点所要接收的报文 ACR2_CAN=0x01;/有关。设置原则是:接收屏蔽寄存器中少 ACR3_CAN=0x02;/设置“不关心”位,尽可能将不需要的报 AMR0_CAN=0; /文过滤掉。 AMR1_CAN=0X03; AMR2_CAN=0; AMR3_CAN=0

19、; MOD_CAN=0x00;/进入运行状态,双滤波方式 4.2信息的发送和接收CAN控制器的发送邮箱有邮箱4和邮箱5及被配置为发送方式的邮箱2和邮箱3在数据到发送邮箱的数据区后,如果相应的发送请求位使能,则信息帧被发送到CAN总线上。CAN控制器的接收邮箱有邮箱0和邮箱1及被配置为接收方式的邮箱2和邮箱3。接收邮箱初始化时要设置其标识符及标识符有关的局部屏蔽寄存器(LAM)初始化清楚TRS=0禁止邮箱MEo=0配置邮箱的标示符,控制区和方向使能邮箱MEo=1写数据到邮箱数据区设置发送请求位TRSo=1TAo=1?复位TRSo=0,TAo=0发送结束开始禁止邮箱MEo=0设置局部接收屏蔽寄存器

20、LAN设置邮箱为接收邮箱MDo=0保护邮箱数据不被覆盖OPCo=1使能邮箱MEo=1RMPo=1?复位接收挂起位丢失标志位 RMPo=0接收结束图4.3接收中断程序图4.2 发送程序接收和发送子程序定时检测SJA1000是否总线脱离timer0() interrupt 1 /*定时检测SJA1000是否总线脱离*/ if(CAN02&0x80)=0x80) CAN00=0x01;/*若脱离,则将SJA1000复*/ CAN00=0x72; /*在进入正常工作方式*/ if(CAN12&0x80)=0x80) CAN10=0x01; CAN10=0x72; WDOG=!WDOG;

21、发送数据子函数 void transfer0()/向他站发送数据子函数 unsigned int i; for(i=0;i<500;i+) word=CAN02; if(word&0x04)=0x04)/TBF是否可写 for(i=0;i<10;i+) /是,则写入报文 CAN010+i=traini; CAN01=0x01;/发送 return;/发送成功后返回 接收中断子程序int0() interrupt 0/*0号CAN口接收中断子程序*/ unsigned char i; word=CAN03; /*word-224*/ if(word&0x08) /*是否超载*/ CAN01=0x08; /*是,则清除超载状态*/if(word&0x01) /*若有接收中断*/ if(rec_frame<MAX_FRAME) for(i=0;i<8;i+) canbufrec_framei=CAN020+2+i;/*则将数据写入缓冲区*/ for(i=0;i<7;i+) canbufrec_frame7-i=canbufrec_frame6-i; canbufrec_frame0=6; rec_frame+; CAN01=0x0c; /*释放TBF*/ 第5章 课程设计总结通过对DSP与

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论