PLIN二次开发教程
- 虹科智能互联
- 2月 5, 2024
- 11:33 上午
- 二次开发
本站所有技术文档均为虹科技术工程师所编写和更新,如果您发现任何错误,欢迎扫码下方二维码联系我们进行更正,万分感谢。
如果您需要定制的项目服务或教程培训,请联系虹科获取报价
链接:https://peak-system.com.cn/driver/
(全选)
任何通信相关问题建议在PLIN-View Pro测试无误后再移至PLIN-API进行开发
任何程序相关的不确定性可以通过官方例程进行验证:
所有的API开发包中均包含例程讲解,不同开发包包含的例程不同(C#、Python、Java、C/C++等,实际以开发包内容为准)
特别说明:PLIN-API的Labview例程需要额外收费,包含PLIN-API中所有函数接口,请联系虹科获取!
请结合API开发包中的API帮助文档
1) PLIN在建立连接时需要连接Client和Hardware
2) LIN_RegisterClient和LIN_ConnectClient分别用于创建客户端和连接客户端。需要注意的是LIN_RegisterClient函数的输入参数hWnd:“The hWnd parameter can be zero for DOS Box Clients。”hWnd在DOSBox的客户端时,可以输入0。详情请参考API帮助文档中LIN_RegisterClient;
3) LIN_InitializeHardware 函数用于连接 hardware,设置波特率和硬件的主从模式;HLINHW由LIN_GetAvailableHardware获得
1) 对应API中函数LIN_SetFrameEntry
2) 其中参数TLINFrameEntry为报文帧定义
3) FrameID为FID(不包含校验)
4) Direction为发送方向,即发送还是接收
5) ChecksumType规定校验类型为Classic(一般LIN 1.x)还是Enhanced(一般LIN 2.x)
6) Flags一般设置为1。如果设置为3=1+2,表示同时设置FRAME_FLAG_RESPONSE_ENABLE 和 FRAME_FLAG_SINGLE_SHOT 的 Flags。详情请参考API帮助文档中TLINFrameEntry-Fields。
LIN_SetSchedule 用于设置调度表,然后使用LIN_StartSchedule 运行它。调度表总共可以设置 8 个(编号 0 至 7),关于参数TLINScheduleSlot可以查看API帮助文档中TLINScheduleSlot-Fields的详细说明,下表:
对应API中函数LIN_Read,LINReadMulti,后者可以一次性去读指令数量的报文帧。其中,TLINRcvMsg的FrameID为PID,详情请参考API帮助文档中TLINRcvMsg;
发送报文会因主/从节点、调度表单帧发送而不同,具体API中函数对应情况如下:
1) 主节点-调度表、从节点-被主节点请求:LIN_UpdateByteArray
2) 主节点-无调度表:LIN_Write
3) 主节点-调度表,插入单帧:暂停调度表后调用LIN_Write,再恢复调度表
其中,TLINMsg中FrameId为PID,详情请参考API帮助文档中TLINMsg。
对应API中函数LIN_Disconnect
开发包中暂无现成LDF数据库加载接口
更多汽车干货
更多工业干货
加入交流群