![]() |
USB2XXX 1.2
USB2XXX接口函数说明文档
|
USB转LIN接口函数和数据类型定义 更多...
结构体 | |
| struct | _LIN_EX_MSG |
| LIN帧数据类型定义 更多... | |
类型定义 | |
| typedef struct _LIN_EX_MSG | LIN_EX_MSG |
| LIN帧数据类型定义 | |
| typedef struct _LIN_EX_MSG * | PLIN_EX_MSG |
函数 | |
| int WINAPI | LIN_EX_Init (int DevHandle, unsigned char LINIndex, unsigned int BaudRate, unsigned char MasterMode) |
| LIN总线初始化,在使用LIN相关函数之前必须先调用该函数 更多... | |
| int WINAPI | LIN_EX_Init2 (int DevHandle, unsigned char LINIndex, unsigned int BaudRateBps, unsigned char MasterMode, int ByteSpaceUs, int ResponseSpaceUs, int TimeOutMs) |
| LIN总线初始化,在使用LIN相关函数之前必须先调用该函数 更多... | |
| int WINAPI | LIN_EX_MasterSync (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pInMsg, LIN_EX_MSG *pOutMsg, unsigned int MsgLen) |
| 主机模式下,阻塞模式收发LIN数据 更多... | |
| int WINAPI | LIN_EX_MasterBreak (int DevHandle, unsigned char LINIndex) |
| 主机模式发送同步间隔信号,一般用于唤醒总线上睡眠的从设备 更多... | |
| int WINAPI | LIN_EX_MasterWrite (int DevHandle, unsigned char LINIndex, unsigned char PID, unsigned char *pData, unsigned char DataLen, unsigned char CheckType) |
| 主机模式写数据 更多... | |
| int WINAPI | LIN_EX_MasterRead (int DevHandle, unsigned char LINIndex, unsigned char PID, unsigned char *pData) |
| 主机模式读数据 更多... | |
| int WINAPI | LIN_EX_GetMsg (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg, unsigned int BufSize) |
| 读取从机模式下接收到的帧或者主机模式下调度表发送的帧 更多... | |
| int WINAPI | LIN_EX_SlaveSetIDMode (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg, unsigned int MsgLen) |
| 设置从机ID模式为发送或者接收数据模式 更多... | |
| int WINAPI | LIN_EX_SlaveGetIDMode (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg) |
| 读取从机ID模式帧 更多... | |
| int WINAPI | LIN_EX_SlaveGetData (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg) |
| 读取从机模式下接收到的帧 更多... | |
| int WINAPI | LIN_EX_CtrlPowerOut (int DevHandle, unsigned char LINIndex, unsigned char VbatValue) |
| 控制VBAT引脚输出指定电压值 更多... | |
| int WINAPI | LIN_EX_GetVbatValue (int DevHandle, unsigned short *pBatValue) |
| 获取VBAT引脚电压,该函数已经弃用 更多... | |
| int WINAPI | LIN_EX_MasterStartSch (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg, unsigned int MsgLen) |
| 主机调度表模式收发数据,使用该模式收发数据可以精确控制帧间隔时间,函数调用也是非阻塞的 更多... | |
| int WINAPI | LIN_EX_MasterStopSch (int DevHandle, unsigned char LINIndex) |
| 停止执行调度表 更多... | |
| int WINAPI | LIN_EX_MasterGetSchState (int DevHandle, unsigned char LINIndex) |
| 获取调度表执行状态 更多... | |
| int WINAPI | LIN_EX_MasterGetSch (int DevHandle, unsigned char LINIndex, LIN_EX_MSG *pLINMsg) |
| 读取主机模式调度表 更多... | |
| int WINAPI | LIN_EX_MasterSetSchRunTimes (int DevHandle, unsigned char LINIndex, unsigned int RunTimes) |
| 设置调度表运行次数,必须在启动调度表之前调用,否则调度表会根据最后一帧的帧周期决定是发送一次还是循环发送 更多... | |
| int WINAPI | LIN_EX_SetBusState (int DevHandle, unsigned char LINIndex, unsigned char BusState) |
| 控制总线输出高电平或者是低电平,注意输出低电平后,无法正常输出LIN数据,需要重新控制输出高电平才能继续输出LIN数据 更多... | |
| int WINAPI | LIN_EX_DecodeListFile (char *pFileName, char CheckType, int BaudRate, char *pReadDataList, char ReadDataListLen, char *pCheckTypeList, char CheckTypeListLen) |
| 解析LIN列表文件 更多... | |
| int WINAPI | LIN_EX_GetListFileMsg (int MsgIndex, int MsgLen, LIN_EX_MSG *pLINMsg) |
| 获取解析后的列表数据 更多... | |
| long long WINAPI | LIN_EX_GetStartTime (int DevHandle, unsigned char LINIndex) |
| 获取LIN起始时间戳,该时间戳可以转换成实际的时间 更多... | |
| int WINAPI | LIN_EX_ResetStartTime (int DevHandle, unsigned char LINIndex) |
| 复位时间戳,复位后起始时间戳为当前时间 更多... | |
| int WINAPI | LIN_EX_SetStartTime (int DevHandle, unsigned char LINIndex, long long StartTimeMs) |
| 设置数据起始时间戳,主要用于将数据时间戳转换成实时时间用 更多... | |
| int WINAPI | LIN_EX_Stop (int DevHandle, unsigned char LINIndex) |
| 停止LIN总线,调用后将关闭LIN总线的任何操作,比如数据读写,从机响应等 更多... | |
主从宏定义 | |
LIN主从宏定义 | |
| #define | LIN_EX_MASTER 1 |
| 主机 | |
| #define | LIN_EX_SLAVE 0 |
| 从机 | |
VBAT引脚电压定义 | |
VBAT引脚输出电压值定义 | |
| #define | LIN_EX_VBAT_0V 0 |
| VBAT输出0V | |
| #define | LIN_EX_VBAT_12V 1 |
| VBAT输出12V | |
| #define | LIN_EX_VBAT_5V 2 |
| VBAT输出5V | |
USB转LIN接口函数和数据类型定义
| int WINAPI LIN_EX_Init | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned int | BaudRate, | ||
| unsigned char | MasterMode | ||
| ) |
LIN总线初始化,在使用LIN相关函数之前必须先调用该函数
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| BaudRate | LIN总线波特率值,单位为bps,最小值为2000,最大值为100000 |
| MasterMode | LIN工作模式,0-从机,1-主机 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_Init2 | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned int | BaudRateBps, | ||
| unsigned char | MasterMode, | ||
| int | ByteSpaceUs, | ||
| int | ResponseSpaceUs, | ||
| int | TimeOutMs | ||
| ) |
LIN总线初始化,在使用LIN相关函数之前必须先调用该函数
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| BaudRateBps | LIN总线波特率值,单位为bps,最小值为2000,最大值为100000 |
| MasterMode | LIN工作模式,0-从机,1-主机 |
| ByteSpaceUs | 主机发送数据时,字节间隔时间,单位为微秒 |
| ResponseSpaceUs | 帧头与数据之间的时间间隔,单位为微秒 |
| TimeOutMs | 主机读或者从机接收数据时,数据不满8字节时的超时时间,设置为0底层根据波特率自适应 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterSync | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pInMsg, | ||
| LIN_EX_MSG * | pOutMsg, | ||
| unsigned int | MsgLen | ||
| ) |
主机模式下,阻塞模式收发LIN数据
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [in] | pInMsg | 输入帧指针 |
| [out] | pOutMsg | 输出帧指针 |
| MsgLen | 输入帧数 |
| >0 | pOutMsg里面存储的有效帧数 |
| =0 | 数据收发失败 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterBreak | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
主机模式发送同步间隔信号,一般用于唤醒总线上睡眠的从设备
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| =0 | 函数执行成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterWrite | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned char | PID, | ||
| unsigned char * | pData, | ||
| unsigned char | DataLen, | ||
| unsigned char | CheckType | ||
| ) |
主机模式写数据
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| PID | 帧ID | |
| [in] | pData | 待发送数据缓冲区指针 |
| DataLen | 待发送数据有效数据字节数 | |
| CheckType | 发送数据校验类型,0-标准校验,校验数据不包含ID,1-增强校验,校验数据包含ID |
| =0 | 函数执行成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterRead | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned char | PID, | ||
| unsigned char * | pData | ||
| ) |
主机模式读数据
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| PID | 帧ID | |
| [out] | pData | 读取数据存储缓冲区指针 |
| >0 | 成功读取到从机返回数据字节数 |
| =0 | 没有读到从机返回的数据,有可能是因为从机没有响应数据 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_GetMsg | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg, | ||
| unsigned int | BufSize | ||
| ) |
读取从机模式下接收到的帧或者主机模式下调度表发送的帧
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [out] | pLINMsg | 存储数据帧缓冲区指针 |
| BufSize | 存储数据帧缓冲区大小 |
| >=0 | 成功读取到的帧数 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_SlaveSetIDMode | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg, | ||
| unsigned int | MsgLen | ||
| ) |
设置从机ID模式为发送或者接收数据模式
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [in] | pLINMsg | 帧指针,帧里面的MsgType来决定该ID是发送数据还是接收数据 |
| MsgLen | 有效帧数 |
| =0 | 函数执行成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_SlaveGetIDMode | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg | ||
| ) |
读取从机ID模式帧
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [out] | pLINMsg | 存储从机ID模式帧指针 |
| >=0 | 成功读取到的帧数 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_SlaveGetData | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg | ||
| ) |
读取从机模式下接收到的帧
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [out] | pLINMsg | 存储帧指针 |
| >=0 | 成功读取到的帧数 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_CtrlPowerOut | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned char | VbatValue | ||
| ) |
控制VBAT引脚输出指定电压值
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| VbatValue | VBAT输出电压值 LIN_EX_VBAT_0V 关闭VBAT引脚电压输出,关闭输出后,VBAT引脚需要外接电压LIN才能正常工作 LIN_EX_VBAT_12V VBAT引脚输出12V LIN_EX_VBAT_5V VBAT引脚输出5V |
| 0 | 控制电压成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_GetVbatValue | ( | int | DevHandle, |
| unsigned short * | pBatValue | ||
| ) |
获取VBAT引脚电压,该函数已经弃用
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| [out] | pBatValue | 引脚电压值输出指针 |
| 0 | 读取电压值成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterStartSch | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg, | ||
| unsigned int | MsgLen | ||
| ) |
主机调度表模式收发数据,使用该模式收发数据可以精确控制帧间隔时间,函数调用也是非阻塞的
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 | |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 | |
| [in] | pLINMsg | 调度表模式收发数据帧指针 |
| MsgLen | 有效帧数 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterStopSch | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
停止执行调度表
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterGetSchState | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
获取调度表执行状态
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| 0 | 调度表未执行 |
| 1 | 调度表正在执行 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterGetSch | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| LIN_EX_MSG * | pLINMsg | ||
| ) |
读取主机模式调度表
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| pLINMsg | 调度表存储指针 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_MasterSetSchRunTimes | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned int | RunTimes | ||
| ) |
设置调度表运行次数,必须在启动调度表之前调用,否则调度表会根据最后一帧的帧周期决定是发送一次还是循环发送
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| RunTimes | 调度表运行次数,若设置为0xFFFFFFFF则一直发送,直到调用停止运行函数 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_SetBusState | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| unsigned char | BusState | ||
| ) |
控制总线输出高电平或者是低电平,注意输出低电平后,无法正常输出LIN数据,需要重新控制输出高电平才能继续输出LIN数据
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| BusState | 总线状态,0-总线输出低电平,1-总线输出高电平 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_DecodeListFile | ( | char * | pFileName, |
| char | CheckType, | ||
| int | BaudRate, | ||
| char * | pReadDataList, | ||
| char | ReadDataListLen, | ||
| char * | pCheckTypeList, | ||
| char | CheckTypeListLen | ||
| ) |
解析LIN列表文件
| [in] | pFileName | LIN列表文件名称 |
| CheckType | 校验类型,0-标准校验,1-增强校验 | |
| BaudRate | 波特率值,单位为bps | |
| [in] | pReadDataList | 数据类型为主机读的ID列表指针 |
| ReadDataListLen | 数据类型为主机读的ID列表有效长度 | |
| [in] | pCheckTypeList | 校验类型列表指针 |
| CheckTypeListLen | 校验类型列表长度 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_GetListFileMsg | ( | int | MsgIndex, |
| int | MsgLen, | ||
| LIN_EX_MSG * | pLINMsg | ||
| ) |
获取解析后的列表数据
| MsgIndex | 帧索引 | |
| MsgLen | 帧长度 | |
| [out] | pLINMsg | 存储帧指针 |
| 0 | 函数调用成功 |
| <0 | 函数调用失败 |
| long long WINAPI LIN_EX_GetStartTime | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
获取LIN起始时间戳,该时间戳可以转换成实际的时间
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_ResetStartTime | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
复位时间戳,复位后起始时间戳为当前时间
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_SetStartTime | ( | int | DevHandle, |
| unsigned char | LINIndex, | ||
| long long | StartTimeMs | ||
| ) |
设置数据起始时间戳,主要用于将数据时间戳转换成实时时间用
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| StartTimeMs | 开始记录数据的起始时间戳,该时间戳为实时时间戳 |
| <0 | 函数调用失败 |
| int WINAPI LIN_EX_Stop | ( | int | DevHandle, |
| unsigned char | LINIndex | ||
| ) |
停止LIN总线,调用后将关闭LIN总线的任何操作,比如数据读写,从机响应等
| DevHandle | 设备号,通过调用 USB_ScanDevice 获取 |
| LINIndex | LIN通道号,0-LIN1,1-LIN2,2-LIN3,3-LIN4 |
| <0 | 函数调用失败 |