51单片机外部中断怎么用?及外部只提供两种外部中断及两种中断怎么使用。

jackxiang 2015-1-3 20:44 | |

有个P3^0口是接受外面的数据的,刚开始我让P3^0=0; 一旦有数据过来,P3^0的值就自动变成1了。  所以我想写一个外部中断,就是当P3^0=1时进入中断程序。请问该怎么写?麻烦用c语言写个范例,只需要写那些什么EA,TR0之类的东西怎么设置以及那个中断函数就行,谢谢啦!!!PS:这个P3^0口我已经用到它的SBUF那个功能了,也就是说已经开过一个中断了,不知道再写个中断函数会不会有影响?

这个接一个非门(7406或74ls04) 一端接P3.0 一端接P3.2  P3.0为1时 P3.2为0 进外部中断 P3.0为0时 P3.2为1 不会进中断。。。
void main()
{
EA=1;     //开中断
EX0=1;   //开外部中断0
while(1)
{
  ..........................
}
}

老大啊,51系列P3.0不能用于外部中断的,只有P3.2和P3.3可以用于外部中断,都只能是低电平和下降沿两个方式触发的,其他的脚办不到。

来自:http://zhidao.baidu.com/link?url=BjFowvXNkuq-XnIS9R56lbIfcm3Ee2fd1G-p8GsWph-bB77d6__kaxX1G0HPA106aosg2fY-rQovGYOd4GUv2K


低电平触发和下降沿触发有什么区别?
低电平触发是中断允许后,只要中断引脚的信号是低电平,就触发中断,使用时注意,如果低电平一直保持,会导致多次触发中断。
下降沿触发是中断允许后,只要中断引脚的信号出现下降沿,就触发中断,使用时注意,如果信号出现抖动,会导致多次触发中断。

来自:http://zhidao.baidu.com/link?url=FE-QPtruEcM3hLHKfns1yPxUQdGwV3kz2UB0hZ3j9a5F3qPyGwhhrGcjB_bfP7OhUAgmYVALN0xGLB_Tz5iiJ_

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/7719/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2015-1-3 20:45
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]