Capl之FlexRay脚本id的大致解读
了解一段时间的FlexRay协议后,感觉FlexRay就是一个调度表,类似时分多址的形式。
在Capl脚本中,Flexray帧对象frFrame的属性困扰了很久其中关于id这一块上踩了巨坑
![](/assets/blank.gif)
![](/assets/blank.gif)
和Can/Lin不同,FlexRay的id由三部分组成,在数据库中可以看到是Slot、Base Cycle和Cycle Repetion,但对应到脚本中的属性并没有全部出现。这导致后期我在脚本中去确认数据帧的时候无法定位。
在多次试错后发现其中的对应关系:
数据库: Capl:
slot fr_slotID
Base Cycle fr_cycleOffset
Cycle repetition fr_cycleRepetition
其中,slot指的是插槽,对应的是时刻表中的一个位置;Base Cycle类似于一个slot上的时间位置,Cycle repetition就是周期了。
这里可以把时刻表理解为一个二维坐标系,x轴代表的是slot(插槽),y轴代表的是slot时间位,如果同一个slot上有多个数据帧,那么这些帧就可以理解为动态帧,例如插槽10上有4个帧,周期为4,那么这四个帧的id就是10-0-4,10-1-4,10-2-4,10-3-4,对应坐标轴上就是(10,0)、(10,1)、(10,2)、(10,3),这里的y坐标0、1、2、3就是时间位了。
那时间位的意义是什么呢?当我们把时刻表理解为一个二位坐标系的时候,每一个周期只会发送y=n(0<=n<64)这条时间线上的所有帧,这个称之为小周期,当所有的数据帧都被发送了一次后,称之为大周期。
在数据库中的时刻表就是这个意思,但X,Y轴的举例可能和我是反的。
![](/assets/blank.gif)
区分了动态帧和静态帧,这里顺带提一下怎样用脚本发送数据帧。在Can/Lin中可以直接使用output发送,但在flexray中需要将其设置到时刻表中才可以,函数为:
///帧需要提前申明
//动态帧的发送
frOutputDynFrame(DynFrame);
//静态帧的发送
frUpdateStatFrame(StatFrame);
关于里面的字符串处理、属性获取和含义等等还有很多坑,慢慢踩、慢慢聊!新人入坑,如有错误,烦请指正!
Capl之FlexRay脚本id的大致解读相关推荐
- 执行jmeter脚本生成html报告解读
我么执行脚本之后,会生成result结果文件,我们在服务器里面打包之后下载下来,打开查看分析结果 一.执行脚本 1.首先我们得在本地,也就是客户端调试好脚本之后,放在服务器上上面跑 就是图片中保存文件 ...
- 微信小程序---wxs文件(脚本文件)的解读与使用
一.wxs文件(脚本文件) wxs就是在page-frame中运行的js,可以在view数据做一些变换. wxs对性能的贡献就只有一点:与wxml是在同一个线程运行的,避免了跨线程通信的开销 简单来说 ...
- PowerManagerService类大致解读
PowerManagerService负责Android系统的电源管理,常见的功能有:点亮屏幕.熄灭屏幕.进入屏保等,PowerManagerService继承自SystemService,由Syst ...
- Unity中AssetBundle打包文件大致解读
本文只讲述使用AssetBundle打包出来的几种文件信息.如果想学习怎么打包资源的话,请挪步UnityAssetBundle打包 目录 前提1:只有一个AssetBundle,打包资源数量为一个 打 ...
- 博主日常工作中使用的shell脚本分享
前言: 今天给大家分享一篇在我工作中常用的一个shell脚本,里面有一些我们常用到的shell操作.该脚本用于本地电脑和服务器交互上,实现以下功能: 自动拉取自己个人电脑上的源码到服务器上yocto包 ...
- 第四天:关看门狗、设置栈、控制icache、重定位、链接脚本
1.汇编写启动代码:关看门狗 什么是看门狗? 看门狗(watch dog timer看门狗定时器),比如:家门口有一只狗,这个狗定时会饿(譬如两小时一饿),狗饿了就会胡乱咬人,人进进出出要想保证安全必 ...
- 控件获取图像可从几方面取得?_基于图像特征与布局刻画的移动测试脚本跨平台录制回放...
一. 引言 移动应用在全球范围内有着越发举足轻重的地位,因此移动应用的快速迭代和频繁的需求变更的特点引发了对应用质量保障的要求不断提高.在大型设备集群上迁移测试脚本是移动应用质量保障的关键技术之一,因 ...
- Elasticsearch 脚本安全使用指南
1.关于 Elasticsearch 脚本实战问题 最近星球群里讨论了脚本的使用. 当看到复杂脚本的时候,我的第一反应是: 类似复杂查询要搞这么复杂吗? 能否前置让 ingest 预处理多花时间,哪怕 ...
- 109个shell实用脚本
109个shell实用脚本 1.Dos 攻击防范(自动屏蔽攻击 IP) #!/bin/bash DATE=$(date +%d/%b/%Y:%H:%M) LOG_FILE=/usr/local/ngi ...
最新文章
- OpenWrite 新增扩散渠道:慕课手记,支持图片转存!
- oracle声明number变量,oracle – PL / SQL:如何声明会话变量?
- 在ASP.NET CORE 2.0使用SignalR技术
- 记一次 Redis Cluster 宕机引发的事故
- linux分支结构,实验四 Shell脚本中的分支结构
- linux下配置mysql默认编码utf8
- ipad中的active失效?
- 关于Camel In Action 的理解
- 三菱系统数据采集程序发布安装指引
- NC63重写导出功能
- Git的下载安装教程
- 开发DSP硬件驱动程序的一种方法
- unity篇-官方序列化接口 ISerializationCallbackReceiver
- 计算机开机自动进入bios,电脑开机自动进入bios界面的原因及解决办法
- “夕阳无限好,只是近黄昏”改一个什么字让意境与原句截然不同?
- 基于CNN和LSTM的气象图降水预测示例
- python新式类和旧式类区别
- win7浏览器主页修改不过来_Win7系统IE浏览器无法更改主页怎么解决?
- 中国主要湖泊水库面状矢量边界图层ArcGIS使用之二篇
- “长宽高”不设限,中软国际带你在云上“乘风破浪”