首页 > 其他分享 >Delphi CnPack CnRs232 以16进制 串口发送消息 WriteCommData

Delphi CnPack CnRs232 以16进制 串口发送消息 WriteCommData

时间:2024-07-25 20:44:50浏览次数:5  
标签:进制 16 Delphi 串口 字符串 WriteCommData DataArray

使用Delphi组件CnPack里面的CnRs232,以十六进制对串口发送消息 WriteCommData

找了好久,尝试了N个方法,不想安装MSComm,SPComm在新版Delphi有点怪怪的,还是用cnRs232

直接上代码:

procedure TForm1.Button1Click(Sender: TObject);
var  

  DataArray:array of byte; 

  Wlen:integer;

begin

Setlength(DataArray,8);  //如果包是4位的,可以改为 Setlength(DataArray,4); 

  DataArray[0]:=160;   // 16进制字符串 A0  

  DataArray[1]:=0;   // 16进制字符串 00

  DataArray[2]:=1;   // 16进制字符串01

  DataArray[3]:=4;   // 16进制字符串11

//如果只有只有4位,下面DataArry的4567就不用了

  DataArray[4]:=170;   // 16进制字符串 B0

  DataArray[5]:=2;  // 16进制字符串10

  DataArray[6]:=3;  // 16进制字符串10

  DataArray[7]:=161;  // 16进制字符串A1

  Wlen:=High(DataArray)+1; 

  cnRs232.WriteCommData(@DataArray[0], Wlen);

end;

标签:进制,16,Delphi,串口,字符串,WriteCommData,DataArray
From: https://www.cnblogs.com/K-R-/p/18324073

相关文章

  • Delphi Variant 判断是否为空
    VarIsEmpty和VarIsNull在Delphi中都是用于判断Variant类型变量的函数,但它们之间有着明显的区别:VarIsEmptyVarIsEmpty函数用于判断一个Variant变量是否未被初始化或显式地被设置为空状态。当一个Variant变量被声明后尚未被赋予任何值,或者通过某种方式被设置为表示空......
  • 题解:AT_arc116_e [ARC116E] Spread of Information
    题目链接思路看到最大值最小首先可以想到二分,发现答案具有单调性,那么思考如何在\(O(n)\)的时间内判断是否合法。考虑贪心,在最远没覆盖的点的距离和要判断的\(mid\)刚好相等的时侯再选择一定不劣,因为这样覆盖的点最多,那么从叶子节点向上回溯,处理它的所有儿子,判断是否选择该......
  • AT_arc116_e [ARC116E] Spread of Information 题解
    题目传送门前置知识二分答案|树形DP解法答案显然具有单调性,考虑二分答案。设当前二分出的答案为\(mid\),则等价于覆盖距离为\(mid\)的情况下进行选点。做法同luoguP3942将军令,考虑进行贪心,对于深度最深的叶节点将选择的点放在边界时,即取\(mid\)级祖先时,覆盖的范......
  • Vivotek CC8160 栈溢出漏洞复现
    漏洞文件https://github.com/Vu1nT0tal/IoT-vulhub/tree/master/VIVOTEK/remote_stack_overflow另需文件arml内核,文件系统,arm-gdbserver,initrd。https://people.debian.org/~aurel32/qemu/armel/启动qemu-systemqemu-system-arm-Mversatilepb-kernelvmlinuz-3.2.0-4-v......
  • P3294 [SCOI2016] 背单词 题解
    题意给你\(n\)个字符串,让你对其进行排列,使得按以下规则花费最少:设当前字符串为\(s\),\(x\)为\(s\)在答案排列中的位置。如果\(s\)存在后缀且\(s\)的后缀在\(s\)之后,花费加\(n^2\)。如果\(s\)不存在后缀则花费加\(x\)。设\(y\)为\(s\)之前离其最近的......
  • 代码随想录算法训练营第 22 天 |LeetCode77. 组合 LeetCode 216.组合总和III LeetCode
    代码随想录算法训练营Day22代码随想录算法训练营第22天|LeetCode77.组合LeetCode216.组合总和IIILeetCode17.电话号码的字母组合目录代码随想录算法训练营前言LeetCode77.组合LeetCode216.组合总和IIILeetCode17.电话号码的字母组合一、基础1、回溯可以解......
  • 洛谷 P1161 开灯
    目录题目-开灯题目描述输入格式输出格式样例#1样例输入#1样例输出#1提示ACCODE思路ACCODEC++说明使用Map做数据标记,会出现TEL向下取整<math.h>中常用的函数题目-开灯题目描述在一条无限长的路上,有一排无限长的路灯,编号为1,2,3,4,······。每一盏灯......
  • C++自学笔记16(字符串与字符串字面量)
    当我们想在电脑上以文本方式表示东西时,一个单词、一个句子、一大段文章都叫做字符串。字符串就是为了我们去处理文字文本的方法。字符串实际上就是字符组成的数组或指针(数组就是指针的一种)。(有人会问数组不是储存数字么?怎么储存字符?因为ASCLL码表将所有字母、数字、符号翻译......
  • 16-while循环嵌套应用
    ##六.while循环嵌套应用---###6.1应用一:打印星号(正方形)---6.1.1需求```python*************************```6.1.2代码```pythonj=0whilej<5:  i=0  whilei<5:    print('*',end='')    i+=1  print('\n')......
  • CF1684G Euclid Guess
    很需要直觉的一个题,想到关键就很简单了首先注意到允许输出的数对数量很多,完全不用考虑\(2\times10^4\)的限制,那么直觉就是让每个pair产生尽可能少的数首先考虑怎么能只产生一个数,不妨设这个数为\(x\),则最小的pair只能取\((3x,2x)\),因此\(\le\frac{m}{3}\)的数都是能......