分享

有没有能增强RS

 落水成花 2015-05-02
有没有能增强RS-232串口驱动能力的小设备
我的设备上一个RS232串口需要和下位机通信,时间长了偶尔会出现RS232串口和下位机不能通信的故障,你只需要让电脑关机一会儿,再开机就能解决问题。我估计是计算机长时间运行后导致RS232串口驱动能力下降,请问有没有什么小的电路板或什么的能增强RS232串口的驱动能力?


一般不会出现这种情况啊,多长时间出现一次?定时或不定时?清空缓冲区后试一试,如果问题不出现,则说明是通讯代码有问题。 
liulangsanmao     2014-03-24        
评价(0)(0)(0)

要看你具体是怎样操作的了。如果用USB转串口的方式连接下位机,那么有可能问题出在驱动或驱动兼容性问题。如果没有任何转换设备直接连接串口,也有可能出现在上位机和下位机的通讯协议上。
通常好的协议都有数据校验和丢包处理的过程,如果在程序上没有设计数据校验和丢包处理的过程,出问题是常见的事。还就就是单片机的频率问题,如果单片机内处理的程序过多,而中断发生频率又过高,也很容易出现问题,甚至跑死都有可能,所以单片机的看门狗设计也很重要。还就就是通常在单片机与上位机通讯时会采用MAX232作为转换电平的信号驱动,但通常很多人都会参考使用0.1uF的电容,建议采用1uF的电容,信号会比0.1uF要强很多。就搂主的问题我没遇到过,估计是单片机与上位机的通讯程序问题导致通讯失败,可以这样测试,如果你发现无法通讯了,重新启动单片机看看能不能通讯,如果不行,你最好把你的上位机程序关掉,重新烧写单片机程序看看能不能烧写,如果可以,那么表示串口通讯没问题,因该是软件问题,如果真的还是不行,但重启PC后又恢正常了,那么有可能就是你PC的串口问题了,解决办法,在PC上加一块串口卡可以很好的解决这类硬件问题。如果确定不是硬件问题,估计就是你用了什么CH341或CH340这类的USB转串口的转接设备,在2003下驱动很不稳定,最好还是直接使用串口好一点。如果你使用了正常的硬件和串口设备进行通讯,单片机也能保证电路及串口信号稳定,而你对你的上位机和下位机通讯协议和程序都比较自信,但问题依旧存在,那么唯一的可能就是你的操作系统,如果改善了系统环境问题还存在,那你最好还是叫别人帮你弄吧,因为很有可能你走进了个死胡同自己都不知道,呵呵。 
liulangsanmao     2014-03-24        
评价(0)(0)(0)

我在

23楼答复中提供了一种解决楼主所描述的通信口假死的方法。建议楼主可以一试。 
liulangtun     2014-03-24        
评价(0)(0)(0)


有这种可能。而且,从楼主所述需要关机冷却一段时间才能恢复正常,不像是软件故障。

我曾经遇到过,同样的串口外设,与一些 PC 连接时不能稳定通讯的情况。主要原因是 PC 机和下位机的 RS232 芯片质量不够好。更换下位机 RS232 芯片一般都能解决。

你可以更换下位机的 RS232 芯片,采用名厂产品。

另外,市面上有 RS232 中继器。也可以选用好的 RS232 芯片自己做。

liulangjidan     2014-03-24        
评价(0)(0)(0)

也不是没有可能,就我搞过的一款打印机控制板来说,他的通讯协议本身就有缺陷。
当然,正常的情况下可能没有问题,但是有时候也会遇到通讯问题。我们用自己开发
的板子进行测试,通讯、烧写一切正常,但那个所谓的“产品”就是表现得很不稳定。
这种事没什么好奇怪的。建议用多种方法测试,确定问题原因才好对症下药。 
liulangtun     2014-03-24        
评价(0)(0)(0)


你可以尝试市面上的 RS232 信号放大器。

当然,还有一种选择,就是在你的 PC 上另加一块串口卡。或者用 U 转串接口线试试,不过一定要用 FT 芯片的。 
liulanghan_168     2014-03-24        
评价(0)(0)(0)

RS232的标准就是将(+3V)-(+15V),(-3V)-(-15V)的电平作为通讯的高低电平使用,
所谓的信号强弱是和电压、电流有关,通常 RS232 的通讯电流都在 5mA-10mA 左右,
如果导线过长,电损耗相对也会加大,那么电压就会下降,这样便会影响到所谓的信号
识别。
如果你的导线在 1.5m 范围内,所谓的信号强度按标准的 RS232 协议来说是绝对足够
的,如果说真的存在信号弱问题,只有可能是 TTL 电平转换时的问题,比如说电压不稳
或电流太小等原因,但被应用得比较常见的 TTL 转 RS232 的转换模块来说,通常不会
有这类问题。就MAX232来说,他为了能适应各种距离的通讯,所以在外围电路上提供了
几个电容接口,根据不同的需求可以使用不同大小的电容,范围是1uF-0.1uF,通常使用
USB转串口设备时采用0.1uF,因为像CH240或CH341这类的转换芯片通常不需要距离太远,
所以电损和电流也不需要太大,但是如果直接用串口线连接,相对来说需要的电流和电压
需要大一点,以满足电损耗部分,那么电容使用1uf能比较稳定的将(+3V)-(+15V),
(-3V)-(-15V)的电平传递到目标端。在有导线的情况下,所谓的信号强弱就是这么个电
压电流传递能不能识别的问题。
有些设备识别电压的范围广一点,比如通常(+3V为)低电平,(+15V为高电平),如果因为
导线或器件的问题导致电压不到(+15V),只有(+9V),如果也被视为高电平的话,那也
就解决了所谓的信号弱的问题。
如果说你的串口通讯出问题是因为信号弱的问题,我认为不是。因为按你的说法长期都是好
的,只有几次出现通讯不了的问题,这说明无论是上位机还是下位机,包括导线,他们所提
供的电压和电流都是长期能够相互接受的,就这么偶尔几次不能通讯,而且是需要重启电脑
后才能通讯,难道说这几次问题会是因为几个不稳定的电压或电流造成的?肯定不会,所以
说和信号无关。

估计应该不是这个所谓的信号强弱问题,除非的下位机电路或器件本身有问题,比如转换芯片
用了略制的器件或电路短路,导致器件使用时间过长发烫或烧毁,否则就应该不是信号问题,
因为既然能够长期使用,表明硬件的器件本身的电压电流控制还是能够工作的,如果说不稳,
那么应该考虑供电部分稳吗?就PC主板上的UBS供电来说,5V供电基本上都能达到。但根据
主板的不同,主机电源的不同以及配置和使用的不同,供电的效果也不见得相同,就我的PC
主板来说,USB供电的电流不到500mA,用来跑单片机的时候,如果启动个电机,整个单片机
系统立即复位,因为电流不足,不说启动电机了,单独测量USB供电口是5.3V,把单片机开关
一打开就变成4.2V了,如果在启动电机,相当于断了电再接上电,重启了。但是同样的东西
到公司的一台比较强的PC上接电,跑起来就完全没有问题。所以说也要看看你的供电部分是
什么东西,电压多少?电流多少?或者说功耗多少?

还有,就PC来说出问题的可能性也是很多的,也不要对PC太过放心,就我上面所说的,PC
上的USB供电电流不足的问题只是比较常见的小问题,PC硬件还和安装了多少外接设备,PC
电源功耗,软件系统,满负荷工作功耗等都息息相关。其中有一个环节不符合要求出现问题
的机率也是很大的。

当然,如果你直接能用一个USB转串口的设备就能解决问题的话那就恭喜你了,但是告诉你,
还可能存在程序上的兼容性问题,就我用过的几个USB转串口的设备来说,不同的系统,稳定
性也不同(因为驱动程序的关系)。如果你要做的是产品,那么稳定性是很重要的,软件、
硬件、功耗、稳定性、适用范围、测试环境、应用环境这些基本的东西都是必须考虑的。 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多