打印

急寻会485通讯及51单片机的朋友

[复制链接]
6343|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
anazel|  楼主 | 2012-6-16 17:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
airwill| | 2012-6-17 11:00 | 只看该作者
会这东西的人, 多得是.
有问题就拿出来看看能不能帮上你

使用特权

评论回复
板凳
星火燎原| | 2012-6-17 21:41 | 只看该作者
什么问题摆出来不就得了

使用特权

评论回复
地板
wukunshan| | 2012-6-17 22:16 | 只看该作者
很明显,楼主的意思是合作,有报酬的。:lol

使用特权

评论回复
5
数传无线| | 2012-6-18 16:52 | 只看该作者
LZ这么一说,就希望有人帮你啊,至少把问题写出来吧,  顺便说一下三楼的签名,酷毙了!

使用特权

评论回复
6
showball| | 2012-6-18 18:39 | 只看该作者
把问题发出来看看吧,485还是比较简单的.

使用特权

评论回复
7
anazel|  楼主 | 2012-6-19 09:21 | 只看该作者
电路如下:

程序:
sbit DE_RE = P1^0;
/***********************************************************************
延时程序
************************************************************************/
void Delay_ms(uint ms)
{
unsigned char k;
while( ms-- )
{
  for ( k = 0; k < 114; k++ );
}
}

/************************************************************************
接收数据子函数
*************************************************************************/
unsigned char rxdata()
{
uchar dat;
DE_RE = 0;    //接收数据有效
while ( !RI ) ;        //等待数据接收完
dat = SBUF;             //接收数据
RI = 0;                 //清中断标志
SM2 = 0;
return(dat);
}
/***************************************************************
* 发送一串数据
****************************************************************/
void put_buf(uchar *RX_Buf,len)
{
uchar i = 0;
DE_RE = 1;
while ( i < len )
{
  SBUF = RX_Buf[ i++ ];
  while ( !TI );
  TI = 0;
  Delay_ms(1);
}
DE_RE = 0;
}

故障现象:
可以正常运行2,3天,然后通讯中断,仪表并没有死机,波特率2400,普通双绞线,距离不到300米

使用特权

评论回复
8
hyhmh| | 2012-6-19 09:27 | 只看该作者
这个电路原理 似乎没有 达到 想要的 隔离。

+5V 与 VCC 是同一电源?
GND 光耦 前后 都 一样?

1.JPG (21.89 KB )

1.JPG

使用特权

评论回复
9
anazel|  楼主 | 2012-6-19 10:34 | 只看该作者
不好意思,画的不规范,+5V都是一个,GND也是一个

使用特权

评论回复
10
anazel|  楼主 | 2012-6-19 10:38 | 只看该作者
一开始上下拉电阻都是用的4.7K的,后来经常断线,改成20K后有所好转,不过现在用2,3天就断线

使用特权

评论回复
11
375606426| | 2012-6-19 10:49 | 只看该作者
兄弟我最近研究485通讯以及485总线问题呢你这485A、B应加上一个地线相当于屏蔽以为信号在传输过程中很容易受干扰的导致一个节点出现问题想总线一直发数据造成短路通讯中断

使用特权

评论回复
12
anazel|  楼主 | 2012-6-19 11:23 | 只看该作者
是不是要用485专用的屏蔽双绞线呢,2元多一米,屏蔽层接仪表的地?

使用特权

评论回复
13
sixgett| | 2012-6-19 16:25 | 只看该作者
那边的光电隔离,两边的+5V电源都是用的同一个电源?要是是的话,就失去隔离的价值了。。。建议用B_0505隔离开。

使用特权

评论回复
14
ningling_21| | 2012-6-19 17:00 | 只看该作者
是不是要用485专用的屏蔽双绞线呢,2元多一米,屏蔽层接仪表的地?
anazel 发表于 2012-6-19 11:23


产品中一般都是用屏蔽线的...

使用特权

评论回复
15
刘前辈| | 2012-6-19 17:06 | 只看该作者
本帖最后由 刘前辈 于 2012-6-19 17:08 编辑

咱用的75176,从来没出过问题。

其实不是485的问题,关键是你的系统通信断了之后,如何自恢复的问题。也就是系统健壮性设计问题。

通信不受干扰,长期不断线是不可能的。打雷、闪电、电源外部大负载启动……都会造成单片机程序乱序——通信程序更不知飞到哪去了。

——自动复位系统重新启动就行了,这种仪表采集系统,比要求精确点复位系统简单多了。


、、

使用特权

评论回复
16
cklgf| | 2012-6-20 00:25 | 只看该作者
mark

使用特权

评论回复
17
anazel|  楼主 | 2012-6-20 14:00 | 只看该作者
应该不是程序飞了的原因,重启都不管用

使用特权

评论回复
18
hyhmh| | 2012-6-20 14:21 | 只看该作者
LZ 的 硬件、软件 都没有 达到 产品化的 基本要求。

使用特权

评论回复
19
anazel|  楼主 | 2012-6-20 16:52 | 只看该作者
LZ 的 硬件、软件 都没有 达到 产品化的 基本要求。
hyhmh 发表于 2012-6-20 14:21

请指教

使用特权

评论回复
20
anazel|  楼主 | 2012-6-20 16:53 | 只看该作者
咱用的75176,从来没出过问题。

其实不是485的问题,关键是你的系统通信断了之后,如何自恢复的问题。也就是系统健壮性设计问题。

通信不受干扰,长期不断线是不可能的。打雷、闪电、电源外部大负载启动……都会造 ...
刘前辈 发表于 2012-6-19 17:06

今天买了一片75176,才1元钱一片,MAX485要5元呢,不应该是芯片的问题吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

35

主题

448

帖子

2

粉丝