首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于ADSP2181的CAN总线通讯设计
来源:本站整理  作者:佚名  2009-09-25 09:49:10



现在CAN总线除了被用于汽车系统内部的数据通讯与控制,他已在工业自动化、各种控制设备、交通工具、医疗仪器以及建筑、环境控制等各领域得到广泛的应用。而这里被用于成套测井仪器中各仪器之间的数据通讯。

1 CAN与DSP的接口电路

以ADSP2181和SJA1000芯片设计的接口电路如图1所示。图1中,用1片GAL16V8作为逻辑转换电路。为突出接口电路,其他部分从略。

用FM书写的设计文件如下:

2 波特率的设定

BTR0和BTR1是总线定时寄存器,通过对这2个寄存器的设置可以惟一地确定波特率和同步跳转宽度。BTR0各位功能如图2所示。BTR1各位功能如图3所示。

总线长度在40 m以内(满足这里的设计需求),CAN总线的位速率可达到1 Mb/s,这里需要的波特率为1 Mb/s,晶体震荡频率为24 MHz,设BTR0=00H,BTR1=18H,计算总线传输速率。由给定的BTR0和BTR1可知:BRP.5,BRP.4,BRP.3,BRP.2,BRP.1和BRP.0以及TSEG2.1,TSEG2.0,TSEG1.3均为0;另外,TSEG2.2,TSEG1.2,TSEG1.1,TSEG1.0均为1。因此有:

而波特率为1/tB,即为1 Mb/s。

3 初始化子程序

SJA1000的初始化只有在复位模式下才可以进行。初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器AMR和接收代码寄存器ACR的设置、波特率参数设置和中断允许寄存器IER的设置等。在完成SJA1000的初始化设置以后,SJA1000就可以回到工作状态,进行正常的通信任务。下面提供SJA1000初始化的ADSP汇编源程序。程序中寄存器符号表示的是SJA1000相应寄存器占用的片外存储器地址,这些符号可在程序的头部用伪指令对其定义。需要注意的事SJA_PORT位I/O接口,其地址为0x0600。

[1] [2]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:13,515.63000 毫秒