mirror of
https://github.com/jie65535/Helpers.git
synced 2025-07-31 18:39:57 +08:00
Update CAN Helper
增加波特率设置,在初始化时需要传入CAN波特率
This commit is contained in:
parent
fca1955f1a
commit
866e33aff2
@ -86,10 +86,11 @@ namespace USBCAN
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 打开与关闭
|
#region 打开与关闭
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 初始化并打开CAN设备
|
/// 初始化并打开CAN设备
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Initialize()
|
public void Initialize(CAN_API.CAN_BaudRate baudRate)
|
||||||
{
|
{
|
||||||
// 如果已经打开,直接返回
|
// 如果已经打开,直接返回
|
||||||
if (IsOpen)
|
if (IsOpen)
|
||||||
@ -106,8 +107,8 @@ namespace USBCAN
|
|||||||
AccMask = 0xFFFFFFFF, // ( AccMask:0xFFFFFFFF)
|
AccMask = 0xFFFFFFFF, // ( AccMask:0xFFFFFFFF)
|
||||||
Reserved = 0x00, // 保留,填0
|
Reserved = 0x00, // 保留,填0
|
||||||
Filter = 0x01, // 滤波方式 01
|
Filter = 0x01, // 滤波方式 01
|
||||||
Timing0 = 0x01, // ( 相当于波特率1000kbps )
|
Timing0 = CAN_API.VCI_INIT_CONFIG_Timing0[(int)baudRate], // ( 波特率查表 )
|
||||||
Timing1 = 0x14, // ( 相当于波特率1000kbps )
|
Timing1 = CAN_API.VCI_INIT_CONFIG_Timing1[(int)baudRate], // ( 波特率查表 )
|
||||||
Mode = 0x00 // 正常模式; 0:正常模式,可以IO。 1:表示只听模式(只接收,不影响总线)
|
Mode = 0x00 // 正常模式; 0:正常模式,可以IO。 1:表示只听模式(只接收,不影响总线)
|
||||||
};
|
};
|
||||||
// 初始化CAN
|
// 初始化CAN
|
||||||
@ -203,6 +204,10 @@ namespace USBCAN
|
|||||||
// 若未检测到错误信息,则返回‘未知错误’
|
// 若未检测到错误信息,则返回‘未知错误’
|
||||||
return "未知错误";
|
return "未知错误";
|
||||||
}
|
}
|
||||||
|
else if (errMsgList.Count == 1)
|
||||||
|
{
|
||||||
|
return errMsgList[0];
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// 否则将错误信息以'|'拼接返回
|
// 否则将错误信息以'|'拼接返回
|
||||||
|
@ -170,7 +170,51 @@ namespace USBCAN
|
|||||||
|
|
||||||
public byte ArLost_ErrData;
|
public byte ArLost_ErrData;
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// CAN波特率枚举
|
||||||
|
/// </summary>
|
||||||
|
public enum CAN_BaudRate
|
||||||
|
{
|
||||||
|
BaudRate_1000kbps = 0,
|
||||||
|
BaudRate_800kbps,
|
||||||
|
BaudRate_500kbps,
|
||||||
|
BaudRate_250kbps,
|
||||||
|
BaudRate_100kbps,
|
||||||
|
BaudRate_50kbps,
|
||||||
|
BaudRate_20kbps,
|
||||||
|
BaudRate_10kbps,
|
||||||
|
BaudRate_5kbps,
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 波特率对应Timing0值
|
||||||
|
/// </summary>
|
||||||
|
public static readonly byte[] VCI_INIT_CONFIG_Timing0 =
|
||||||
|
{
|
||||||
|
0x00,
|
||||||
|
0x00,
|
||||||
|
0x00,
|
||||||
|
0x01,
|
||||||
|
0x04,
|
||||||
|
0x09,
|
||||||
|
0x18,
|
||||||
|
0x31,
|
||||||
|
0xBF
|
||||||
|
};
|
||||||
|
/// <summary>
|
||||||
|
/// 波特率对应Timing0值
|
||||||
|
/// </summary>
|
||||||
|
public static readonly byte[] VCI_INIT_CONFIG_Timing1 =
|
||||||
|
{
|
||||||
|
0x14,
|
||||||
|
0x16,
|
||||||
|
0x1C,
|
||||||
|
0x1C,
|
||||||
|
0x1C,
|
||||||
|
0x1C,
|
||||||
|
0x1C,
|
||||||
|
0x1C,
|
||||||
|
0xFF
|
||||||
|
};
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 初始化CAN的配置信息
|
/// 初始化CAN的配置信息
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -212,6 +256,7 @@ namespace USBCAN
|
|||||||
/// 800kbps :0x16
|
/// 800kbps :0x16
|
||||||
/// 500kbps :0x1C
|
/// 500kbps :0x1C
|
||||||
/// 250kbps :0x1C
|
/// 250kbps :0x1C
|
||||||
|
/// 100kbps :0x1C
|
||||||
/// 50kbps :0x1C
|
/// 50kbps :0x1C
|
||||||
/// 20kbps :0x1C
|
/// 20kbps :0x1C
|
||||||
/// 10kbps :0x1C
|
/// 10kbps :0x1C
|
||||||
|
Loading…
Reference in New Issue
Block a user