串口通讯问题(100分)

  • 主题发起人 主题发起人 mtcwj
  • 开始时间 开始时间
M

mtcwj

Unregistered / Unconfirmed
GUEST, unregistred user!
使用SPCOMM构件,通过串口RS-232扩展卡与另一微机通讯,但不稳定,连续运行大约1到2天,就停止了.停止时,串口依然处于打开状态,只是向对方发送数据后,没有收到对方数据.重新启动程序或串口均不能解决问题,但重新启动机器(加电)后可恢复通讯,希望有此类项目经验的高手帮助分析一下.另通讯另一方程序无法分析(不可得).
 
我觉得你首先可以使用本机串口进行测试。需要排除不是扩展卡本身硬件或者驱动的原因 。然后再分析你自己的软件。
 
有可能是硬件不稳定
 
根据现有程序再写一个配套程序
使用两个串进行通讯
先排除硬件不稳定的因素
 
我用的也是spcomm控件,24小时通信没有你说的问题;
 
使用串口监听程序来监听一下就知道什么问题了
 
先怀疑一下自己的代码本身的问题吧
通讯使用到线程了吗?如果使用了就检查线程的执行部分是不是有没有保护的代码,或者造成指针引用错误的代码
使用到TTimer了吗?如果使用了查看是不是在里面有耗时的操作,是不是有分配内存的操作,如果涉及到动态创建对象,最好用线程不要用TTimer
 
这种臭虫最麻烦了
 
思路是:先硬后软。首先需要排除电脑硬件本身或者驱动的原因 :使用本机串口进行测试,最好用两台电脑,避免电脑串口本身的问题,或者用原来的两台电脑,找一个成熟的软件在两台电脑上模拟你现在的实验。!然后再分析你自己的软件:可以用你自己编写的软件发射或接收,另一端用成熟的没有问题的软件进行接收或发射。问题需要现场分析,我们只能给你一个思路,具体解决还要靠自己
 
感谢各位,我正在按大家的建议方法测试.
 
测试后,硬件问题排除了,会不会是SPCOMM构件不稳定呀?当发生问题时,重新打开串口也不起作用.
 
如果硬件没有问题,那就应该是你的代码问题了。我也是用SPCOMM写过串口程序,一个连接短信猫发短信的程序,程序都是7×24小时开的,从来都没有出现连接问题。
 
当硬件出现校验错误时就会出现这种情况。
 
k可能硬件的问题
 
感觉应该是硬件问题.
有个建议:
准备二台电脑,开始时均可以通过您的软件进行测试,然后用其中一台进行测试,直到你所描述的问题出现,就换另外一台电脑去试,如果OK,就是系统问题,否则就是设备问题.
如还是排除不了问题,再研究通信协议看看(双方的设备实现)
 
查到了,通讯线加屏蔽层并接地,已经三天多没出问题了,可能是现场信号干扰.
多谢大家关注!!!
 
后退
顶部