一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 2308|回复: 14
收起左侧

[avr] 一乐高人多,大家帮我分析下,为什么运行速度会变慢?

[复制链接]
发表于 2016-4-23 15:12 | 显示全部楼层 |阅读模式
我用ATMEGA256做了个分布式系统,主机是ATMEGA256,三个串口转485与外部设备通讯,一路485连接触摸屏,一路连接变频器和温控仪,还有一路连接9台分机,分机也是AVR单片机。主机从三个串口不停向设备和分机发送查询和控制命令,在办公室实验时无论是停止或运行时都正常。首次安装到现场变频器运行后出现死机现象.
为了分析问题在程序段中插入了指示灯亮灭的控制代码,依次在上一段点亮一个指示灯,然后在下一段熄灭,再点亮下一个灯,如此循环。在死机时发现正常运行时闪亮变化很快的指示灯亮灭变化明显变得很慢了!但是亮灭的顺序还是正确的。
开始认为可能是电源部分的干扰,于是直接用一个手机用的充电宝(也就是电池)输出的5V电压供电,但是没有解决。偶然发现用手摸一下晶振时系统马上恢复正常,于是将晶振的外壳接上电源负极,当时连续运行几小时也没有出现这种现象了,以为问题解决了。
可是在正式使用时,同样的问题又出现了,不过频率比以前小多了,一天大概出现三到四次的样子。但是如果变频器不启动,分机也停止的时候,虽然通讯一直在进行但是连续运行了四天也没有任何问题。这次我在一个每秒中断的定时器中放了一个指示灯,让它每秒翻转,指示运行情况。可是在系统运行变慢时,也就是其他指示灯亮灭变化变慢时这个定时器中翻转的指示灯的亮灭频率却没有变化!此时再触摸晶振也没有任何变化。另外通讯线的屏蔽层和机柜都接地了。
这块主机板除了三个串口有连接设备和一路输出控制一个继电器外没有外接其他任何东西。我在连接变频器和温控仪的485电路上专门加装了一个光电隔离器,以防止变频器和温控仪通过通讯线干扰,问题也没有解决。
现在是一头雾水不知从何下手了。很奇怪为什么运行速度会变慢很多?如果是晶振变化导致的应该是整个系统频率都变化了,为什么定时器定时时间没变化?
不知道怎么搞了,还请各位多多指教!
发表于 2016-4-23 15:28 | 显示全部楼层
检查过LDO的纹波么?
 楼主| 发表于 2016-4-23 17:40 | 显示全部楼层
如果是电源问题的话,应该无论在哪种状态下都会出现这种故障吧?开始也用移动电源试过的。最不明白的是为什么在系统运行变慢时,其他指示灯亮灭变化变慢时这个定时器中翻转的指示灯的亮灭频率却没有变化?
发表于 2016-4-23 18:10 | 显示全部楼层
应该是变频器干扰了晶体输出,最简单的方法是换有源晶振
发表于 2016-4-23 20:11 | 显示全部楼层
先改用内部振荡器试一试。
发表于 2016-4-23 22:57 来自手机 | 显示全部楼层
我遇到过芯片低速正常,高速芯片内部出错,看你的应该是变频器产生的高频干扰进入单片机时钟,无线方式,随便晕的,变频器几十千赫频率是可以发射出去的来自: Android客户端
 楼主| 发表于 2016-4-24 11:50 | 显示全部楼层
谢谢大家的回复,现在准备:
1、原来电源转换因为供电是24V,所以用的电源芯片是LM2596,先改为7805试试。5V端电流0.6A左右,希望能顶得住;
2、网上买有源晶振,如果改电源无效再换晶振试试;
3、电源输入加磁环。
但问题如果不在电源和晶振就不知道该怎么办了。谢谢大家。
发表于 2016-4-24 16:34 | 显示全部楼层
建议与变频器的通讯改为每秒通讯一次或者几次,不要一直工作。
 楼主| 发表于 2016-4-24 17:33 | 显示全部楼层
xxxx7 发表于 2016-4-24 16:34
建议与变频器的通讯改为每秒通讯一次或者几次,不要一直工作。

因为波特率受温控限制为9600且变频器和温控一共有七台,还要读参数、写命令,每台设备通讯每秒也只有一次左右。
发表于 2016-4-25 09:13 | 显示全部楼层
会不会是有什么中断,级别比定时器低,但是在不停的打岔?

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-18 06:10 , Processed in 0.076772 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表