微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51外部中断问题,求大神之解啊!

51外部中断问题,求大神之解啊!

时间:10-02 整理:3721RD 点击:
外部中断1,INT1(P3^3)口子的电平由高变到低的过程中,是不是TH1和TL1在计数?如果是,但是如果计数已经达到极限值时就不在计数了,怎么保证计数正确?本人对于外部中断不是很懂求解啊!

,INT1(P3^3)口子的电平由高变到低的过程中,是在计数。极限值就溢出啊,之后怎么样是看你设的Tmode是什么模式,16位要重新装载,8位的话自动重装,想计数准确的话就拿多个定时器开定时模式对P3^3口输出脉冲即可。

51的INT1是外部中断1。和计数器无关。当然你外部中断不够用的话可以用计数器初值max-1的形式用T0或者T1扩充成一个中断用。
中断就是CPU正在跑指令的过程中,外部事件触发后产生,目的是让单片机及时处理更重要的事情。

首先,计数器和外部中断是两个分开的东东,之间没有硬性联系

其次,你可以在T0口输入方波,把单片机T0设置为计数器模式,这样,TMOD  = 0x05;
    TL0   = 0x00;
    TH0   = 0x00;
这样,每输入一个方波,TL0,TH0就会计数

如果整外部中断的话,就在中断函数里写个i++吧

我也是新手,欢迎交流

首先搞清,外部中断和定时器不是一个东西,想计时间就用定时器,外部中断也有高电平触发和下降沿触发,高电平触发计数没有什么意义

多看看书的讲解吧

呵呵,新手学中断,可以先看些简单的中断程序,再配合书上状态字的功能来学习

定时器和外部中断不同,引脚也不同了,外部中断有两种溢出方式:跳沿、电平。也可以把定时器作为外部中断,初值均为0xff

定时器和外部中断主要是触发方式不一样,中断标志位不同。所用的方面不同

看来新手是容易搞混,因为计数器也可以作中断用的,但是tine0、1与int0、1是有区别的。

有个字母打错了:看来新手是容易搞混,因为计数器也可以作中断用的,但是time0、1与int0、1是有区别的。

谢谢大家了     我总算搞懂了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top