其他程序的CAN CANFD LIN的移植
This commit is contained in:
@@ -38,6 +38,11 @@ namespace CapMachine.Model.CANLIN
|
||||
[Column(Name = "DbcPath", IsNullable = false, StringLength = 500)]
|
||||
public string? DbcPath { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 调度表是否启用
|
||||
/// </summary>
|
||||
[Column(Name = "SchEnable")]
|
||||
public bool SchEnable { get; set; }
|
||||
|
||||
|
||||
///// <summary>
|
||||
|
||||
53
CapMachine.Model/CANLIN/CANFdConfigExd.cs
Normal file
53
CapMachine.Model/CANLIN/CANFdConfigExd.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using FreeSql.DataAnnotations;
|
||||
|
||||
namespace CapMachine.Model.CANLIN
|
||||
{
|
||||
/// <summary>
|
||||
/// CAN和LIN的配置信息数据
|
||||
/// </summary>
|
||||
[Table(Name = "CANFdConfigExd")]
|
||||
public class CANFdConfigExd
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
[Column(IsPrimary = true, IsIdentity = true)]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据波特率
|
||||
/// </summary>
|
||||
[Column(Name = "DataBaudRate")]
|
||||
public int DataBaudRate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仲裁波特率
|
||||
/// </summary>
|
||||
[Column(Name = "ArbBaudRate")]
|
||||
public int ArbBaudRate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CAN FD标准 ISO是否启用
|
||||
/// </summary>
|
||||
[Column(Name = "ISOEnable")]
|
||||
public bool ISOEnable { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 终端电阻 是否启用
|
||||
/// </summary>
|
||||
[Column(Name = "ResEnable")]
|
||||
public bool ResEnable { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 周期
|
||||
/// </summary>
|
||||
[Column(Name = "Cycle")]
|
||||
public int Cycle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Dbc文件路径
|
||||
/// </summary>
|
||||
[Column(Name = "DbcPath", IsNullable = false, StringLength = 500)]
|
||||
public string? DbcPath { get; set; }
|
||||
}
|
||||
}
|
||||
55
CapMachine.Model/CANLIN/CANScheduleConfig.cs
Normal file
55
CapMachine.Model/CANLIN/CANScheduleConfig.cs
Normal file
@@ -0,0 +1,55 @@
|
||||
using FreeSql.DataAnnotations;
|
||||
|
||||
namespace CapMachine.Model.CANLIN
|
||||
{
|
||||
/// <summary>
|
||||
/// 调度表的配置
|
||||
/// 其实这些调度表是在DBC中有的,但是图莫斯的驱动没有读取到这些信息
|
||||
/// 那么我们在系统层面进行操作和保存这些信息
|
||||
/// </summary>
|
||||
[Table(Name = "CANScheduleConfig")]
|
||||
public class CANScheduleConfig
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
[Column(IsPrimary = true, IsIdentity = true)]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息名称
|
||||
/// </summary>
|
||||
[Column(Name = "MsgName")]
|
||||
public string? MsgName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息的周期
|
||||
/// </summary>
|
||||
[Column(Name = "Cycle")]
|
||||
public int Cycle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发送方式
|
||||
/// </summary>
|
||||
[Column(Name = "OrderSend")]
|
||||
public int OrderSend { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 调度表的Index
|
||||
/// //约定每帧对应一个调度表,预设5个调度表,每个调度表对应一个帧
|
||||
/// 0-4这个范围的设置Index
|
||||
/// </summary>
|
||||
[Column(Name = "SchTabIndex")]
|
||||
public int SchTabIndex { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
|
||||
public long CanLinConfigProId { get; set; }
|
||||
public CanLinConfigPro? CanLinConfigPro { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -44,6 +44,25 @@ namespace CapMachine.Model.CANLIN
|
||||
|
||||
public List<CanLinRWConfig>? CanLinConfigContents { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
///CAN 的调度表配置模式
|
||||
public List<CANScheduleConfig>? CanScheduleConfigs { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
///LIN 的调度表配置模式
|
||||
public List<LINScheduleConfig>? LinScheduleConfigs { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性 LIN 一对一///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
public long CANFdConfigExdId { get; set; } // 外键字段,必要
|
||||
public CANFdConfigExd CANFdConfigExd { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性 CAN 一对一///////////////////////////////////////////////////////
|
||||
@@ -52,12 +71,12 @@ namespace CapMachine.Model.CANLIN
|
||||
public CANConfigExd CANConfigExd { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性 LIN 一对一///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
public long LINConfigExdId { get; set; } // 外键字段,必要
|
||||
public LINConfigExd LINConfigExd { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,10 +15,16 @@ namespace CapMachine.Model.CANLIN
|
||||
/// CAN
|
||||
/// </summary>
|
||||
CAN = 1,
|
||||
|
||||
/// <summary>
|
||||
/// LIN
|
||||
/// </summary>
|
||||
LIN = 2,
|
||||
|
||||
/// <summary>
|
||||
/// CANFD
|
||||
/// </summary>
|
||||
CANFD = 3,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -61,5 +61,13 @@ namespace CapMachine.Model.CANLIN
|
||||
|
||||
public long CanLinConfigProId { get; set; }
|
||||
public CanLinConfigPro? CanLinConfigPro { get; set; }
|
||||
|
||||
|
||||
public long LogicRuleId { get; set; }
|
||||
/// <summary>
|
||||
/// CanLinConfig的逻辑转换规则
|
||||
/// 比如:速度下发的数据SV是4000,但是下发到CAN的值是40,可能是其他的逻辑转换规则,这里就是保存其中的逻辑规则
|
||||
/// </summary>
|
||||
public LogicRule? LogicRule { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
53
CapMachine.Model/CANLIN/LINScheduleConfig.cs
Normal file
53
CapMachine.Model/CANLIN/LINScheduleConfig.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using FreeSql.DataAnnotations;
|
||||
|
||||
namespace CapMachine.Model.CANLIN
|
||||
{
|
||||
/// <summary>
|
||||
/// 调度表的配置
|
||||
/// 其实这些调度表是在DBC中有的,但是图莫斯的驱动没有读取到这些信息
|
||||
/// 那么我们在系统层面进行操作和保存这些信息
|
||||
/// </summary>
|
||||
[Table(Name = "LINScheduleConfig")]
|
||||
public class LINScheduleConfig
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
[Column(IsPrimary = true, IsIdentity = true)]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息名称
|
||||
/// </summary>
|
||||
[Column(Name = "MsgName")]
|
||||
public string? MsgName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息的周期
|
||||
/// </summary>
|
||||
[Column(Name = "Cycle")]
|
||||
public int Cycle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 调度表的Index
|
||||
/// LDF中可能有多个调度器
|
||||
/// </summary>
|
||||
[Column(Name = "SchTabIndex")]
|
||||
public int SchTabIndex { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 调度表的名称
|
||||
/// LDF中可能有多个调度器名称
|
||||
/// </summary>
|
||||
[Column(Name = "SchTabName")]
|
||||
public int SchTabName { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ///////////////////////////////////////////导航属性///////////////////////////////////////////////////////
|
||||
/// </summary>
|
||||
|
||||
public long CanLinConfigProId { get; set; }
|
||||
public CanLinConfigPro? CanLinConfigPro { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user