按理观察所见应是电源问题导致,因硬件是由别个工程师设计的:单片机使用DC5V,485芯片的电源通过DC12V和7805变换而来,隔离的光耦有PC817和6N137,其实并没起到隔离的作用,因采取的电源取自主机板,12V与5V在主机板上是共地的。有两个RS485口,我使用的MAX485CSA芯片总是问题重重……挑选了多家进行比较都没彻底解决。但是我使用的如是MAX485ECSA芯片的话,则迎刃而解。两个485供电系统均通过磁珠错开了(实话说,我不知道如何去对磁珠选型?)有时会将主机板上12V用的电解电容给烧坏了。
故障现象:两485口通讯情况相互影响,假如第一485口发生收数误码,有两种原因:(收数原始数据为5个16进制数AAH) ⒈如接收到数据误码成75H 75H 75H 75H 75H,则通过更换第一485口芯片成MAX485ECSA则OK; ⒉如接收到的数据误码成75H 75H 75H 75H F5H,则要通过更换第二485口上的接口芯片成MAX485ECSA才能解决。
最终解决:针对误码情形全更换成MAX485ECSA芯片,因电源暂时不大好弄。但会不会以后的通讯状况问题重现,心里没底。 ——这就我的分析,目前能够应急解决,通讯完好了。但我还不能下结论就是485芯片问题的终极原因……
|