cpubbs论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1764|回复: 4

[求助,急!]关于串口通信

[复制链接]
发表于 2007-8-18 00:57:27 | 显示全部楼层 |阅读模式
串口通信遇到了问题,我就以一个其中的例子来提问了

比如我现在需要通过串口向下发送一个两位的16进制数值 “41”

但是我发现,ComWrt只能以字符形式发下去,也就是说,到了下位机,就变成了字符 "41",转换成16进制,就乱七八糟了

而用ComWrtByte来按照41的2进制 0100 0001,每位发,如ComWrtByte(com1,0)依次发8次,到了下面就变成了 00 01 00 00  00 00 00 01(8个2位16进制数)

但是我要下面的8位寄存器接收到的是 2进制的 01000001 ,转换成16进制是 “41”,而不是字符 “41”

有人告诉我,应该怎样做吗?
发表于 2007-8-18 23:03:02 | 显示全部楼层
不太理解老兄的意思!如果您向下面发0X41,它下面收到也是0X41,这样不是刚好是原来的数据吗?这样挺好判断的!不清楚兄弟您有什么需求?
 楼主| 发表于 2007-8-19 17:28:14 | 显示全部楼层
我的意思是说,如果我用ComWrt这个命令来发送41的话,那么这个41是字符,下面收到的,也是字符的41,而不是十六进制的41

但是我现在需要下面收到的是十六进制的41,我应该怎么发送?
发表于 2007-9-21 16:18:20 | 显示全部楼层
ComWrt只能发送字符串,而不能发送数值型数据,你用ComWrtByte不行吗?
发表于 2007-9-21 17:33:00 | 显示全部楼层
您将这个元素置成0x41,下面收到的其实是数值!在低层看来,没有什么区别的!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2025-4-22 14:00 , Processed in 2.501007 second(s), 7 queries , Gzip On, File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表