单片机中断使用注意事项

        单片机开发过程中,很多时候都需要用到中断,不管是内部的还是外部的,但是在使用中断的时候一定要注意到中断之后,其程序的运行状态。尤其是涉及时序的。

       1、时序操作

        比方说,程序中要对外部EEProm进行读写,例如24C02,这是典型的涉及时序问题程序,这个时候,大家可得注意,当你在对24C02进行读写的时候,就应该禁止中断,因为这个时候中断的发生会影响时序,进而产生读写错误,造成不可知的后果。

        2、定时器中断

        很多时候,我们会用到定时器中断,用来计时。我们知道要是我们把相关的计时程序写到中断服务程序中,会占用更多的时间,影响主程序执行,很多时候我们会选择把相关计数的程序放到主程序中执行。这个时候需要注意,要是主程序的执行时间大于中断程序中定义的计时变量,就会出现计时不准确的问题。

       比方说,定时器1ms中断一次,中断服务程序里面有个变量time计数一次,主程序中,对time进行检测,要是time大于等于10则启动另外一个计数变量,这个时候要是主程序循环的周期大于1ms就会计数不准确。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值