请教高人C51单片机C语言中的中断优先级怎么设置?

如果是同时用到几个中断像T0,T1,外部中断0,串口的,这么多个如果要按指定的优先顺序进行处理中断,只设置IP就可以了吗?具体怎么设置?... 如果是同时用到几个中断像T0,T1,外部中断0,串口的,这么多个如果要按指定的优先顺序进行处理中断,只设置IP就可以了吗?具体怎么设置? 展开
 我来答
天云小店
推荐于2017-09-12 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:786万
展开全部
C51中设置中断优先级,需要对中断寄存器IP进行配置。具体值需要根据用户需要的优先级顺序进行确定,具体的设置方法就是直接写如下C语言语句:

IP = 06H; // 如果5个中断同时发生,则响应次序为:定时器0 -> 外中断1 -> 外中断0 -> 定时器1 -> 串行中断

下面给出IP寄存器中每位(共8位)的含义:
PX0(IP.0),外部中断0优先级设定位;
PT0(IP.1),定时/计数器T0优先级设定位;
PX1(IP.2),外部中断0优先级设定位;
PT1(IP.3),定时/计数器T1优先级设定位;
PS (IP.4),串行口优先级设定位;
PT2 (IP.5), 定时/计数器T2优先级设定位(80C52的T2)
IP.6和IP.7无意义,均为0(在C51中PT2也设置为0)。

ps:IP默认值为00H,此时优先级顺序为:
外部中断0 > 定时/计数器0 > 外部中断1 > 定时/计数器1 > 串行中断
夜猫叫枫子
2011-01-14 · TA获得超过1160个赞
知道小有建树答主
回答量:704
采纳率:0%
帮助的人:491万
展开全部
具体设置看书就知道了,自己解决问题,才能真正掌握。优先级,只有两个优先级,也就是说,如果有多个中断,那只能是有一个是最优先的,其它的按照同等处理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喂猫名字被注册
2015-10-31 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:77
采纳率:0%
帮助的人:66.6万
展开全部
单片机已经定好了中断优先级,你可以进入中断处理函数的时候关掉总中断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fattian8321
2011-01-14 · TA获得超过502个赞
知道小有建树答主
回答量:178
采纳率:100%
帮助的人:219万
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式