C#串口数据前后不对应

问题描述

本来该读出来的数字应该为00080但是自从第一次正常读出来后,他就开始乱跳数字,跳为000800808000等,这是为什么啊?

解决方案

解决方案二:
先用串口调试助手测试,看读到的确实是全部正常的,还是本来就是乱跳的再纠结你的程序测试你的程序,你应该将串口连接到另一台电脑上,或者本机的其他串口上,用串口调试助手给你的程序发数据,看到底收到的什么而不要什么都不知道呢就用程序直接读设备
解决方案三:
确认波特率,以及数据格式是否一致
解决方案四:
@Z65443344用串口助手得到的答案是恒定的,在其他电脑上这段程序不出问题,就在我电脑上有问题,是不是电脑的问题啊?
解决方案五:
引用1楼Z65443344的回复:

先用串口调试助手测试,看读到的确实是全部正常的,还是本来就是乱跳的再纠结你的程序测试你的程序,你应该将串口连接到另一台电脑上,或者本机的其他串口上,用串口调试助手给你的程序发数据,看到底收到的什么而不要什么都不知道呢就用程序直接读设备

用串口助手得到的答案是恒定的,在其他电脑上这段程序不出问题,就在我电脑上有问题,是不是电脑的问题啊?
解决方案六:
先看下串口设置有没有问题,跟串口调试助手里设置的是一样的吗
解决方案七:
用VirtualSeialPortDriver这个虚拟下Port是否数据紊乱,在这里面很容易看出来。

时间: 2025-01-20 13:56:07

C#串口数据前后不对应的相关文章

pos-关于POS机串口数据发送的问题

问题描述 关于POS机串口数据发送的问题 一般超市用的POS机,都是把要打印的数据通过并口或者网口给打印机,再由打印机进行打印.我的问题是能不能从串口获得要打印的数据?以文件格式或者ASCII码格式都行. 解决方案 如果pos机上有串口,建立串口读写,并定向到串口上.如果你无法修改pos机源码,通过网口转串口设备就可以

串口通讯 16进制转换-串口数据校验及ID提取怎么处理?

问题描述 串口数据校验及ID提取怎么处理? 现在有一份通讯规约 同步字/` 长度 / 命令字/ 数据区 / 校验 0xAA - - - - 1字节 1字节 1字节 0-253字节 1字节 长度计算范围:命令字-校验 校验计算范围:同步字-数据区 校验算法:字节累加和,丢弃溢出 数据区:如果没有数据,可以为空 对齐方式:大端对齐 串口波特率:9600 8数据位 无校验 1位停止位 协议指令和数据: 1.实时上传进出门数据 同步字 /长度 /命令字 / 数据区 /校验 0xAA - 0x02 进出门

mfc-MFC串口数据绘制波形图,如何将WPARAM 型的数据作为纵坐标绘制随时间变化的波形图呢,求代码

问题描述 MFC串口数据绘制波形图,如何将WPARAM 型的数据作为纵坐标绘制随时间变化的波形图呢,求代码 我的纵坐标是-400到400,怎么确定纵坐标,求代码,急急急,拜托了 解决方案 lz前一个问题记得及时采纳.这里,你的wapram应该是消息的一个参数,关键看消息的发出方怎么定义的. 解决方案二: 直接类型转换把坐标的数据转成WPARAM,消息收到后,再类型转换回来

循环发送-C#实时读取串口数据的问题

问题描述 C#实时读取串口数据的问题 假设有7条命令,向串口发送命令,待数据接收完成后触发下一条命令的发送,就这样循环一直发送.问题是:向串口发送命令后,我该怎样判断数据接收完成,从而发送下一条命令 解决方案 你的下位机是单工的还是双工异或半双工,若是单工的话,本来就遵守一发一收的.

mfc串口数据绘制波形图,能否帮我看下这样处理是什么意思,尤其是for循环里面,急急急,拜托了

问题描述 mfc串口数据绘制波形图,能否帮我看下这样处理是什么意思,尤其是for循环里面,急急急,拜托了 COleSafeArray m_number; long lengthi; BYTE data[600]; int ai=0bi=0ci=0di=0; int sum=0; m_number=ch; //将WPARAM ch转化为COleSafeArray形变量 length=m_number.GetOneDimSize(); //确定数据长度 for(i=0;i<length;i++) m

mfc-MFC如何将不停接收的串口数据绘制成动态波形图,求绘制代码

问题描述 MFC如何将不停接收的串口数据绘制成动态波形图,求绘制代码 怎么处理数据,绘制区才能动态绘制,没有重影呢,求数据处理代码,急死我了,拜托了 解决方案 这种直接用图形控件,或用c# 解决方案二: 用GDI+来做就可以.然后使用双缓冲绘图,可避免重影 解决方案三: 你说的重影是闪烁么,可以用双缓冲绘图来解决

上位机串口数据卡死 #-上位机串口数据卡死 C# PID调试工具

问题描述 上位机串口数据卡死 C# PID调试工具 自己用VS2013 C#编了一个类似串口助手的上位机现在出现以下问题 1.调试时未出现卡死任何问题,生成后点击传送数据没问题,但是不断发送就会直接卡死 自己分析:1.我每次传送36个字节,波特率9600 数据量太大 2.程序没有及时释放存储空间,导致卡死 3.程序处理的时间太长,导致处理不够及时 我大致搜了一下,他们说需要用一个线程.具体没学过C#,只是照着,查着学的.请高手帮我想想方法 以下是部分程序 串口接收事件: private void

C#编写串口数据收发程序,收发频繁,求教多线程处理机制!

问题描述 C#编写串口数据收发程序,收发频繁,求教多线程处理机制! C#编写串口数据收发程序,点击界面按钮发送指令数据,等待接收返回的数据,此外还有周期性数据需要不断接收:接收到的数据要判断重复帧和是否是最后一帧,然后去掉帧头帧尾并显示在界面控件内:目前程序开了三个线程:接收.处理.发送,三个线程都是一直循环判断指针是否有更新,但这样导致界面切换太卡,请问该怎么处理这三个线程之间的关系才能使界面切换流畅呢,初学C#,如果能给出具体修改代码方法更佳,请大神帮帮忙啊~急! 解决方案 不要过度同步UI

C#编写的监测软件,读多个串口数据,运行一段时间死机死机,挑时候出现“outofmemoryexception”异常

问题描述 读取串口数据的方式采用事件触发,具体代码如下:void_serialPort_DataReceived_LG(objectsender,SerialDataReceivedEventArgse){//禁止接收事件时直接退出if(ReceiveEventFlag){return;}try{stringreadstr=null;intn=_serialPort.BytesToRead;byte[]buff=newbyte[n];_serialPort.Read(buff,0,n);read

cstring-MFC 在vs,debug下运行,容易中断。跟串口数据有关。

问题描述 MFC 在vs,debug下运行,容易中断.跟串口数据有关. MFC在DEBUG下运行,程序读取的串口数据容易发生错误,如漏掉某些字符等. 这样,在串口数据提取时,容易提取到错误信息. 比如: 发送: $msm,1,2,3 接收: $msm,12s,3 提取第二个参数,如:int a = 第二个参数, 在后续的操作:DATA[a] = xxx时 由于a数据不正确,使得数组溢出,程序中断. 上述是在DEBUG下出现的问题. 但是,如果直接运行编译后的exe文件,上述状况则没有发生. 程序