您的位置 首页 数字

C51中止之感触

中断给及时处理突发事件带来了方便但也带来的风险!设置好中断,写好中断程序是不是就万事大吉了那?那肯定不是如果中断程序是一个独立程序

中止给及时处理突发事情带来了便利.但也带来的危险!设置好中止,写好中止程序是不是就万事大吉了那?那必定不是.

假如中止程序是一个独立程序来处理一个独立事情,欠好任何程序传递数据和相关.这样的中止带来的费事相对较少.并且也简单发现.比方呼应中止作业与延时会让延时函数变的不精确等问题.

假如中止程序它和其它函数之间有数据传递和相关.那就要特别当心了.比方中止程序中要改动一个标志位的状况.别的一个函数里要判别这个标志位,依据标志位的状况做一些处理.而这个判别表达式又比较长,要由多个标志位参加,那么这个判别标志位的逻辑句子就要尽量精简.并且要考虑好逻辑优先级!中止事情随时产生,那也就认为能够随时打断正在履行的使命.当然也能够打断正在履行的判别逻辑句子.假如整个逻辑句子比较长,当履行了一半被中止打断,而中止程序里又要改动这个逻辑句子中没有履行的标志位,那么这个逻辑句子就失去了应有的效果,然后犯错.所以在写程序时就要考虑到任何一个当地被中止打断后会产生什么样的状况!不然就会使程序存在危险.这样的危险很欠好发现.

许多文章都提出中止函数要尽量矮小.能在主程序里处理的就不要放在中止的程序里.这观念没有错,但要灵敏把握。假如不是太杂乱的程序那就尽量让中止程序来完结.这样能够少用标志位和逻辑句子.程序反而更简练.并且比较稳定.

程序中下降沿触发中止运用的许多,在运用中如不加抗搅扰办法,那么中止很简单被搅扰触发!然后呈现过错!在中止程序开始处加个延时,延时后判别一是不是仍是低电平,是低电平运转下面的程序,不然就退出中止处理程序.这样做的长处便是不添加任何硬件成本低.但会下降程序的功率!在INT0(INT1)脚对正电源接一小瓷介电容可明显的进步抗搅扰才能.有了电容就不用在中止程序中加延时了!这两种办法自我感觉外接电容的办法更佳.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/shuzi/258923.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部