当前位置: 首页 > news >正文

pcan二次开发文档 | PEAK-System Documentation

文章目录

  • PCAN 参数设置
    • “硬件识别”参数
      • PCAN_CHANNEL_CONDITION | 只读
        • 可用性
        • Supported By
        • Possible Values
    • 关于信息的参数
    • “影响行为”参数
    • 数据读取和流量控制参数
    • “日志和调试”参数
    • “CAN数据记录(跟踪)”参数
    • “电子电路(I/O引脚)”参数
    • 预处理参数
  • 识别硬件

PCAN 参数设置

PCAN-Basic目前支持28个参数,可以使用CAN_GetValue / CAN_SetValue函数来读取/配置。并不是所有参数都可以配置,因为有些参数是只读参数。下面你会发现一个带有参数及其相关值的列表:
• PCAN_DEVICE_ID 1
• PCAN_5VOLTS_POWER 2
• PCAN_RECEIVE_EVENT 3
• PCAN_MESSAGE_FILTER 4
• PCAN_API_VERSION 5
• PCAN_CHANNEL_VERSION 6
• PCAN_BUSOFF_AUTORESET 7
• PCAN_LISTEN_ONLY 8
• PCAN_LOG_LOCATION 9
• PCAN_LOG_STATUS 10
• PCAN_LOG_CONFIGURE 11
• PCAN_LOG_TEXT 12
• PCAN_CHANNEL_CONDITION 13
• PCAN_HARDWARE_NAME 14
• PCAN_RECEIVE_STATUS 15
• PCAN_CONTROLLER_NUMBER 16
• PCAN_TRACE_LOCATION 17
• PCAN_TRACE_STATUS 18
• PCAN_TRACE_SIZE 19
• PCAN_TRACE_CONFIGURE 20
• PCAN_CHANNEL_IDENTIFYING 21
• PCAN_CHANNEL_FEATURES 22
• PCAN_BITRATE_ADAPTING 23
• PCAN_BITRATE_INFO 24
• PCAN_BITRATE_INFO_FD 25
• PCAN_BUSSPEED_NOMINAL 26
• PCAN_BUSSPEED_DATA 27
• PCAN_IP_ADDRESS 28
• PCAN_LAN_SERVICE_STATUS 29
• PCAN_ALLOW_STATUS_FRAMES 30
• PCAN_ALLOW_RTR_FRAMES 31
• PCAN_ALLOW_ERROR_FRAMES 32
• PCAN_INTERFRAME_DELAY 33
• PCAN_ACCEPTANCE_FILTER_11BIT 34
• PCAN_ACCEPTANCE_FILTER_29BIT 35
• PCAN_IO_DIGITAL_CONFIGURATION 36
• PCAN_IO_DIGITAL_VALUE 37
• PCAN_IO_DIGITAL_SET 38
• PCAN_IO_DIGITAL_CLEAR 39
• PCAN_IO_ANALOG_VALUE 40
• PCAN_FIRMWARE_VERSION 41
• PCAN_AVAILABLE_CHANNELS_COUNT 42
• PCAN_AVAILABLE_CHANNELS 43
• PCAN_ALLOW_ECHO_FRAMES 44
• PCAN_DEVICE_PART_NUMBER 45

为了划定不同参数的用途,将其分为5组:

“硬件识别”参数

PCAN_CHANNEL_CONDITION | 只读

这个参数通过返回一个标志值来标识一个PCAN-Channel的使用状态。
例如,只有当PCAN-Channel可用时,连接才可能,这意味着:
• It is valid:PCAN-Channel是下面“Supported By”中列出的一种。
• It is connectable:PCAN-Channel没有初始化,或者目前被PCAN-View使用。

可用性

从版本1.0.0开始提供。然而,自版本以来,可用性得到了显著的改进
1.0.4,由于错误修复。在版本4.0.0中修改了该参数的行为。

Supported By

  • PCAN-ISA (Channels PCAN_ISABUS1 to PCAN_ISABUS8).
  • PCAN-DNG (Channel PCAN_DNGBUS1).
  • PCAN-PCI (Channels PCAN_PCIBUS1 to PCANPCIBUS16).
  • PCAN-USB (Channels PCAN_USBBUS1 to PCAN_USBBUS16).
  • PCAN-PCC (Channels PCAN_PCCBUS1 to PCAN_PCCBUS2).
  • PCAN-LAN (Channels PCAN_LANBUS1 to PCAN_LANBUS16).

Possible Values

PCAN-Channel的条件可以是以下定义的值之一

Defined ValueDescription
PCAN_CHANNEL_UNAVAILABLE该通道没有连接/可访问。
PCAN_CHANNEL_AVAILABLE可以使用该通道。
PCAN_CHANNEL_OCCUPIED通道已经初始化。
PCAN_CHANNEL_PCANVIEW该通道正在被PCANView使用,但它可以被初始化。

• PCAN_DEVICE_ID
• PCAN_HARDWARE_NAME
• PCAN_CONTROLLER_NUMBER
• PCAN_CHANNEL_IDENTIFYING
• PCAN_IP_ADDRESS
• PCAN_AVAILABLE_CHANNELS
• PCAN_DEVICE_PART_NUMBER

关于信息的参数

• PCAN_API_VERSION
• PCAN_CHANNEL_VERSION
• PCAN_CHANNEL_FEATURES
• PCAN_BITRATE_INFO
• PCAN_BITRATE_INFO_FD
• PCAN_BUSSPEED_NOMINAL
• PCAN_BUSSPEED_DATA
• PCAN_LAN_SERVICE_STATUS
• PCAN_FIRMWARE_VERSION
• PCAN_AVAILABLE_CHANNELS_COUNT

“影响行为”参数

数据读取和流量控制参数

“日志和调试”参数

“CAN数据记录(跟踪)”参数

“电子电路(I/O引脚)”参数

预处理参数

在通道成功初始化之后,除了被分组为“日志记录和调试”的参数(这些参数不与特定的通道绑定)之外,在PCAN-Basic API内的参数配置是允许的。然而,在某些情况下,甚至需要在通道初始化之前进行一些配置。在通道初始化之前,可以在通道上配置以下参数。
• PCAN_RECEIVE_STATUS
• PCAN_LISTEN_ONLY
• PCAN_BITRATE_ADAPTING

识别硬件

首先,考虑第一次识别发生在选择要使用的PCAN-Channel时。
通道名称已经标识要使用的总线。
在这里插入图片描述
上面的名称告诉API PCAN硬件要连接,它使用哪种总线(USB),它是系统中注册的第一个(1)硬件。PCAN-Basic允许连接以下接口:
• USB:通用串行总线。多达16个通道。
• PCI:外设组件互连(包括ExpressCard硬件)。多达16个通道。
• PCC:pc卡(PCMCIA),个人计算机记忆卡。多达2个通道。
• LAN:虚拟PCAN-Gateway连接。多达16个通道。
• DNG:并行端口适配器。多达1个通道。
• ISA:工业标准体系结构。多达8个通道。
注意,硬件在系统中注册的方式取决于它的控制器驱动程序和系统本身。当多个相同类型的设备安装在一个系统上(例如USB),默认情况下,不保证在系统重启后连接到PCAN_USBBUS1仍然会连接到相同的硬件。
因此,使用参数来帮助检测正确的硬件。下面的参数用于识别要连接的物理硬件,例如,当多个设备可用于连接时。

相关文章:

  • R语言数据分组聚合实战:使用aggregate函数对mtcars数据通过两个分类变量进行数据分组聚合、并计算分组的均值、使用na.rm删除异常值
  • Chapter15 : Artificial Intelligence in Compound Design
  • 前端HTML5 +CSS3 1. 基础认知
  • R语言替换字符串中指定字符的子串:sub函数查找字符串中第一个匹配到的子串并替换、如果要删除指定字符串子串则将替换的子符串设置为空字符串
  • java计算机毕业设计基于springboo大学生社团管理系统 vue+elementui
  • un9.2:创建springboot的两种方式。
  • dubbo的Failed to save registry store file问题
  • HTML期末作业 计算机毕业设计 html css javascript食品餐饮行业网站(10页)
  • 搭建和mybatis-plus官网一样主题的网站(cos+宝塔+vercel)
  • 股权重组是指什么
  • 剑指offer(C++)-JZ11:旋转数组的最小数字(算法-搜索算法)
  • 废水除氟技术,高盐废水除氟有什么好的方法?
  • 中国合成绝缘外套行业现状动态与盈利前景预测报告2022-2028年
  • RPG Maker MV笔记-软件介绍
  • SystemdSysvinit
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • JavaScript的使用你知道几种?(上)
  • js对象的深浅拷贝
  • js如何打印object对象
  • MySQL用户中的%到底包不包括localhost?
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • webgl (原生)基础入门指南【一】
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 看域名解析域名安全对SEO的影响
  • 你对linux中grep命令知道多少?
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • #数学建模# 线性规划问题的Matlab求解
  • ()、[]、{}、(())、[[]]命令替换
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (分布式缓存)Redis分片集群
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (规划)24届春招和25届暑假实习路线准备规划
  • (四)Controller接口控制器详解(三)
  • . Flume面试题
  • .bashrc在哪里,alias妙用
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .net wcf memory gates checking failed
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • ::前边啥也没有
  • @Autowired自动装配
  • [ element-ui:table ] 设置table中某些行数据禁止被选中,通过selectable 定义方法解决
  • [ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504
  • [14]内置对象
  • [20150707]外部表与rowid.txt
  • [ACTF2020 新生赛]Upload 1
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [BUAA软工]第一次博客作业---阅读《构建之法》
  • [C/C++]数据结构 循环队列
  • [C++]priority_queue的介绍及模拟实现