RS232串口无法通信

2019-07-16 02:22发布

本帖最后由 ssliudh1226 于 2013-2-28 16:29 编辑

我用51单片机采集数据并通过RS232串口传输给计算机,单片机还需控制一个继电器。接通继电器前,数据传输是正常的,接通继电器后数据无法传输。初步判断是由于强电对单片机的干扰造成的,但是继电器模块已采用了光电隔离(光电隔离使用的两个电源两个地)。
程序太长就不付了,但是控制继电器很简单,我用P2^1口控制继电器,继电器模块是低电平有效的,程序开始时P2^1口置1; 满足测量条件后,计算机给单片机一个指令,单片机让P2^1口置0,开始采集数据;数据采集完毕,将数据传输给计算机后P2^1口再置1。
我觉得是硬件原因,因为继电器在连接强电的情况下只要有吸和或断开的动作,会使串口自动与计算机断开(串口与计算机断开会出现提示音)。而且有时候RS232串口偶尔也会通信一次,再一次通信就必须插拔一次甚至好几次串口。还有的时候单片机无法传输数据给计算机,但是计算机可以传输指令给单片机。

只要没接强电,继电器有吸和或断开的动作,数据传输是正常的。
原理图中AD620的输入端接收拉压力传感器采集的信号。
求教各位大神,这个问题怎么解决,已经捣鼓1个星期了。 继电器模块 电路原理图
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
郑团伟
1楼-- · 2019-07-16 03:33
应该是程序问题  发个相应的程序过来  看看!~~
wkxboot
2楼-- · 2019-07-16 04:35
 精彩回答 2  元偷偷看……
ssliudh1226
3楼-- · 2019-07-16 05:46
郑团伟 发表于 2013-2-28 11:14
应该是程序问题  发个相应的程序过来  看看!~~

程序太长,但是控制继电器很简单,我用P0^0口控制继电器,继电器模块是低电平有效的,程序开始时P0^0口置1; 满足测量条件后,让P0^0口置0,开始采集数据;数据采集完毕,将数据传输给计算机后P0^0口再置1。
我觉得还是硬件原因,继电器吸和或断开的动作会使串口自动与计算机断开(串口与计算机断开会出现提示音)。
3htech
4楼-- · 2019-07-16 11:05
问题1:继电器输入端应加反向续流二极管。否则继电器动作瞬间会在VCC1上产生强烈的干扰。增加二极管测试一下。

2,如果可以的话,你可以把PCB发给我。我给你稍微看看。
jiangxiaowenzsz
5楼-- · 2019-07-16 13:33
zhihuizhou
6楼-- · 2019-07-16 16:15
3htech 发表于 2013-3-1 10:15
问题1:继电器输入端应加反向续流二极管。否则继电器动作瞬间会在VCC1上产生强烈的干扰。增加二极管测试一 ...

小白菜你好  回答很积极 希望继续努力  哈哈

一周热门 更多>