请问,如何用51单片机测一个持续的低电平的时间,最好是C语言版
发布网友
发布时间:2023-10-29 19:51
我来回答
共1个回答
热心网友
时间:2023-11-19 18:33
可以将被测对象接入到外部中断来做。
#include<reg51.h>
unsigned int cnt;
unsigned long int t;
sbit l_p=P3^2;
bit flag=0;
void ext0() interrupt 0
{
TR0=1;
while(l_p==0);
TR0=0;
flag=1;
}
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EX0=1;
EA=1;
while(1)
{
if(flag) t=cnt*50000+(TH0*256+TL0);
}
}来自:求助得到的回答