![]() |
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 | 函数调用失败 |