首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
Small RTOS51 下CAN总线数据收发实现
来源:本站整理  作者:佚名  2009-11-05 10:15:11



1 CAN总线简介

现场总线技术FCS(Fieldbus Control System)成为当今工业自动化技术发展的热点,德国Bosch公司的CAN(1Mbit/s)是国际标准之一,也是Controller Area Network 的应用标准。它属于现场总线范畴,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特设计,CAN总线已成为目前国外最普及和实时性最高的现场总线。CAN总线在可靠性和实时性方面远远优于RS-485等工业现线CAN总线主要有下列特征:

1. 数据信号采用差分电压传输,两条信号线”CAN_H”和” CAN_L”。

2. 传输介质可用双绞线、同轴电缆或光纤,具有较强的抗干扰能力。直接通信距离最大可达10km(速率小于5kbit/s),最高通信速率可达1Mbit/s(此时距离最长为40m)。

3. 节点不分主从,节点任意时刻可向其他节点发送信息,依据优先权进行总线访问,满足不同的实时要求。

4. 采用非破坏性基于优先权总线仲裁技术。

5. 采用短帧结构,每帧为8bit,保证了数据出错率低。

6. 可以点对点、点对多点及全局广播方式传送接收数据。

7. 发送期间若丢失仲裁或由于出错而遭破坏的帧可自动重发送。
2  Small RTOS51简介

Small RTOS51 是一个用于8051系列单片机的多任务实时操作系统。8051系列单片机一般只有很少的ROM和RAM资源,如P89C51只有4KB Flash和128字节RAM。一般的实时操作系统如RTX Tiny 虽然小,但是任务没有优先级和中断管理,也无源代码,而uc/os-II规模太大,需要大量外部RAM。基于此,Small RTOS51是专为51 单片机编写嵌入式操作系统,它使用了RTX51 Tiny 的堆栈管理机制,并像uc/os-II一样是抢占式的。

3 一个典型的CAN节点

3.1.CAN总线接口的结构

一个CAN总线接口有3 部分组成,如图(a)所示,它们分别对应于CAN总线的物理层、数据链路层和应用层。

最上层为微控制器,主要负责上层应用以及系统控制,包括CAN协议的应用层协议的实现,协调各系统设备的工作。(本设计采用的MCU是8051)

中间层为CAN控制器,CAN控制器负责处理数据帧,完成数据的打包、解包,错误界定,并提供报文缓冲和传输滤波。(本设计采用的CAN总线控制器是Philips公司生产SJA1000)

最底层为CAN收发器,主要是接口电平的转换,接口电器特性的处理。(本设计采用82C250)
  
(a)CAN接口结构



3.2.节点电路设计

(1)SJA1000与单片机接口电路


  
(b)SJA1000与单片机接口电路

SJA1000 的AD0-AD7与单片机的数据总线相连,地址A17作为SJA1000的片选使能端,由ALE、WR、RD控制SJA1000 数据的发送和接收。注意SJA1000复位端的连接,单片机是高电平复位,而SJA1000是低电平复位,因此复位信号要通过一个反相器与SJA1000复位端相连。另外SJA1000的11脚MODE接高电平,选择Intel二分频模式 。SJA1000的16脚时中断信号输出,在中断允许情况下,有中断发生时,16脚出现有高电平到低电平的跳变。因此16脚可以直接与单片机的外部中断输入脚相连接。

SJA1000的ODE引脚可选择接口模式:

◆Intel模式  MODE高

◆M0torola模式  MODE低

[1] [2]  下一页

关键词:

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

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

推荐阅读

图文阅读

热门阅读

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