首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

串口发送数据格式有关问题?

2012-03-20 
串口发送数据格式问题??现有一字符数组,里面是16进制的数据,如下array 2e090027ff01045689 要求通过串

串口发送数据格式问题??
现有一字符数组,里面是16进制的数据,如下array= "2e090027ff01045689 "
要求通过串口发送出去的是9个字节的16进制数据2e,09,00,27,ff,01,04,56,89

该如何进行转换?

[解决办法]

com.PortNum = "COM1 "; //端口号
com.BaudRate = 9600; //串口通信波特率
com.ByteSize = 8; //数据位
com.Parity = 2;//奇偶校验
com.StopBits = 1;//停止位
com.open();
com.Write(Encoding.ASCII.GetBytes( "发送的数据 "));

[解决办法]
还是不对
//A,b,c,d,e,f不能那么处理
char* str = "2e090027ff01045689 ";
BYTE buf[9];
BYTE tmp[15];
for(i = 0; i < 15; i++)
{
switch(char[2*i])
{
case '0 ', '1 ', '2 ', '3 ', '4 '........... //懒得写了
buf[i] = (BYTE)(char[i] - 30);
case 'A ', 'a ':
buf[i] = 0x0a;
....
}
}
for(i = 0;i <9; i++)
{
buf[i] = buf[2 * i] + buf[2 * i +1];
}

热点排行