基于CAN总线的适配器节点设计课程设计论文

上传人:博****1 文档编号:468565156 上传时间:2022-11-04 格式:DOC 页数:24 大小:429.50KB
返回 下载 相关 举报
基于CAN总线的适配器节点设计课程设计论文_第1页
第1页 / 共24页
基于CAN总线的适配器节点设计课程设计论文_第2页
第2页 / 共24页
基于CAN总线的适配器节点设计课程设计论文_第3页
第3页 / 共24页
基于CAN总线的适配器节点设计课程设计论文_第4页
第4页 / 共24页
基于CAN总线的适配器节点设计课程设计论文_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《基于CAN总线的适配器节点设计课程设计论文》由会员分享,可在线阅读,更多相关《基于CAN总线的适配器节点设计课程设计论文(24页珍藏版)》请在金锄头文库上搜索。

1、本科生课程设计(论文)辽 宁 工 业 大 学 工业控制网络技术 课程设计(论文)题目: 基于USB的CAN总线适配器设计课程设计(论文)任务及评语院(系):电气工程学院 教研室:自动化 学 号学生姓名专业班级自动化102课程设计题目 基于USB的CAN总线适配器设计课程设计(论文)任务课题完成的功能、设计任务及要求、技术参数实现功能USB的CAN总线适配器设计,实现计算机串口与CAN总线协议的转换。设计硬件包括总线控制器、总线收发器及ATMEL系列单片机及USB芯片等。软件采用汇编语言或C语言,并调试与分析。设计任务及要求1、确定设计方案,画出方案框图。2、适配器硬件设计,包括元器件选择。3、

2、画出适配器的原理图、线路图。4、绘出程序流程图,并编写初始化、接收及发送程序。5、要求认真独立完成所规定的全部内容;所设计的内容要求正确、合理。6、按学校规定的格式,撰写、打印设计说明书一份;设计说明书应在4000字以上。技术参数1、符合CAN2.0B规范;2、设定速率1Mbit/s; 3、可扩充110个节点;4、可与上位机通信。进度计划1、布置任务,查阅资料,确定系统设计方案(2天)2、系统硬件设计及模块选择(3天)3、系统软件软件及编写功能程序及调试(3天)4、撰写、打印设计说明书(1天)5、验收及答辩。(1天)指导教师评语及成绩平时: 论文质量: 答辩: 总成绩: 指导教师签字: 年 月

3、 日注:成绩:平时20% 论文质量60% 答辩20% 以百分制计算摘 要CAN总线是一种应用极为普及的现场总线。CAN总线作为智能设备的联系纽带,把挂在总线上作为网络节点的智能设备连接为网络系统,并进一步构成自动化系统,实现基本控制的综合自动化系统。随着现场总线技术和计算机外设接口技术的发展,现场总线与计算机快速有效的连接又有了更多的方案,USB作为一种新型的接口技术,以其简单易用、速度快等特点而备受青睐。本文简要提出了USB 接口与CAN总线连接方案,论述了系统的硬件构成,固件开发和驱动程序等内容。关键词:现场总线 USB CAN总线目 录第1章 绪论1第2章 课程设计的方案22.1 概述2

4、2.2 系统组成总体结构2第3章 硬件设计33.1 单片机最小系统设计33.2 CAN总线43.3 USB接口5 3.4 收发器PCA82C2506 3.5系统总体框图8第4章 软件设计94.1 CAN总线的初始化程序94.2 SJA1000发送和接收数据的流程10第5章 课程设计总结12参考文献13附录14第1章 绪论CAN总线最初是德国Bosch公司在1986 年为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种支持分布式实时控制系统的串行数据通讯总线。CAN总线与其它通信网的显著不同之处在于: (1)报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性

5、质的标识符过滤报文,该收的收下,不收的弃用。其好处是可线上网下网、即插即用和多站接收。 (2)特别强化了对数据安全性的关注,满足控制系统及其它较高数据要求的系统需求。另外CAN总线采用短帧结构,借助接收滤波的多地址帧传送,受干扰概率低,每帧信息都有CRC校验及其它检错措施。响应远程数据请求,配置灵活,具有全系统的数据相容性。节点数主要取决于总线驱动电路,目前最多可达110个节点。CAN总线符合ISO11898标准,通信速率高,最大传输速率可达1Mbit/S,最大传输距离为10km,传输介质可为双绞线。基于CAN总线以上的特点,把它应用于系统分布比较分散且需要在同一总线上挂接多个节点的场合是非常

6、适合的。CAN总线具有高性能、高可靠性、高性价比、连接方便、实时性好及其独特的设计等突出优点应用于许多工业部门,目前已成为比较流行的一种现场总线,广泛应用于控制系统中的各检测和执行机构之间的数据通信。而实际应用中PC机与CAN总线的人机交互设计尤为重要,它直接影响系统的运行和结果,其连接方法也成为系统设计的重点,通常采取3种连接方式:RS-232串行口通信、PCI卡、USB口通信,由于串行通信端口在系统控制领域中一直扮演着极为重要的角色,以其开发简单,资源丰富,成本低,无需驱动程序等诸多优点,不仅没有被淘汰,反而在规格上更先进,故应用广泛。结合设计中AT89S51单片机有串行通信口且接口简单的

7、特点,选用RS-232作为CAN总线与PC机之间的连接方式。将就这一基于CAN控制器SJA1000与AT89S51的具有通用性的工业测控系统设计的软硬件设计方案作详细介绍。第2章 课程设计的方案2.1 概述本次设计主要是综合应用所学知识,设计CAN总线适配器接口设计,并在实践的基本技能方面进行一次系统的训练。能够较全面地巩固和应用“现场总线”课程中所学的基本理论和基本方法。系统以单片机AT89S51和SJA1000控制器为核心,USB的CAN总线适配器设计,实现计算机串口与CAN总线协议的转换。设计硬件包括总线控制器、总线收发器及ATMEL系列单片机及USB芯片等。软件采用汇编语言或C语言,并

8、调试与分析。本设计系统主要部件结构图如图2.12.2 系统组成总体结构AT89S51复位电路24M时钟SJA1000PDIUSBD12控制逻辑6M时钟光电隔离DCDCTJA1050适配器接口图2.1 系统总体框图第3章 硬件设计3.1 单片机最小系统设计AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元

9、,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。图3.1单片机最小系统3.2 CAN总线在本系统中,CAN控制器采用Philips公司生产的SJA1000,它作为一个发送、接受缓冲器,实现主控制器和总线之间的数据传输;CAN收发器采用TJA1050芯片,它是CAN控制器和物理总线的接口,主要可以提供对总线的差动发送能力和对CAN控制器的差动接受能力。 在CAN总线结构中,总线的两端还要配置两个120的电阻,其作用是总线匹配阻抗,可以增加总线传输的稳定性和抗干扰能力,减少数据传输中的出错率。为了增强CAN总线节点的抗干扰能力,SJA1000的TXO和RX0

10、可通过高速光耦6N137与TJA1050相连,这样就很好的实现了总线上各节点的电气隔离。光耦部分电源与CAN_V必须用小功率电源隔离模块进行隔离,这样就提高了节点的稳定性和安全性。图3.2为SJA1000引脚图。图3.2 SJA1000引脚图3.3 USB接口PDIUSBD12 是一款带有并行总线和局部DMA传输能力的高速USB 接口器件,它支持USB1.1协议的所有传输方式,在本设计中用到了控制传输,中断传输和批量传输。控制传输处理主机到USB设备的控制信息,固定使用端点0。中断传输用来传送数据量很小,但需要及时处理,以达到实时效果的数据,使用端点1。批量传输用来实现CAN节点与主机之间大数

11、据快传送,使用主端点(端点2),一次最大可发送64字节。PDIUSBD12 的固件设计成完全的中断驱动,当MCU 处理前台任务时USB 的传输可在后台进行。这就确保了最佳的传输速率和更好的软件结构,同时简化了编程和调试。后台ISR 中断服务程序和前台主程序循环之间的数据交换通过事件标志和数据缓冲区来实现,当PDIUSBD12 从USB 收到一个数据包那么就对MCU 产生一个中断请求,MCU立即响应中断,在ISR中固件将数据包从PDIUSBD12 内部缓冲区移到数据缓冲区,并在随后清零PDIUSBD12 的内部缓冲区,以使能接收新的数据包。MCU 可以继续它当前的前台任务,返回到主循环检查循环缓

12、冲区内是否有新的数据。图3.3为PDIUSBD13固件编程结构图。图3.3 PDIUSBD13固件编程结构图这部分程序结构可包括:1) 请求处理程序对USB的标准设备请求进行处理和对用户添加的厂商请求进行处理;USB设备接入主机后要进入复杂的设备列举过程,并安装正确的驱动程序。2)硬件提取层对单片机的I/O口、数据总线等硬件接口进行操作,该层包含最底层的函数,这些函数在不同的MCU 平台上需要进行改变, void outportb(unsigned char port,unsigned char val); void inportb(unsigned char port); 对PDIUSBD1

13、2 所有的I/O 访问都可由它们实现; 3)PDIUSBD12 命令接口 对PDIUSBD12器件进行操作的模块子程序集,以简化器件的编程; 4)中断服务程序 当PDIUSBD12向单片机发出中断请求时,读取PDIUSBD12的中断传输来的数据,并设定事件标志和Setup包数据缓冲区,传输给主循环。 5)主循环 发送USB请求,处理USB总线事件和用户功能处理等。MCU 一旦上电就需要初始化其所有端口存储区,中断服务程序。在主循环程序中MCU 对事件进行轮询,如有CAN总线发来的数据,则送往PDIUSBD12进行发送,如有USB总线数据,则启动CAN发送程序,它们在接口的接收工作分别由各自的中

14、断程序完成。要注意的是,我们在用了PDIUSBD12的端口最大一次可发送64字节,SJA1000一次最多能发8字节, 如果端口1传输的长度大于8 字节,MCU 在传输阶段就必须根据数据大小,分数次完成CAN数据的发送工作。PDIUSBD12初始化程序:void D12_init() D12_SetAddressEnable(0,1); D12_SetEndpointEnable(1); Disconnect(); Delay(2); Connect();D12_ReadInterruptRegister();3.4 收发器PCA82C250PCA82C250是CAN协议控制器和物理总线间的接口,它主要是为汽车中高速通讯(高达1Mbps)应用而设计。此器件对总线提供差动发送能力,对CAN控制器提供差动接收能力,与ISO11898标准完全兼容。PCA82C250芯片由接收器、驱动器、基准电压产生电路、工作模式选择电路及保护电路等组成。PCA82C250内部的限流电路可以防止发送输出级对电池电压的正端和负端短路。虽然在这种故障条件出现时,功耗将增加,但这种特性可以阻止发送器输出级的破坏。在节点温度大约超过160时,两个发送器输出端的极限电流将减少。由于发送器是功耗的主要部分,因此

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号