找回密码
 立即注册
收起左侧

tcp

5
回复
6852
查看
[复制链接]
累计签到:4 天
连续签到:1 天
来源: 2013-8-21 11:49:58 显示全部楼层 |阅读模式
1Qter豆
按照快速入门上的422页,tcp教程,我写了一个自己的程序,用来在服务器运行,**dtu发往这个服务器某个端口的数据,发送这快做好了 ,也通过了验证,但是接收这块怎么做呢?亚飞用的都是qt进行收发,但是我这接收的数据是dtu发送的,不会按照qt版本什么这些发送,怎么接收呢?

最佳答案

查看完整内容

输出的时候是不是按照字符串方式输出的?按照字符串方式输出,当遇到0x00时,就会认为字符串结束了,所以后边的都不会再输出了。
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-8-21 11:49:59 显示全部楼层
输出的时候是不是按照字符串方式输出的?按照字符串方式输出,当遇到0x00时,就会认为字符串结束了,所以后边的都不会再输出了。
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2013-8-21 19:40:09 显示全部楼层
现在问题有变,连接已经搞定,但是发送的命令是16进制的,接收方是dtu连接的传感器,指令是AA  75  01  00  EE  EF ;请问怎么发送呢,还是用QByteArray block,write(block)???
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2013-8-21 20:59:59 显示全部楼层
liyingju001 发表于 2013-8-21 19:40
现在问题有变,连接已经搞定,但是发送的命令是16进制的,接收方是dtu连接的传感器,指令是AA  75  01  00  ...

我继续追加问题,现在发现QByteArray x("A"),在此A竟然是char类型,怪不得通过dtu后我的串口显示41,那怎么转换QByteArray 呢?使得我的终端收到的是16进制A???????????
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-8-22 08:53:32 显示全部楼层
liyingju001 发表于 2013-8-21 20:59
我继续追加问题,现在发现QByteArray x("A"),在此A竟然是char类型,怪不得通过dtu后我的串口显示41,那 ...

QByteArray x(0x0a);
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2013-8-22 11:36:33 显示全部楼层
hzzhou 发表于 2013-8-22 08:53
QByteArray x(0x0a);

嗯  你说的确实不错  但是还是有问题   例如我的命令是AA 75 01 00 0E 00 00 00 00 00 00 00 00 00 13 02 01 18 15 20 ED FF,我用串口助手读服务器发送的上述命令,结果只能显示  AA  75  01  ,到了00那及其之后的数据就不再显示,一单遇到00就不行,有啥解决办法没?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了