Vector - CAPL - CANoe硬件配置函数 - 02
Hardware Configuration
硬件配置中包含CAN或者CANFD的参数配置,其中包含波特率、时间片1、时间片2、时间量子中的同步跳跃宽度、采样点数等信息;随着研发系统中各类型的平台化,测试想要跟上研发的进度,也必须进行平台化,那么为了适配一个公司中多样的产品类型,我们就需要适配不同产品的CAN&CANFD信息配置,这里我们就能通过该函数进行修改和控制,下面我们介绍下配置的参数函数。
canGetConfiguration & canSetConfiguration
功能 :读取/设置CANFD控制器的参数
Channel:CANoe配置的CANFD通道
canSetting:
float baudrate:CAN通道波特率
unsigned char tseg1, tseg2:时间片中时间段1和2的长度
unsigned char sjw:同步时间片中的跳跃宽度
unsigned char sam:采样点数 (1 or 3)
unsigned int flags
canGetConfiguration:
bit 0、bit 1:0,未知传输模式;1,低速;2:单线;3,高速
bit 8:0x100,该通道被配置为高速CAN
All other:保留值
canSetConfiguration:
bit 0:0,正常模式;1,静默模式(确认未创建)
All Other:保留值全部设置为0
返回值:
1:成功获取CAN通道配置
0:获取CAN通道配置失败
代码示例
void CANFD_Channel_Setting()
{int ret;int channel = 1;CANsettings abrSettings;CANsettings dbrSettings;abrSettings.baudrate = 1000000;abrSettings.tseg1=5;abrSettings.tseg2=2;abrSettings.sjw=2;abrSettings.sam=1;abrSettings.flags = 0;dbrSettings.baudrate = 4000000;dbrSettings.tseg1=6;dbrSettings.tseg2=3;dbrSettings.sjw=2;dbrSettings.sam=1;dbrSettings.flags = 0;write("设置CANFD波特率为4M");ret = canFdSetConfiguration(channel, abrSettings, dbrSettings);ret = canFdGetConfiguration(channel, abrSettings, dbrSettings);if (ret){write("Arbitration settings: baud= %f, tseg1 = %d, tseg2= %d, sjw = %d, sam = %d, flags = 0x%x",abrSettings.baudrate, abrSettings.tseg1, abrSettings.tseg2, abrSettings.sjw, abrSettings.sam, abrSettings.flags);write("Data settings: baud= %f, tseg1 = %d, tseg2= %d, sjw = %d, sam = %d, flags = 0x%x",dbrSettings.baudrate, dbrSettings.tseg1, dbrSettings.tseg2, dbrSettings.sjw, dbrSettings.sam, dbrSettings.flags);}
}
canFdGetConfiguration & canFdSetConfiguration
功能 :读取CAN控制器的参数
Channel:CANoe配置的CAN通道
canSetting:
float baudrate:CAN通道波特率
unsigned char tseg1, tseg2:时间片中时间段1和2的长度
unsigned char sjw:同步时间片中的跳跃宽度
unsigned char sam:采样点数 (1 or 3)
unsigned int flags
canGetConfiguration:
bit 0、bit 1:0,未知传输模式;1,低速;2:单线;3,高速
bit 8:0x100,该通道被配置为高速CAN
All other:保留值
canSetConfiguration:
bit 0:0,正常模式;1,静默模式(确认未创建)
All Other:保留值全部设置为0
返回值:
1:成功获取CAN通道配置
0:获取CAN通道配置失败
代码示例
void CAN_Channel_Setting()
{int ret;int channel = 1; //CAN1通道canSettings settings;settings.baudrate = 1000000;//波特率为1Msettings.tseg1=5;settings.tseg2=2;settings.sjw=2;settings.sam=1;settings.flags = 0;write("设置CAN1通道波特率为1M");ret = canSetConfiguration(channel, settings);//读取CAN1通道的配置信息ret = canGetConfiguration(channel, settings);if (ret){write("Settings: baud= %f, tseg1 = %d, tseg2= %d, sjw = %d, sam = %d, flags = 0x%x",settings.baudrate, settings.tseg1, settings.tseg2, settings.sjw, settings.sam, settings.flags);}
}
Vector - CAPL - CANoe硬件配置函数 - 02相关推荐
- Vector - CAPL - CANoe硬件配置函数 - 05
目录 resetCan -- 重置CAN控制器 代码示例 ResetCanEx -- 重置CAN控制器的特定CAN通道 代码示例 ScanBaudrateActive -- 特定通道设置波特率 Sca ...
- Vector - CAPL - CANoe硬件配置函数 - 03
目录 canFlushTxQueue -- 刷新已定义的Tx队列 代码示例 canSetChannelAcc -- CANoe接收过滤器设置 代码示例 canSetChannelMode -- CAN ...
- Vector - CAPL - CANoe硬件配置函数 - 04
目录 getChipType -- 确定当前所用的CAN控制器类型 代码示例 setCanCabsMode -- 设置 CANcab 模式 代码示例 setOcr -- 设置输出寄存器 代码示例 se ...
- Vector - CAPL - CANoe硬件CANCANFD参数
如何更改与 CAPL 的 CAN 总线通信的波特率? 解决办法 通常我们常见的配置方法主要有两种方法可以使用 CAPL 更改波特率,使用函数 setBtr或使用 canSetConfiguration ...
- Vector - CAPL - 获取相对时间函数
在自动化开发中,无论是CAN通信测试,还是网络管理测试,亦或是休眠唤醒等等存在时间相关的,都可能会使用相关的时间函数:今天主要介绍的就是获取当前时间,我们知道vector工具的最大优势就是稳定和精确度 ...
- C/C++通过WMI和系统API函数获取获取系统硬件配置信息(转)
前段时间由于项目需要,要求做一个服务器的实时性能监控(CPU.内存.网络利用率等)和读取服务器的硬件配置参数的接口供项目组使用,就是一个类似于鲁大师之类的东东吧... 当然第一想法肯定是利用Windo ...
- (附源码)python主机硬件配置推荐系统 毕业设计 231155
Django 主机硬件配置推荐系统 摘 要 近年来,随着移动互联网的快速发展,电子商务越来越受到网民们的欢迎,电子商务对国家经济的发展也起着越来越重要的作用.简单的流程.便捷可靠的支付方式.快捷畅通的 ...
- (附源码)Django 主机硬件配置推荐系统 毕业设计 231155
Django 主机硬件配置推荐系统 摘 要 近年来,随着移动互联网的快速发展,电子商务越来越受到网民们的欢迎,电子商务对国家经济的发展也起着越来越重要的作用.简单的流程.便捷可靠的支付方式.快捷畅通的 ...
- 嵌入式Linux设备驱动程序:发现硬件配置
嵌入式Linux设备驱动程序:发现硬件配置 Embedded Linux device drivers: Discovering the hardware configuration Interfac ...
最新文章
- ML之LoRDTRF:基于LoRDT(CART)RF算法对mushrooms蘑菇数据集(22+1,6513+1611)训练来预测蘑菇是否毒性(二分类预测)
- java使用教程——组件及事件处理——常用组件与布局
- 生成证书密钥RequestsDependencyWarning:Old version of cryptography ([1, 2, 3]) may cause slowdown.
- 逻辑回归(LR)个人学习总结篇
- 分析器错误信息: 未能加载类型命名空间.类... ---小结
- python小工具脚本批量处理_压缩文件批量处理(附Python脚本代码)
- springboot整合rabbitmq之消息的确认机制
- 照片视频制作软件哪个好?自动生成酷炫效果,3步快速搞定!
- fiddler界面详解(转自:子信风蓝蓝)
- 压敏电阻 matlab,输入整流滤波器及钳位保护电路的设计
- miniUI datagrid 接收不到数据显示undifined
- 使用ico图标†制作ico图标(浏览器图标
- 计算机丢失lzma.dll,修复7z lzma.dll
- echarts 在线编辑,在线学习地址
- 张良、萧何与韩信:汉初三杰悲情录[转]
- java模拟三人爬山_java笔记——模拟多人徒步爬山例子
- 免费SVN代码托管,不限私有,不限成员
- FX1S控制步进电机的实例(图与程序)
- 计算机在艺术娱乐的应用,计算机技术在艺术领域的应用
- 有什么软件可以裁剪html文件,有什么软件可以裁剪视频?要手机版的