搜索
bottom↓
回复: 9

如何提高软件的抗干扰性?

[复制链接]

出0入0汤圆

发表于 2012-6-19 21:17:58 | 显示全部楼层 |阅读模式
大侠!是否可以谈谈在一个由多个中断组成的系统里,怎样建立良好的编程思路,使程序稳定运行,现实中在软件里做何处理才能有效防止程序跑飞?

出0入296汤圆

发表于 2012-6-21 00:10:58 | 显示全部楼层
首先我想知道你对钱后台系统的理解,以及对中断所消耗的系统资源的理解,然后我就知道如何对你解释最有效率。

出0入0汤圆

发表于 2012-6-21 00:20:39 | 显示全部楼层
真把我雷倒了 软件抗干扰性  真没听过 只听过硬件会被干扰  软件来想办法解决的。
软件只有编错的 没有干扰软件的。
楼上说对了 系统资源 CPU占用率 搞明白了 就明白了。管它多少中断。

出0入0汤圆

 楼主| 发表于 2012-6-21 19:37:31 | 显示全部楼层
本人是个菜鸟,软件上确实知之甚少,还请各位不吝赐教啊,哈哈!工业环境应用中电磁干扰很严重,有时经常程序会很奇怪的运行,假如对几个交流信号进行采样,(固定每个一段时间进行AD转换)根据采样出来的值再进行处理,定期刷新屏幕上的值,有按键调整参数等等,我想问一下中断服务程序里面可以调用函数吗?如果调用是不是会被下一个中断覆盖的风险呢?

出0入0汤圆

发表于 2012-6-21 19:42:49 | 显示全部楼层
liyuehan 发表于 2012-6-21 19:37
本人是个菜鸟,软件上确实知之甚少,还请各位不吝赐教啊,哈哈!工业环境应用中电磁干扰很严重,有时经常程 ...

"被下一个中断覆盖"要避免,合理分配下时间不就可以了

出0入0汤圆

 楼主| 发表于 2012-6-21 19:48:06 | 显示全部楼层
如果是单一中断那就好处理一些,如果不是单一中断,时间很难预知啊。

出0入0汤圆

发表于 2012-6-21 22:22:32 | 显示全部楼层
中断里面最好不要处理时间太长的东西,尤其多个等级相同的中断,最好在中断程序里面置标志位,到主程序里面处理~更复杂的我就不太懂了

出0入296汤圆

发表于 2012-6-21 23:35:59 | 显示全部楼层
搂主,你很多的判断都是基于感性,而且是基于人类的感官。对计算机来说,时间的快慢是一个相对的概念。
也许对人类来说一秒钟发生1千次或者1万次的事情已经是快的难以想象了,但对计算机来说是快还是慢,这是一个相对的。
你首先要记住,一个事件,比如中断,他发生的频率,要用计算机的思维模式来评估。

如何评估呢?你首先要记住一点:
1us = 1M, 也就是说,系统主频率是1M的单片机系统,执行一条指令要1us,1ms可以执行1000条指令。以此类推,12M
的系统主频,1ms系统可以执行12 * 1000条指令。这是什么概念?如果粗略的认为1条指令2个字节,那么12 * 1000基本上
就是24K的代码空间了?你哪个中断处理程序要24K这么大?另外一个角度,你可以仔细计算中断处理程序的汇编指令数量
找出最坏情况下,这个中断处理程序需要多少个指令周期来完成。由此,你可以判断,比如,这个中断发生的频次是小于
1ms 10次,也就是小于10K,那么你就拥有100us的时间来执行中断处理程序,如果你系统跑12M,那么你就拥有12 * 100
条指令周期,在这种情况下,你看看你中断处理程序是否需要这么多指令周期?如果大于等于,那么显然你现在的软件系统
设计是不合格的。反之则勉强可以运行。如果12 * 100远远大于中断处理程序的指令周期数,你则可以很自豪的说,这个中断
相对于系统来说是一个低速事件。

——计算机系统中事件的快慢要定量分析,请杜绝简单的用人类感官进行估计。

解决了时间的问题,你另外一个需要搞清楚的就是前后台系统。弄清楚前后台系统以后,再来问具体问题吧。

出0入0汤圆

 楼主| 发表于 2012-6-22 19:26:18 | 显示全部楼层
非常感谢傻孩子及以上莫友的指点,受教了!

出0入0汤圆

发表于 2012-8-22 13:39:08 | 显示全部楼层
感觉本贴与抗干扰没什么太大关系。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-2 20:37

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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