This commit is contained in:
Dai Mr 2024-10-22 14:02:11 +08:00
parent 1a7be7a6af
commit 4aed0ba92e
2 changed files with 13 additions and 12 deletions

View File

@ -10,7 +10,8 @@ namespace JiShe.CollectBus.Protocol.Contracts.Models
{
public AFN AFN { get; set; }
public CMasterStationFunCode CMasterStationFunCode { get; set; }
//功能码
public int FunCode { get; set; }
public PRM PRM { get; set; } = PRM.;

View File

@ -274,7 +274,7 @@ namespace JiShe.CollectBus.Protocol
var reqParam = new ReqParameter2()
{
AFN = AFN.,
CMasterStationFunCode = CMasterStationFunCode.,
FunCode = (int)CFromStationFunCode.,
PRM = PRM.,
A = commandReulst.A,
Seq = new Seq()
@ -313,7 +313,7 @@ namespace JiShe.CollectBus.Protocol
var reqParam = new ReqParameter2()
{
AFN = AFN.,
CMasterStationFunCode = CMasterStationFunCode.,
FunCode = (int)CFromStationFunCode.,
PRM = PRM.,
A = commandReulst.A,
Seq = new Seq()
@ -465,7 +465,7 @@ namespace JiShe.CollectBus.Protocol
var bytes = GetCommandBytes(new ReqParameter2()
{
AFN = AFN.,
CMasterStationFunCode = CMasterStationFunCode.1,
FunCode = (int)CMasterStationFunCode.1,
A = a,
Seq = new Seq()
{
@ -503,7 +503,7 @@ namespace JiShe.CollectBus.Protocol
var bytes = GetCommandBytes(new ReqParameter2()
{
AFN = AFN.,
CMasterStationFunCode = CMasterStationFunCode.2,
FunCode = (int)CMasterStationFunCode.2,
A = a,
Seq = new Seq()
{
@ -524,7 +524,7 @@ namespace JiShe.CollectBus.Protocol
var bytes = GetCommandBytes(new ReqParameter2()
{
AFN = AFN.,
CMasterStationFunCode = CMasterStationFunCode.2,
FunCode = (int)CMasterStationFunCode.2,
A = a,
Seq = new Seq()
{
@ -614,7 +614,7 @@ namespace JiShe.CollectBus.Protocol
cmdStrList.AddRange(userDatas);
cmdStrList.Add(cs);
cmdStrList.Add(end);
Console.WriteLine(string.Join(" ", cmdStrList));
Console.WriteLine($"回复:{string.Join(" ", cmdStrList)}");
var bytes = cmdStrList.Select(x => Convert.ToByte(x, 16)).ToArray();
return bytes;
}
@ -643,7 +643,7 @@ namespace JiShe.CollectBus.Protocol
/// <returns></returns>
public List<string> GetUserData(ReqParameter reqParameter, List<string>? dataUnit)
{
var c = GetC(reqParameter.CMasterStationFunCode, reqParameter.PRM);
var c = GetC(reqParameter.FunCode, reqParameter.PRM);
var a = GetAList(reqParameter.A, reqParameter.MSA);
var linkUserData = GetLinkUserData(reqParameter.AFN, reqParameter.Seq,
@ -676,13 +676,13 @@ namespace JiShe.CollectBus.Protocol
/// <summary>
/// 控制域
/// </summary>
/// <param name="cMasterStationFunCode"></param>
/// <param name="funCode">功能码</param>
/// <param name="fcb"></param>
/// <param name="fcv"></param>
/// <returns></returns>
private string GetC(CMasterStationFunCode cMasterStationFunCode, PRM pRM, int fcb = 0, FCV fcv = FCV.FCB位无效)
private string GetC(int funCode, PRM pRM, int fcb = 0, FCV fcv = FCV.FCB位无效)
{
var cMasterStationFunCodeHex = DataConvert.DecToBin((int)cMasterStationFunCode);
var cMasterStationFunCodeHex = DataConvert.DecToBin(funCode);
cMasterStationFunCodeHex = cMasterStationFunCodeHex.ToString().PadLeft(4, '0');
var strC = $"{(int)DIR.主站下行报文}{(int)pRM}{fcb}{(int)fcv}{cMasterStationFunCodeHex}";
var hexC = DataConvert.BinToHex(strC).PadLeft(2, '0');
@ -713,7 +713,7 @@ namespace JiShe.CollectBus.Protocol
//TODO:主站地址和组地址标志
var a3Bin = $"{DataConvert.DecToBin(mSA).PadLeft(7, '0')}0";
list.Add(DataConvert.BinToHex(a3Bin));
list.Add(DataConvert.BinToHex(a3Bin).PadLeft(2,'0'));
return list;
}