串口怎么发送HEX给上位机(用文本形式显示),或者怎样将HEX转变为字符串形式

作者&投稿:以依 (若有异议请与网页底部的电邮联系)
串口通信怎样发送hex数据~

1:先去下一个通用的串口调试软件代替你的vb程序,用你原来单片机的程序给计算机发数据,这样如果串口调试软件接收到的数据是正确,说明你的vb程序问题。
2:如果上述方法接收的还是错误数据,则建议把单片机串口工作方式改成方式三,波特率和其他的不用变。再然串口调试软件接收数据看看。

另外:“PCON=0x00; //开总中断,开串口中断”
PCON不是中断控制器,下面那句才是。 开中断。

文本格式的 0 、2、4......等,是 使用 ASCII 码格式的,
‘0’ 的ASCII 码= 0x30;
‘2' 的ASCII 码= 0x32;
……
而串口助手使用 HEX 格式 发送的是 直接的 数据,
’0‘就是 0x00;
’2‘就是 0x02;

两种方式的 数据是不同的,LZ 的单片机程序 必须 能 做出相应处理,才能 有 同样的 动作效果。

显然要做转换

你什么语言?

推荐看书
Visual C++_Turbo C串口通信编程实践
Visual_Basic与_RS-232_串行通信控制
Delphi串口通信工程开发实例导航


串口调试助手调试自由口!HXE发送是啥意思.旁边还有个 ascll发送 啥意思...
HEX是数学16进制的代码;ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。

FPGA串口打印HEX换行
指的是在串行通信的时候通过十六进制进行传输,hex是十六进制的标志。一般串口软件的hex发送是将发送的字符串中数字两个两个十六进制化。编写软件需要先了解通信规约,一般辅助调试可以用一些通用的协议软件,如格西烽火软件等,把通信协议测试通过后再进行嵌入到自己的程序中。

51单片机串口发出与接受数据不一致?
你是要测试十六进制数据的发送和接收,所以串口软件里面的HEX显示和HEX发送都要勾上!要不然你点一次发送就是14个字节出去了!

如何将以下的hex文件通过串口发送给单片机,并存入eeprom的指定位置...
建议看看IAP。"单片机如何将串口接收到的任意hex文件存入ee中我的意思就是,将上面的hex文件像存储数据一样写入ee内"如何存入EEPROM?这个你自己得在单片机中编写程序,建立一个缓冲区,串口接收到的数放入缓冲区,然后存入EEPROM.

求助shell echo “HEX字符串” 到串口ttyUSB0的方法
发送字符到串口echo-n“abc”>\/dev\/ttyUSB0#这个正常串口接受到616263即abc。

迪文T5UIC1指令屏串口发送握手指令无返回,自己不记得是哪个波特率了_百 ...
没有示波器测的话,那就用 SSCOM32,勾上 HEX 发送,HEX 显示,发送 AA 00 CC 33 C3 3C 定时发送 100ms,鼠标来回切换波特率看一下哪个波特率可以返回吧。还有最好的就是重新配置一个CFG系统配置文件,下载后再去试试。

...我做了个串口通讯软件,发现只能传输ASCII数据,怎么传16进制的...
在串口输入数据加一段ASCII转HEX的程序,ASCII转HEX的程序很多。

单片机 串口接收 文件
hex文件恐怕不好处理。有些编译器生成的代码块并不是按顺序存放的,因此单片机侧需具有能够缓冲整个文件的RAM。看你的情况可能没有这条件。如果由串口软件发送,一般应当发bin文件。单片机的RAM至少应满足Flash的页缓冲区大小要求。

如何用USB口下载十六进制的hex到单片机学习板,不用com,(AT89S52)_百 ...
不用COM很难做到 USB是差分信号 (3.3V)就算使用低速模式1.5Mbps的通信速度。每个脉宽666ns 单片机很难实现()STC的IAP系列就可以写个bootload STC1T用36MHz的晶振有24个周期处理数据(包括把NRZI编码转成正常的数据时间非常紧张,用C语言外部中断需要用汇编来写)时序的要求非常高 并且数据格式非常复杂 ...

51单片机如何导入hex文件?
1、首先在电脑上用proteus软件打开目标文件。然后用鼠标左键双击51单片机图标,如图所示。然后在出现的窗口中,点击下图中的文件夹图标。然后在电脑文件夹中找到编译好的HEX文件导入。2、keil里编译时,设置输出文件为.HEX文件格式。然后在proteus中打开CPU属性,在程序设定栏填入HEX文件路径及名称(也可以...

布拖县15835127087: 串口通信怎样发送hex数据 -
党莫肛泰: 串口调试工具一般都有HEX发送选项,勾上就发送Hex数据了

布拖县15835127087: 串口通信,.net 如何实现读入Hex文件,发送给单片机? -
党莫肛泰: 通过serialport控件,根据单片机协议如modbus,把hex文件内容发送给单片机

布拖县15835127087: 你好 我有个问题要请教您 关于GSM模块的 关于那个信息发送 我是用上位机的串口调试工具模拟的 -
党莫肛泰: 在你输入了信息内容XXXX后(未按回车发送时),就按CTRL+Z,就发送了,如果你键盘里按CTRL+Z时出现的效果是撤销(CTRL+Z发送有些串口软件可以有些不行,或者个人电脑系统不一样...),你输入内容后按回车先输入,然后再点串口软件上的HEX发送,即16进制,然后输入1A再发送就OK了. 我之前也不懂,这个对新学的人来说挺坑人的.........

布拖县15835127087: AT89S52单片机用RS232与电脑通信,通信已成功,怎么发送一个数据? -
党莫肛泰: 也就是 十六进制0x00对应 0 摄氏度 ,十六进制0xff对应 N 摄氏度 ,将接收到的十六进制码利用 刚才的公式转换回来,第三次发.然后串口发送的时候直接发送0x00-0xff的十六进制码就可以了 在vb上位机中,有很多的52的串口一次发送的是8位...

布拖县15835127087: 上位机pc通过串口向单片机发送hex文件 -
党莫肛泰: 我以前做实验的时候发现,用单片机串口工作方式一给计算机发数据并不能准确的发过去,经常是发一个0x00,计算机收到的可能是0xFE.我老师分析说可能是出现丢码现象,后来我的解决方法是设置用单片机的串口工作方式三发送数据,也...

布拖县15835127087: 上位机 十六进制数的串口传送 -
党莫肛泰: 自己编一个函数 Function HexToValue(strHex As String) As Byte Dim char1 As String * 1 Dim char2 As String * 1 Dim mTenPos As Byte Dim mEndPos As Byte char1 = Left(strHex, 1) char2 = Right(strHex, 1) If Asc(char1)mTenPos = Asc(char1) - ...

布拖县15835127087: 请问你是怎么解决用labview发送hex数值的,谢谢 -
党莫肛泰: 字符串右键, 16进制显示,即可.

布拖县15835127087: 单片机怎样通过串口发送数据给上位机,上位机是一个显控触摸屏 -
党莫肛泰: 你必须按照这个显控触屏的通讯协议发送数据,那么显控触屏就可以正常接收数据了.

布拖县15835127087: 我要将单片机串口将数据传给上位机,上位机可以对数据处理,生成曲线,输出文档等,用什么软件编写比较好 -
党莫肛泰: 用vc++,编一个界面,用串口通讯,获得数据,在界面显示图形,用excel或者数据库存储数据,

布拖县15835127087: labview HEX问题 -
党莫肛泰: 方法一,前面板--鼠标挪到字符串控件上右键--设置为“十六进制显示”,再在里面写入十六进制的字符串,不过方法不太适合编程,不方便更换参数和校验.方法二,U8的字节数组转换为字符串,数组为你的单片机指令,控件的位置《数值--转换--字节数组至字符串转换》

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网