基于51单片机的电源延时检测器的设计 作者: 时间:2016-11-26 来源:网络 加入技术交流群 扫码加入和技术大咖面对面交流海量资料库查询 收藏 //此程序应一个网友要求而作, 批初步在硬件上测试通过//晶振11.0592M,50ms常数是4c00,2ms常数是f8cc//功能为检测断电延时时间,是否合格(是否在2ms到50ms之间。)//2007/12/24#includesbit led0=P1^0;//显示错误sbit led1=P1^1;//显示错误//led0与led1同时亮,则测试通过,只亮一个,则错误,两个全不亮,则异常sbit starttest=P1^2;//检测开始信号,被测电源关闭时,同时产生的信号sbit test=P1^3;//高电平等待void main(void){unsigned int testtime=0;TMOD=0x01;EA=1;TH0=0;//初值为0,这样可以定时到最大的值,所测时长不能超过此值(此程序中约71ms)TL0=0;while(1){starttest=1;//初始化检测点test=1;//初始化检测点if(starttest){led0=1;led1=0;}else{if(!test){led0=0;//如果有了测试信号,但test为0,则异常led1=0;}else{TH0=0;TL0=0;TR0=1; //开始对内部时钟计数(开始测试)while(test);//等待延时完成TR0=0;testtime=TH0*256+TL0;if(0x4c00{led0=1;led1=0;}else{led0=0;led1=1;}}}}}
评论