• C# 控制科兴16路继电器


        ///


        /// 操作继电器
        ///

        /// 表示打开还是关闭
        /// 操作第几路继电器(从1到16)
        private void OperationRelay(bool isOpenOrClose ,int Ch)
        {
            byte[] sBytes = new byte[] { 0xCC, 0xDD, 0xA1, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x9E, 0x3C };
            if (Ch <= 8)
            {
                sBytes[4] = 0;
                sBytes[6] = 0;
                sBytes[5] = (byte)(0x01 << (Ch - 1));
                sBytes[7] = (byte)(0x01 << (Ch - 1));
            }
            else
            {
                sBytes[4] = (byte)(0x01 << (Ch - 9));
                sBytes[6] = (byte)(0x01 << (Ch - 9));
                sBytes[5] = 0;
                sBytes[7] = 0;
            }
            if (isOpenOrClose==false)
            {
                sBytes[4] = 0;
                sBytes[5] = 0;
            }
            sBytes[8] = SumCheck(sBytes, 2, 6);
            sBytes[9] = SumCheck(sBytes, 2, 7);
            string str = BitConverter.ToString(sBytes).Replace("-", " ");

            SendUdpMessage(sBytes);
            Debug.Log(str);
        }

        public void BtnOpenAllClick()
        {
            byte[] sBytes = new byte[] { 0xCC, 0xDD, 0xA1, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x9E, 0x3C };
            SendUdpMessage(sBytes);
        }

        public void BtnCloseAllClick()
        {
            byte[] sBytes = new byte[] { 0xCC, 0xDD, 0xA1, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0xA0, 0x40 };
            SendUdpMessage(sBytes);
        }

    补充和校验的方法

    1. ///
    2. /// 和校验
    3. ///
    4. ///
    5. ///
    6. ///
    7. ///
    8. private byte SumCheck(byte[] cBytes, int startIndex, int cLenth)
    9. {
    10. byte check = 0;
    11. if (cBytes.Length > 1)
    12. {
    13. for (int i = startIndex; i < startIndex + cLenth; i++)
    14. {
    15. check = (byte)((cBytes[i] + check) & 0xFF);
    16. }
    17. }
    18. return check;
    19. }

  • 相关阅读:
    python生成PDF报告
    EasyX图形库实现贪吃蛇游戏
    开啥玩笑?一个SSD硬盘可以使用100多年?MTBF正解
    【无标题】
    【面试必刷101】链表
    js从文件流获取minetype
    IDEA工具第一篇:细节使用-习惯设置
    Nacos单机配置集群配置
    面试Java高级工程师之应用框架总结
    u盘分区了怎么合并?u盘分区了怎么恢复教程
  • 原文地址:https://blog.csdn.net/qq_34090937/article/details/128186311