[发明专利]一种TTCAN总线对时及发送数据的方法有效
申请号: | 201410283192.1 | 申请日: | 2014-06-23 |
公开(公告)号: | CN104035901A | 公开(公告)日: | 2014-09-10 |
发明(设计)人: | 刘娇娜;门义双;刘树林;蒋明军;侯毅;王雪涛;刘斌;高云琨;苗秋实;周婧;郭亮;王光辉;徐静 | 申请(专利权)人: | 中国北方车辆研究所 |
主分类号: | G06F13/38 | 分类号: | G06F13/38;H04L29/06 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘东升 |
地址: | 100072*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 ttcan 总线 发送 数据 方法 | ||
技术领域
本发明属于信息通讯技术领域,具体涉及一种TTCAN总线对时及发送数据的方法。
背景技术
自20世纪80年代德国BOSCH公司发明CAN总线技术以来,CAN总线作为一种网络通讯控制方式,广泛应用在汽车、航空、工业控制、自动控制等领域。随着分布在通信网络中的节点逐渐增多,总线的优先级仲裁机制导致的通信延迟时间增大,为解决总线通信的实时性要求,国际标准ISO 11898-4在CAN协议栈的会话层中提出了一种利用时间触发的通信协议TTCAN。在TTCAN通信网络中,时间主节点周期性的发送定时消息,其它时间从节点接收定时消息作为时钟同步信号,使本地时钟与时间主节点的时钟同步,每个节点都有一个消息调度表称为矩阵周期,该表指明了此节点发送或接收某个特定消息的时刻,矩阵周期又可分为多个基本周期,基本周期再由一系列最小固定时间片组成,总线上的消息交换就在这个时间片内完成。因此相对传统的CAN协议,TTCAN具有实时性高、可靠性好,数据量大,避免总线拥塞,大大提高网络利用率等特点。
在工业领域,尤其是汽车行业,TTCAN总线节点的硬件实现一般以单片机或DSP为核心,配合CAN总线控制器,设计双冗余通道(A通道和B通道)完成。单片机和DSP都具有外部时钟信号,内部有定时器可产生精确的定时中断,并且中断优先级较高。目前普遍采用的定时方式是在接收到主节点定时消息后,设置一个专用定时器时钟产生定时中断对时,而单片机或DSP除了处理对时和周期发送数据,内部还要处理接收数据,准备发送数据,以及其它计算,外部还会有其它接口的信号采集和发送等。若CAN总线的双冗余通道A通道和B通道对时分别需要占用一个专用定时中断,接收CAN总线数据也会产生中断,加之程序中实现其他功能需要定时,则程序中产生的中断较多,程序会在未知的情况被打断,在多重中断嵌套下会导致定时不准,严重会使程序逻辑混乱。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何避免TTCAN总线中断嵌套较多而产生的系统逻辑混乱。
(二)技术方案
为解决上述技术问题,本发明提供一种TTCAN总线对时及发送数据的方法,该方法基于TTCAN总线对时及发送数据系统来实施,该系统以单片机或DSP为核心,配合CAN总线通信模块的嵌入式系统,有外部时钟信号,内部可产生精确的定时中断;该系统具体包括:中断控制器、CAN总线收发器、定时器;
具体而言,上述方法具体包括如下步骤:
步骤S1:预设定CAN总线网络的总线波特率,确定最小时间间隔,即一个时间片时间,由多个分别定义有序号的时间片构成一个基本周期,再由基本周期确定矩阵周期;同时,确定各个时间从节点各自发送时间所在的时间片序号或时间片序号组;
步骤S2:关闭所有中断,配置时间从节点的中断控制器、初始化时间从节点的CAN总线收发器;
步骤S3:定时器选用中断优先级最高的T0定时器,对T0定时器初始化,将T0定时周期T设定为TTCAN总线的一个时间片时间,根据外部时钟频率及内部分频方式计算第一中断计数值,将该第一中断计数值装载到T0定时器的计数寄存器;
步骤S4:启动CAN总线收发器,根据CAN总线的总线波特率和接收到的时间主节点定时数据帧长度来计算接收定时数据时间T1,获得接收定时数据时间T1与T0定时器定时周期T之间的时间差T-T1,根据外部时钟频率及内部分频方式计算第二中断计数值;
步骤S5:计算完成一个矩阵周期内,需要进入T0定时器定时中断的次数N;其中,N=一个矩阵周期/一个时间片;
步骤S6:定义当前进入T0定时器的中断累计次数为NS,将其初始化为0;定义成功接收时间主节点的定时消息的状态值RCT,将其值定义为:成功接收信息时,其值设为1,未接收信息时,其值设为0;将该状态值RCT初始化为0;
步骤S7:开启中断,中断控制器启动T0定时器;
步骤S8:判断是否进入T0定时器中断;若是,则转入步骤S9;若否,则判断是否接收到定时消息;当判断为接收到定时消息时,将步骤S4的第二中断计数值装载到T0定时器的计数寄存器;设置NS=0;设置RCT=1,表示接收到定时消息,然后重新执行步骤S8;当判断为没有接收到定时消息时,则重新执行步骤S8;
步骤S9:每进入一次定时器T0中断,中断累计次数NS数值加1;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国北方车辆研究所,未经中国北方车辆研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410283192.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:垂直式挡水轮装置
- 下一篇:横观各向同性页岩储层岩石力学参数的确定方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置