虹科技术 | 重磅更新!PCAN-Basic加入NuGet,报文传输支持时间戳!

PCAN-Basic.NET(PCAN-Basic API 4.7)是用于在 .NET 应用程序中访问和使用本机 PCAN-Basic API 的接口,该程序集使用 .NET Standard 2.0 编写,适合在 Windows 和 Linux 下开发。

虹科技术 | 重磅更新!PCAN-Basic加入NuGet,报文传输支持时间戳!_第1张图片

PCAN-Basic.NET是一个全新的PCAN二次开发程序集,与原来的PCAN-Basic API相比有了很大的改动,接下来通过几个Q&A快速了解吧!

Q:什么是PCAN-Basic.NET?
A:PCAN-Basic.NET 是一个针对 .NET Standard 2.0 编译的 .NET 库。这是从托管的 Microsoft 编程环境访问本地库 PCAN-Basic 的新方法。使用 PCAN-Basic 头文件 (PCANBasic.cs/PCANBasic.vb/PCANBasicCLR.h) 已被弃用。

Q:我已经有一个使用 PCAN-Basic 头文件的项目。我必须重写所有内容吗?
A:不需要的!PCAN-Basic.NET 有一个Peak.Can.Basic.BackwardCompatibility命名空间。使用这个,代码保持不变。API 调用在内部重定向。

Q:☆与原来的头文件形式相比,PCAN-Basic.NET 有哪些优势?
A:

  • Api类,重新设计的 API 访问类(取代原PCANBasic类) ,使用起来更舒适。
    1.不再需要使用StringBuilder对象获取字符串参数。
    2.不再需要在调用GetValue / SetValue时传递缓冲区大小。
    3.新类型DataBytes管理任何 CAN 或 CAN FD 消息的数据字段。创建消息后不再需要初始化消息的数据字段;
    4.Api类使用函数重载。不是为 CAN 和 CAN-FD 使用两组函数;
    5.为定义为标准数据类型的 API 值创建了新数据类型。这使代码更具可读性和可理解性。
  • Worker类,全新编程思路。
    1.使用事件通知自动读取 CAN 消息。应用程序可以注册到MessageAvailable 事件以在接收到新的 CAN 消息时得到通知;
    2.使用广播表自动写入CAN报文,精度可达一毫秒。可以轻松完成诸如“保持活动”消息之类的操作。
    3.更详尽的过滤系统。消息过滤允许混合不同的过滤条件;
    4.处理几个接收队列。应用程序可以将队列及其消息用于专用/分离的任务。
    5.过滤是针对一个队列而不是针对对象来实现的,这样消息就可以在接收时间自动排序到不同的队列中。
  • 该程序集包含其他有用的类,如 PerformanceTimer ,可用于需要快速反应时间(最高1ms精度)的操作。
  • 代码变得可移植:由于使用了 .NET Standard 2.0,相同的代码可用于 .Net-Core、.NET Framework 等。
  • 代码变得多平台:由于 PCAN-Basic 和 .NET (C#) 可用于 Linux 和 Windows,因此使用 PCAN-Basic.NET 程序集编写的应用程序可以在两个系统上编译和运行。

Q:如何获得 PCAN-Basic.NET 程序集?
A:该程序集作为 NuGet 包 (.nupkg) 交付。该文件可以直接从NuGet.org安装 (在线安装)。另外,它也包含在PCAN-Basic API(本地安装)的下载包中。

虹科技术 | 重磅更新!PCAN-Basic加入NuGet,报文传输支持时间戳!_第2张图片

Q:如何在不更改旧 .NET 代码的情况下使用程序集?
A:对于这种情况,PCAN-Basic.NET程序集包含一个Peak.Can.Basic.BackwardCompatibility命名空间。只需按照以下步骤在使用 PCAN-Basic 头文件 (PCANBasic.cs/PCANBasic.vb/PCANBasicCLR.h) 编写的 .NET 项目中包含和使用程序集:
1.从项目中删除 PCAN-Basic 头文件。
2.安装PCANBasic.NET NuGet 包。
3.在您的代码“Peak.Can.Basic” 中查找 using 语句并将其更改为Peak.Can.Basic.BackwardCompatibility

Q:如何定期发送消息?(重点!!!)
A:使用类Worker可以配置最多 MaximumBroadcastCount广播消息。创建 Worker对象后,可以使用其方法“AddBroadcast”来配置自动发送消息。连接对象后,如果这个标准配置没有改变,广播会自动开始。

你可能感兴趣的:(汽车,网络)