我现在要使用serialPort控件通过串口发送16进制数0xF1,serialPort空间的serialPort.Write方法有3个重载,分别是: SerialPort.Write (String) 将参数字符串写入输出。
SerialPort.Write (Byte[], Int32, Int32) 将指定数量的字节写入输出缓冲区中的指定偏移量处。
SerialPort.Write (Char[], Int32, Int32) 将指定数量的字符写入输出缓冲区中的指定偏移量处。 我应该使用哪一个发送?如果使用数据转换,如何转换?
请大家指点,我是新手请写详细点。谢谢。
SerialPort.Write (Byte[], Int32, Int32) 将指定数量的字节写入输出缓冲区中的指定偏移量处。
SerialPort.Write (Char[], Int32, Int32) 将指定数量的字符写入输出缓冲区中的指定偏移量处。 我应该使用哪一个发送?如果使用数据转换,如何转换?
请大家指点,我是新手请写详细点。谢谢。
解决方案 »
- c# 启动其他exe可执行文件的问题
- C#如何在word里写入上下标
- 如何实现listbox字符串截取字符串放入datagridview
- 如何获取HttpWebRequest中的Header信息?
- 如何把label里有html格式的文字导出到一个word文档里,word里的文字要有label里的html格式?急~~很着急!!答对者50分
- Developer Express Inc.NET.v3的路径配置
- 如何检测局域网中所有的SQL Server服务器,并显示所有服务器地址?
- DataGrid列标题栏的问题
- asp.net (c#) 显示问题
- 关于combobox
- 正则表达式取<select></select>
- [winform]DataGridView如何一边加载数据一边显示进度条?
byte=0xf1;
port1.Write(byte,0,1);
==============
你是说用下面这个方法咯?
SerialPort.Write (Byte[], Int32, Int32) 将指定数量的字节写入输出缓冲区中的指定偏移量处。
这个方法的后两个参数是什么意思?
如果我是连续发送3个0xf1,是不是应该这样:
Byte[] byte=new Byte[3];
byte[0]=0xf1;
byte[1]=0xf1;
byte[2]=0xf1;
port1.Write(byte,0,1);
楼两个参数0和1代表什么?
Byte[] byte=new Byte[3];
byte[0]=0xf1;
byte[1]=0xf1;
byte[2]=0xf1;
port1.Write(byte,0,3);
0代表偏移量,亦即数组的起始地址;
3代表发送的字节数。
这样做的好处是一个byte就能搞定所有要发的数据 用的时候截取就OK啦 例如:
Byte[] byte=new Byte[5];
byte[0]=0x00;
byte[1]=0xFF;
byte[2]=0xf1;
byte[3]=0xf1;
byte[4]=0xf1;
port1.Write(byte,2,3);
SerialPort.Write (Byte[], Int32, Int32) 将指定数量的字节写入输出缓冲区中的指定偏移量处。
SerialPort.Write (Char[], Int32, Int32) 将指定数量的字符写入输出缓冲区中的指定偏移量处。