8 个解决方案
#1
一般发送都是按字节,注意大小端的匹配
上网找个例子看看
上网找个例子看看
#2
定义一个格式帧 把每个数据转换为2进制之后按直接发送 这样涉及到一个你的协议 定义i个协议吧所有的书按照二进制转换为字节流发送
#3
谢谢。没有合适的。只能两位两位的发送才好。不知如何实现“两位两位发送”,这样不会超过100。继续指点指点。
#4
就是解决“如何从字符数组中读取两位数据”问题。有程序指点吗?
#5
把54321.78转换成字符数组通过串口发送出去
#6
void Float64byte(float64 number,Uint16 byteArray[8])
{
int16 i,j;
Uint16 temp[4];
Uint16* pchar=(Uint16*)&number;
for(i=0,j=0;i<4;i++,j+=2)
{
temp[i] = * pchar;
byteArray[j] = temp[i]&0xff;
byteArray[j+1] = (temp[i]>>8)&0xff;
pchar++;
}
}
#7
STX,或透明协议。
#8
能具体些吗?给个程序最好了。
#1
一般发送都是按字节,注意大小端的匹配
上网找个例子看看
上网找个例子看看
#2
定义一个格式帧 把每个数据转换为2进制之后按直接发送 这样涉及到一个你的协议 定义i个协议吧所有的书按照二进制转换为字节流发送
#3
谢谢。没有合适的。只能两位两位的发送才好。不知如何实现“两位两位发送”,这样不会超过100。继续指点指点。
#4
就是解决“如何从字符数组中读取两位数据”问题。有程序指点吗?
#5
把54321.78转换成字符数组通过串口发送出去
#6
void Float64byte(float64 number,Uint16 byteArray[8])
{
int16 i,j;
Uint16 temp[4];
Uint16* pchar=(Uint16*)&number;
for(i=0,j=0;i<4;i++,j+=2)
{
temp[i] = * pchar;
byteArray[j] = temp[i]&0xff;
byteArray[j+1] = (temp[i]>>8)&0xff;
pchar++;
}
}
#7
STX,或透明协议。
#8
能具体些吗?给个程序最好了。