51单片机c语言编程中产生中断的条件是什么

 我来答
物理公司的
推荐于2017-10-02 · TA获得超过5696个赞
知道大有可为答主
回答量:6105
采纳率:86%
帮助的人:1379万
展开全部
三个:
1.总中断使能位EA=1
2.相应中断使能 (ET0、EX0……) 打开
3.中断源:外部中断引脚的电平触发、定时器溢出……

oid PxInt0(void) interrupt 0 //定义外部中断0
void PxInt1(void) interrupt 2 //定义外部中断1
void time0_int(void) interrupt 1 //定义定时器0
void time1_int(void) interrupt 3 //定义定时器1

这里为什么是 0 1 2 3的顺序呢~?其实是单片机内部默认的,顺序依次是:
0 外部中断0
1 定时/计数器0
2 外部中断1
3 定时/计数器1
4 串行口中断
这个是没有什么理由的,记住就行,以后要定义一个中断的时候,定义的是哪一个,就在后面加上它的序号就行了,比如void PxInt0(void) interrupt 0 表示外部中断0,就在后面加上interrupt 0.

逐词解释的话。。。如:void PxInt0(void) interrupt 0
void的意思是没有返回值,Pxint0(void)是你定义的函数名,interrupt表示你定义的是中断函数,0表示你定义的是外部中断0
后面的依此类推。
另外,中断函数不需要在main函数前声明,当单片机检测到中断所需的信号时,它会自动立即停止正在进行的工作进入中断函数。
意法半导体(中国)投资有限公司
2019-10-28 广告
外部中断(INT0): I0(void) interrupt 0//interrupt 0用于外部中断INT0 {//中断执行的内容} 定时器/计数器中断(T0): T0(void) interrupt 1//interrupt 1用于定时... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
玄雍2b
2012-08-03
知道答主
回答量:43
采纳率:0%
帮助的人:9万
展开全部
必须满足4个条件:
1:一条指令执行结束
2:CPU处于开中断状态
3:当前没有发生复位,保持和非屏蔽中断请求
4:若当前执行的指令是开中断指令和中断返回指令,则它们执行完后再执行一条指令,CPU才能响应INTR请求
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ch314156
推荐于2017-09-28 · TA获得超过4378个赞
知道小有建树答主
回答量:2036
采纳率:100%
帮助的人:1069万
展开全部
三个:
1.总中断使能位EA=1
2.相应中断使能 (ET0、EX0……) 打开
3.中断源:外部中断引脚的电平触发、定时器溢出……
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式