求高人指点:如何判断管脚50ms一直都是高(低)电平?

2020-02-01 16:27发布

本帖最后由 OKKK 于 2012-12-26 23:47 编辑

RT
        while(!port_int0)
             {
        delay_ms(50);
         while(!port_int0)
        {
        //
        }
                       
             }   
就不可以,求方法!!   
另外:已经查看相关资料,51好像很难判断这个。因为外部中断只有下跳和低电平。求高手指点迷津!!!感激不尽。                                       


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
Tliang
2020-02-02 13:56
下降沿中断,定时器计时不中断。
IO中断,等待计时到或IO跳变。
判断计时是否溢出或未到时间IO即跳变、

TH0 = 0X3C;
TL0 = 0XB0;
TR0  = 1;
TF0 = 0
while((!TF0) && (!P3_2));
TR0 = 0;
if(TF0 && P3_2)              //定时溢出且IO已经变高
else if(TF0)                     //时间到IO未变高
else                               //IO变高,时间未到。
可以将TH0和TL0的值读出判断在一定范围内的IO变高为有效。
if(((TH0 << 8) | TL0 > 60000) && P3_2)

一周热门 更多>