当前位置: 首页 > wzjs >正文

有域名了也备案了怎么做网站阴阳师网站建设

有域名了也备案了怎么做网站,阴阳师网站建设,银行外包不是人干的,win7和wordpress在 C# 串口通信的一发一收场景里,处理不同功能码的帧数据可采用以下合理的代码结构,它能让代码更具可读性、可维护性和可扩展性。 实现思路 定义帧结构:创建一个类来表示通信帧,其中包含功能码、数据等信息。功能码处理逻辑&…

 

在 C# 串口通信的一发一收场景里,处理不同功能码的帧数据可采用以下合理的代码结构,它能让代码更具可读性、可维护性和可扩展性。

实现思路

  1. 定义帧结构:创建一个类来表示通信帧,其中包含功能码、数据等信息。
  2. 功能码处理逻辑:使用字典或者switch语句来根据不同的功能码执行相应的处理逻辑。
  3. 数据接收与解析:在串口接收事件中解析接收到的数据,并根据功能码调用对应的处理方法。
using System;
using System.Collections.Generic;
using System.IO.Ports;// 定义通信帧类
public class CommunicationFrame
{public byte FunctionCode { get; set; }public byte[] Data { get; set; }public CommunicationFrame(byte functionCode, byte[] data){FunctionCode = functionCode;Data = data;}
}// 定义串口通信类
public class SerialCommunication
{private SerialPort serialPort;private readonly Dictionary<byte, Action<CommunicationFrame>> frameHandlers = new Dictionary<byte, Action<CommunicationFrame>>();public SerialCommunication(string portName, int baudRate){serialPort = new SerialPort(portName, baudRate);serialPort.DataReceived += SerialPort_DataReceived;}// 注册功能码处理方法public void RegisterHandler(byte functionCode, Action<CommunicationFrame> handler){if (!frameHandlers.ContainsKey(functionCode)){frameHandlers.Add(functionCode, handler);}}// 打开串口public void Open(){if (!serialPort.IsOpen){serialPort.Open();}}// 关闭串口public void Close(){if (serialPort.IsOpen){serialPort.Close();}}// 发送数据public void Send(CommunicationFrame frame){if (serialPort.IsOpen){byte[] dataToSend = new byte[1 + frame.Data.Length];dataToSend[0] = frame.FunctionCode;Array.Copy(frame.Data, 0, dataToSend, 1, frame.Data.Length);serialPort.Write(dataToSend, 0, dataToSend.Length);}}// 数据接收处理private void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e){try{if (serialPort.BytesToRead > 0){byte functionCode = (byte)serialPort.ReadByte();int dataLength = serialPort.BytesToRead;byte[] data = new byte[dataLength];serialPort.Read(data, 0, dataLength);CommunicationFrame frame = new CommunicationFrame(functionCode, data);if (frameHandlers.TryGetValue(functionCode, out var handler)){handler(frame);}}}catch (Exception ex){Console.WriteLine($"Error receiving data: {ex.Message}");}}
}class Program
{static void Main(){SerialCommunication serialComm = new SerialCommunication("COM1", 9600);// 注册功能码处理方法serialComm.RegisterHandler(1, HandleFunctionCode1);serialComm.RegisterHandler(2, HandleFunctionCode2);serialComm.Open();// 发送示例数据byte[] data = { 0x01, 0x02, 0x03 };CommunicationFrame frameToSend = new CommunicationFrame(1, data);serialComm.Send(frameToSend);Console.WriteLine("Press any key to exit...");Console.ReadKey();serialComm.Close();}// 处理功能码 1 的方法static void HandleFunctionCode1(CommunicationFrame frame){Console.WriteLine($"Received frame with function code 1. Data length: {frame.Data.Length}");}// 处理功能码 2 的方法static void HandleFunctionCode2(CommunicationFrame frame){Console.WriteLine($"Received frame with function code 2. Data length: {frame.Data.Length}");}
}


文章转载自:

http://fHeqpb7h.nbrdx.cn
http://TQ6xg9Au.nbrdx.cn
http://5KEumzFg.nbrdx.cn
http://yJm59pBf.nbrdx.cn
http://RiphrY1d.nbrdx.cn
http://q5kOd6kP.nbrdx.cn
http://LR6my0qZ.nbrdx.cn
http://KQ5L83GU.nbrdx.cn
http://A3B0z6J0.nbrdx.cn
http://LSsUiOLR.nbrdx.cn
http://QCjrwgfO.nbrdx.cn
http://vD7cRhJw.nbrdx.cn
http://hnEKb6ho.nbrdx.cn
http://epmXlKBs.nbrdx.cn
http://qPQSq7hy.nbrdx.cn
http://YPtmHAFW.nbrdx.cn
http://h0wCGCsg.nbrdx.cn
http://RooliTOq.nbrdx.cn
http://fLQd4cNW.nbrdx.cn
http://8GWSzL6N.nbrdx.cn
http://60xT73Qz.nbrdx.cn
http://DSWjfjMT.nbrdx.cn
http://WOXS9hZE.nbrdx.cn
http://igJCBRuW.nbrdx.cn
http://S68khPWf.nbrdx.cn
http://oKPC27GF.nbrdx.cn
http://RaOJlyJT.nbrdx.cn
http://QaQ0MNhU.nbrdx.cn
http://OVqRaEC0.nbrdx.cn
http://WpPDNMLD.nbrdx.cn
http://www.dtcms.com/wzjs/654654.html

相关文章:

  • wap网站设计规范福建省建设厅网站官网
  • 服装型网站开发怎么做卖东西的网站
  • 网站建设策划实训总结国外设计网站大全
  • 如何设计网站建设方案广告设计公司招聘
  • 建设网站如何优化关键词商丘市网站建设公司
  • 做试用的网站有域名如何做免费网站
  • 微信知彼网络网站建设中铁建设集团招聘信息
  • 上海电子商务网站制作小榄网站设计
  • 湖州网站建设官网wordpress插件用户权限
  • 茶叶网站建设方案ai时代模版价格
  • 汕头网站建设浩森宇特个人免费发布招聘信息
  • 怎么用VS2012建设网站四川建设网招标网
  • 有自建服务器做网站的吗科普重庆网站
  • 如何做网站淘宝客网站建设推广接单语
  • 做淘宝还是做网站容易自己做网站什么网站比较好
  • 电商网站开发文献综述阿里云企业网站建设
  • 光泽网站建设wzjseo平面设计找素材的网站
  • wordpress怎么把分类弄在左边已收录的网站不好优化
  • 网站到期怎么续费盗版小说网站怎么做
  • 简单的j网站建设方案书付款网站源码
  • wordpress的ftp设置北京seo诊断
  • 个人备案的网站涉及到资金爱网站免费一站二站
  • 网站服务器时间查询工具最新军事新闻新浪网
  • 万能站工具的企业网站系统无锡网站seo
  • 南昌网站设计公司哪家好网站建设维护有哪些内容
  • 有哪些好的网站项目网络服务商不提供哪项服务
  • 商业网站有什么作用建设网站如何优化关键词
  • 域名购买哪个网站最好电子商务网站开发书例子
  • 推广网站大全呼和浩特网站建设
  • 启东做网站龙岗区建设局网站