怎样用51单片机定时器测一个高电平的持续的时间?谢谢
如果高电平时间比较短(大概35ms以内)可以使用外部中断的下降沿中断,当外部中断发生时关闭定时器,记录定时器TH0TL0的值,记录的定时器TH0TL0的值就是高电平的时间、等待中断输入引脚电平为高电平,清零TH0TL0并启动定时器,反复循环。如果高电平的时间大于35ms,则需要打开定时器中断,定时器溢出一次中...
51单片机 C语言 怎样测量高电平持续的时间
假设定时器不溢出,P1.0为高电平输入引脚:while(P1^0==1);\/\/等待眼前的高电平过去 while(P1^0==0);\/\/等待下一个高电平来到 TR0=1;\/\/启动定时器 while(P1^0==1);\/\/等待高电平结束 TR0=0;\/\/关闭定时器 HIGH=TL0+TH0*256;\/\/读取时间 ...
怎么用8051单片机来控制检测一个高电平信号持续5秒,超过5秒后发出警报...
信号高电平接到51的一个IO脚,,,写一段程序读取该脚,,,为高电平就开始计时,,,超过5 秒,,,输出一个低电平到某个IO脚报警就是了...
51单片机的定时器的时间怎么算??
51单片机1个机器周期=12个时钟周期,频率为12MHZ,则一个机器周期为1US,具体到定时器程序就是,假如你想定1MS,那么单片机每次加一个一,就要过1US,那么1MS就要加1000次,所以用65535-1000=64535;再把64535换成16进制为FC17,把FC付给TH0,17给TLO,即可定时1MS,因为65535他就溢出进入中断。
单片机Io口检测到高电平最短时间是多少
51单片机检测输入的高电平方法:引脚设置为输入状态,输出一个1就行。这是单片机的设计者、生产厂家所规定的。在这个前提下,外界,只有输入低电平,才会改变引脚的状态;输入高电平,是没有反应的。如果,外设一定要送来高电平,那就必须加上一个反相器,再连接到单片机的引脚即可。切忌要将单片机的检测...
51单片机测占空比和周期程序求解
2、利用一个独立的外部中断,在测量完频率后启动。(1)先开启中断,并设置为上升边沿触发;(2)方波从低电平跳变到高电平后,中断触发后,将其设置为下降边沿触发,同时启动定时器;(3)第二次触发中断后,停止计时,两次中断之间的间隔修正补偿后,就是高电平的持续时间Tu。占空比可以计算出来,就...
51单片机怎么识别一个高电平?
首先确认在P21已经有上拉为高的情况下,接在339输出口,是不是为低,然后让339为高后,P21口是否为高,用表测下,再写程序。P2=0,是不能这样写的,做为输入口,之前都得送1。除非可用没有内部上接的P0口,做这些,硬件状态很重要,先确认339一定有输出哦。
51单片机如何用计数器检测脉冲信号(高低电平),程序怎么做!没有思路...
可以利用51单片机的计数器T0、T1,例如用计数器0的外部计数脉冲输入端T0计数,当计满100个脉冲数量后,触发中断。进入计数服务中断程序。如果有脉冲信号,经过电容微分后,在下降沿会产生一个向下的尖端脉冲,电阻R2是作为一个偏置,当有向下的尖端脉冲来后,反相端的电压会低于同向端的电压。从而比较器...
如何检测上升和下降沿?
其实你的问题问得不是很明白~~你是不是想测出高电平的持续时间呢??如果是的话!你可以用增强型51单片机的上升沿捕捉和下降沿捕捉!!然后读出定时器中的两个数值相减,再去乘上机器周期,就可以算出高电平的持续时间!
单片机如何检测一个模块输出的高电平
有两个办法,1. 模块输出高电平时,其内部仅仅是虚电压,可以认为是只能提供电压,不能提供电流,而在其输出低电平时,内部可以接受比较大的灌电流(即负电平时可以吸收比较大的MA级电流),那么,就可以在CPU口与模块联接的地方上拉一电阻,能够解决这种办法.2. 模块不管输出高电压或低电压,都是虚电压,...