很久前做过的一个电子万年历,拿来和大家分享一下,做成实物在家里放着跑了2年多了,极其稳定,日误差小于1秒。

唯一的问题:不用DS1302虽然是省去了不少焊接的功夫,但是程序掉电又得重设时间,所以建议接交流电+蓄电池浮充,这样就不会掉电了,完美解决问题,可以跑一个月都不用调时间。

 

源代码:

#include <reg52.h>		                                   
typedef  unsigned int u16;	 
typedef  unsigned char u8; 
sbit k2=P3^2;                                            //K1 K2 K3 K4按键接口,建议从左到右接K1-K4
sbit k1=P3^5;
sbit k3=P3^3;
sbit k4=P3^4;
sbit DQ=P3^6;
sbit beep=P1^6;    
sbit Data=P2^0;                                             //有源蜂鸣器在P16口
sbit lcden=P1^4;                                                //LCD1602接口定义
sbit lcdrs=P1^0;                                                   
sbit lcdrw=P2^6;
sbit bg=P2^7;                                                //背光变量接入LCD1602的K极,通过bg的高低电平就可控制自动熄灭与点亮
u8 k,e,d,o=1,p=1,temp,nxflag=0,mbflag=0,tianmax;      
float temperature;                                           //温度变量,18B20接收时为浮点数
u8 miao1,miao2,fen1,fen2,shi1,shi2,tian1,tian2,wk,tem1,tem2,tem3,wendufu;
u8 day=1,mon=1,day1,day2,yue1,yue2,mbw,n=0,m=0,beiguang,RH,RL,TH,TL,tempH,tempL;
u8 se1,se2,mon1,mon2,hou1,hou2,min1,min2,MB2,nian1,nian2,nian3,nian4; 
u16 y,MB1;
u16 temper,buchang,tempwarn=0,tempwarn1=500;                //tempwarn为温度下限,1为温度上限
u8 code set[]={"NaoZhong  Status"};                                    //上电后傻瓜调节模块
u8 code tempwarng[]={"Wendu Waring!"};
u8 code temmin[]={"Min"};
u8 code temmax[]={"Max"};                
u8 code naozhongON[]={" ON"};
u8 code naozhongOFF[]={"OFF"};
u8 code setsucces[]={"Set Success!"};
u8 code thanks[]={"Welcome to use !"};
u8 code thanksu[]={"thanks for using"};
u8 code make[]={"Designed by LY"};
u8 code MB[]={"Stopwatch"};
u8 code week1[]={"[MON]"};
u8 code week2[]={"[TUE]"};
u8 code week3[]={"[WED]"};
u8 code week4[]={"[THU]"};
u8 code week5[]={"[FRI]"};
u8 code week6[]={"[SAT]"};
u8 code week7[]={"[SUN]"};                        
void delay(unsigned int z)                                   //定义延时函数
{                                           unsigned int x,y;			for(x=z;x>0;x--)for(y=1;y>0;y--);
}
void DHT11_delay_us(u8 n)
{while(--n);
}
void DHT11_delay_ms(u16 z)               //定义DHT11延迟函数
{u16 i,j;for(i=z;i>0;i--)for(j=110;j>0;j--);
}void DHT11_start()
{Data=1;DHT11_delay_us(2);Data=0;DHT11_delay_ms(20);   //延时18ms以上Data=1;DHT11_delay_us(30);
}
u8 DHT11_rec_byte()      //接收一个字节
{u8 i,dat=0;for(i=0;i<8;i++)       //从高到低依次接收8位数据{          while(!Data);       //等待50us低电平过去DHT11_delay_us(8);   //延时60us,如果还为高则数据为1,否则为0 dat<<=1;           //移位使正确接收8位数据,数据为0时直接移位if(Data==1)        //数据为1时,使dat加1来接收数据1dat+=1;while(Data);       //等待数据线拉低    }  return dat;
}
void DHT11_receive()      //接收40位的数据{u8 R_H,R_L,T_H,T_L,revise; DHT11_start();if(Data==0){while(Data==0);   //等待拉高     DHT11_delay_us(40);      //拉高后延时80usR_H=DHT11_rec_byte();    //接收湿度高八位  R_L=DHT11_rec_byte();    //接收湿度低八位  T_H=DHT11_rec_byte();    //接收温度高八位  T_L=DHT11_rec_byte();    //接收温度低八位revise=DHT11_rec_byte(); //接收校正位DHT11_delay_us(25);      //结束if((R_H+R_L+T_H+T_L)==revise)      //校正{RH=R_H;RL=R_L;TH=T_H;TL=T_L;} }}
void beepon()                                                //PWM(如果你是无源蜂鸣器,这里写PWM函数)
{	                                                     //当前为有源蜂鸣器,有源蜂鸣器无需更改beep=0;delay(1200);beep=1;     
}	 
void write_nian();                                  //预定义
void write_yue();
void write_tian();
void write_shi();
void write_fen();
void write_miao();
void write_week();
void zhuanhuan();
void write_temp();
void write_nz();
void nzON();
void write_setsuccess();
void beiguangpd();void write_com(u8 com)                                    //LCD1602初始化程序,了解1602时序图后新手的话可以直接照搬使用                                     
{lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;
}
void write_data(u8 date)
{lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;
}
void init()
{lcdrw=0;lcden=0;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80+0x10);  
}	
void Timer0Init()	                                            //定时器0工作方式1 中断初始化,923位12M晶振在KEIL仿真后的计算结果
{   TMOD=0X01;TH0=(65535-901)/256;	TL0=(65535-901)%256;	ET0=1;                                          //打开定时器0中断允许位EA=1;                                         //打开总中断允许TR0=1;			                         //打开 定时器0,开始计时
}Init_DS18B20(void)                                    //DS18B20初始化与时序图程序,仿真时温度问题改进这个初始化程序就解决了{ DQ=1;delay(70); DQ=0; delay(485); DQ=1; delay(50); } 
ReadOneChar(void)                                      //18B20读一个字节 {  unsigned char i=0; unsigned char dat=0; for (i=8;i>0;i--) { DQ=1; delay(1); DQ=0; dat>>=1; DQ=1; if(DQ) dat|=0x80; delay(4); } return(dat); }  
WriteOneChar(unsigned char dat)                     //18B20写一个字节{ unsigned char i=0; for(i=8;i>0;i--) { DQ=0; DQ=dat&0x01; delay(5); DQ=1; dat>>=1; } delay(4); } 
ReadTemperature(void)                           //读取温度函数定义,返回值为浮点数{ Init_DS18B20(); WriteOneChar(0xcc); WriteOneChar(0x44); delay(125); Init_DS18B20(); WriteOneChar(0xcc); WriteOneChar(0xbe); tempL=ReadOneChar(); tempH=ReadOneChar(); if(tempH>0x7f){tempH=~tempH;tempL=~tempL+1;wendufu=1;}elsewendufu=0;temperature=(((tempH*256)+tempL)*0.0625)*10;delay(200); return(temperature); } 
void welcome()                                       //定义欢迎函数
{ static u8 i;init();                                              //初始化1602delay(5000);for(i=0;i<16;i++){write_com(0x80+i);write_data(thanks[i]); delay(4000);}delay(50000);for(i=0;i<14;i++){write_com(0x81+0x40+i);write_data(make[i]);delay(4000);}delay(50000);delay(50000);
}void pdtian1()                          //PD在上电后设置完毕主界面处的天数判断
{if((p==1||p==3)||(p==5||p==7)||(p==8||p==10)||p==12)	tianmax=31;if((p==4||p==6)||(p==9||p==11))tianmax=30;if(p==2){if(((y%4==0)&&(y%100!=0))||(y%400==0))tianmax=29;elsetianmax=28;}
}
void pdxingqi1()                     //PD在上电后设置完毕至主界面处的星期判断
{static char c,yi,mt,xwk1,xwk2,xwk3;static int xwk,yn,xwk4;yn=y;if(p==1||p==2){ yn=yn-1; mt=p+12;}elsemt=p;yi=yn%100;c=yn/100;xwk1=yi+(yi/4);xwk2=c/4;xwk3=2*c;xwk4=(26*mt+26)/10;xwk=xwk1+xwk2-xwk3+xwk4+o-1;while(xwk<0){xwk+=7; }wk=xwk%7;
}
void Display()                                //定义主程序 显示部分函数模块
{  	 static u16 xunhuan;RH=RH%100;write_nian();                          //1602写入显示年write_com(0x84);write_data('-');                               write_yue();                        //写入月write_com(0x87);write_data('-');write_com(0x88);write_tian();                         //写入天write_week();write_shi();write_com(0x82+0x40);write_data(':');write_fen();write_com(0x85+0x40);write_data(':');write_miao();	                   //写入温度,温度TEM1与2与3是温度的三位数							 xunhuan++;if(xunhuan<180){if(wendufu==1){	if((temper/100)!=0){write_com(0x89+0x40); write_data('-'); write_com(0x8a+0x40); write_data(tem1);   }else{write_com(0x89+0x40); write_data(' ');  write_com(0x8a+0x40); write_data('-');  }}else {write_com(0x89+0x40); write_data(' ');if((temper/100)!=0)  {write_com(0x8a+0x40); write_data(tem1);}else{write_com(0x8a+0x40); write_data(' ');} }write_com(0x8b+0x40);write_data(tem2);write_com(0x8c+0x40);write_data('.');write_com(0x8d+0x40);write_data(tem3);write_com(0x8e+0x40);write_data(0xdf);write_com(0x8f+0x40);write_data('C');}if(xunhuan>180){write_com(0x89+0x40); write_data(' ');write_com(0x8a+0x40); write_data(' ');write_com(0x8b+0x40); write_data(RH/10+0x30);write_com(0x8c+0x40); write_data(RH%10+0x30);write_com(0x8d+0x40); write_data('%');write_com(0x8e+0x40);write_data('R');write_com(0x8f+0x40); write_data('H');}if(xunhuan==360)xunhuan=0;	  
}
void NZdisplay()                                    //定义闹钟模块
{static u8 nzflag=2,nzwei;                        delay(2000); init();delay(2000);nzON();                                         //闹钟开关选择模块while(k4)                                     //没有检测到K4键退出时无限循环{  write_nz();                         //写入闹钟模块if(k3==0)                        //判断K3键是否按下{ delay(5000);if(k3==0)                      //延时消抖{beepon();                       //响一声if(nxflag==0)                        //如果NXFLAG为0,闹钟为关闭状态,给其赋值为1,nxflag=1;elsenxflag=0;                                }nzON();                           //判断闹钟的状态}if(k1==0)                             //如果K1键按下后{delay(8000);if(k1==0){beepon();if(nzwei==0)                             //通过NZWEI来判断当前光标的位置与设置小时还是分钟nzflag=0;if(nzwei==1)nzflag=1;} }if(nzflag==0){ while(1){	write_com(0x83+0x40);             //光标闪烁write_data(0xff);delay(5000);write_nz();                        //写入闹钟delay(5000); if(k2==0)                           //如果K2为0{delay(50);if(k2==0){ beepon();                         //判断小时状态,进行+1if(n<23)n+=1;elsen=0;}}if(k3==0)                         //如果K3为0{delay(50);if(k3==0)                       //判断小时状态,进行-1 最大溢出重回最小,最小溢出重回最大{ beepon();if(n>0)                          n-=1;elsen=23;}}if(k1==0){ delay(1000);                  //如果K1按下,更改NZFLAG,更改闹钟光标位if(k1==0){nzflag=1;	beepon();break;}}if(k4==0)                          //如果K4按下,退出。给NZFLAG重新赋值为2,取消光标并下次进入不会直接进入光标{beepon();delay(6000);nzflag=2;nzwei=0;break;	 }}}if(nzflag==1)                             //如果NZ为1,同上,此时为分钟调节{  while(1){	write_com(0x86+0x40);write_data(0xff);delay(5000);write_nz();delay(5000);if(k2==0){delay(50);if(k2==0){ beepon();if(m<59)m+=1;elsem=0;}}if(k3==0){delay(50);if(k3==0){ beepon();if(m>0)m-=1;elsem=59;}}if(k1==0){delay(1000);if(k1==0){beepon();nzflag=0;break;}}if(k4==0){ beepon();delay(6000);nzflag=2;nzwei=1;break;	 }}}if(k4==0){beepon();delay(30000);break;}	}nzflag=2;init(); 
}
void temperwaring()                           //定义温度警报模块
{  static u8 temflag=2,temwei;                        delay(5000);init();delay(5000);while(k4){ 	write_temp();                                //写入温度if(k3==0)                           //如果K3为0,为其赋值为N0-N0,关闭温度警报,并且不会闪烁光标{ beepon();delay(3000);tempwarn=(0X4e-0x30)*100;tempwarn1=(0X4e-0x30)*100;}if(k1==0)                        //如果K1为0,进入光标位,光标闪烁,根据temwei不同进入不同的初始闪烁位置{delay(8000);               if(k1==0){beepon();if(temwei==0)                     //为只需单独打开温度上限或下限报警时提供方便temflag=0;if(temwei==1)temflag=1;} }if(temflag==0)                       //和闹钟模块 类似,如果temflag为0的话进入下限调整,否则进入上限调整{ while(1){	write_com(0x86+0x40);write_data(0xff);delay(6000);write_temp();delay(4000);if(k2==0){delay(50);if(k2==0){ beepon();if(tempwarn<500)                              //温度范围为精确到小数点后1位,500为50.0度,自己设置每次只调节1度tempwarn+=10;                                 //如果需要温度报警精确到0.1度,请将此处改为1并重新修改界面elsetempwarn=0;}}if(k3==0)                  {delay(50);if(k3==0){ beepon();if(tempwarn>0&&(tempwarn!=(0X4e-0x30)*100))       //K3键按下,判断当在关闭状态与一般状态时,温度阀门下限减1度tempwarn-=10;elsetempwarn=500;}}if(k1==0)                                 //如果检测K1按下,跳出循环,给FLAG重新赋值为1,光标开始在温度上限处闪烁{ delay(1000);                              //并且开始调节温度上限temflag=1;	                                beepon();break;}if(k4==0)                            //如果K4等于0,第一次确定,光标停止闪烁,K2K3不会更改数值{                                    //目的是在确定无误后在下次按下K4时可以直接退出beepon();delay(6000);                    temflag=2;temwei=0;break;	 }}}if(temflag==1)                   //进入温度修改上限部分,同温度修改下限{  while(1){	write_com(0x89+0x40);write_data(0xff);delay(6000);write_temp();delay(4000);if(k2==0){delay(50);if(k2==0){ beepon();if(tempwarn1<500)tempwarn1+=10;elsetempwarn1=0;}}if(k3==0){delay(50);if(k3==0){ beepon();if((tempwarn1>0)&&(tempwarn1!=(0X4e-0x30)*100))tempwarn1-=10;elsetempwarn1=500;}}if(k1==0){beepon();delay(1000);temflag=0;break;}if(k4==0){ beepon();delay(6000);temflag=2;temwei=1;break;	 }}}if(k4==0)                                           //当光标不闪烁时,按下K4键,直接退出{beepon();delay(30000);break;}	}temflag=2;                           //temflag重新赋值为2,目的是确保下次进入不会直接进入光标调节模块init();ET0=1;                       //这样就可以方便的快速关闭温度报警及快速设置上下限}
void miaobiaods()                           //定义秒表显示模块
{static u8 i,times;delay(1000);init();delay(10000);while(1)
{ 
if(MB1==10000)                           //MB1位16位数,所以秒表在0.00-100.00的计数范围使用MB1,超出后清0累加MB2
{MB1=0;MB2++;}if(MB2==100)                  //如果秒表超出了10000秒,直接清零,若想修改更大秒表范围请将MB2定义为16位数再修改,并修改显示界面{MB2=0;MB1=0;mbflag=0;}for(i=0;i<9;i++)                   //1602循环显示STOPWATCH{write_com(0x84+i);write_data(MB[i]);				}write_com(0x83+0x40);                   //显示秒表运行状态模块write_data(times/10+0x30);write_com(0x84+0x40);write_data(times%10+0x30);                 //TIMES为计数部分,不为0时每次暂停可以计数一次write_com(0x86+0x40);write_data(MB2/10+0x30);write_com(0x87+0x40);                     //秒表高位MB2与低位MB1转换为16进制数显示write_data(MB2%10+0x30);write_com(0x88+0x40);write_data('.');write_data((MB1/1000)+0x30);write_com(0x8a+0x40);write_data(MB1%1000/100+0x30);write_com(0x8b+0x40);write_data('.');write_com(0x8c+0x40);write_data(MB1%1000%100/10+0x30);write_com(0x8d+0x40);write_data(MB1%1000%100%10+0x30);if(k1==0)                                      //由于秒表对精度要求很高,必须直接中断不能延时{mbflag=1;                                     //因此也不能只用一个K1进行开始于暂停beepon();	}                             //此时按下K1键为打开秒表,会有立刻的响铃以便直观表明计时开始if(k2==0)                                             //和以上原因一样,秒表暂停{mbflag=0;                                           //按下K2键为暂停beepon(); if(MB1!=0)                                          //如果不为0,计次+1{ delay(40000);if(times<99)                                       //计次范围0-99times+=1;}}if(k3==0)                                         //按下K3,秒表数据清0{beepon();mbflag=0;times=0;MB1=0;MB2=0;}if(k4==0){beepon();                             //K4为0,退出秒表,如果打开秒表也可直接退出,秒表与时间并不冲突break;}}delay(1000);init();                            //延时初始化,确保时间充足无乱码delay(10000);
}
void naozhongfamen()                            //主界面上判断是否进入闹钟设置界面的模块 
{ if(k3==0){	delay(50000);                                  //如果K3长按,进入闹钟if(k3==0){beepon();delay(3000);NZdisplay();delay(10000);write_setsuccess();delay(30000);                                    init();}}
}
void wendufamen()                                 //主界面上判断是否进入温度报警设置界面的模块 
{ if(k2==0){	delay(50000);if(k2==0){ beepon();delay(3000);temperwaring();                                    delay(10000);write_setsuccess();delay(30000);init();}}
}
void miaobiao()                       //主界面上判断是否进入秒表的模块 
{  if(mbflag==1)
{if(MB1>10000)
{MB1=0;MB2++;}if(MB2==100){MB2=0;MB1=0;mbflag=0;}
}if(k4==0){ delay(50000);if(k4==0){beepon();delay(3000);miaobiaods();delay(10000);init();}}
}
void Timer0() interrupt 1	               //定义中断函数,923为12M晶振的精度,如果是11.05M晶振请根据仿真或实测自行改变这个值
{	 static u16 i;	TH0=(65535-901)/256;	TL0=(65535-901)%256;	i++;                                   //i为秒,不断累加beiguangpd();                              //进行背光判断,确保背光第一时间响应if(mbflag==1){                                         //如果检测到打开秒表了,就开始秒表位累加mbw++;if(mbw==10){mbw=0;MB1++;}}if(i==1000)                           //如果检测到1000,秒+1{k++; i=0;if(beiguang<60)                       //如果背光变量小于60,此时背光打开beiguang++;buchang++;	 DHT11_receive();temper=ReadTemperature();               //检测温度,检测周期是1S}	if(k==60)                                  //判断各个变量,也可将这些放到其他模块里,但是精度未必会提高{k=0;e++;}if(buchang==4955)                                     //精度补偿部分,不一定适合你的晶振{buchang=0;k+=1;}if(e==60){e=0;d++;}if(d==24){ d=0;o++;if(wk<6)wk++;elsewk=0;}if(o==tianmax+1){o=1;p++;}if(p==13){p=1;y++;}
}	 
void bijiao()                                 //比较模块,也是报警触发模块
{static u8 gbflag;if(m==e&&n==d)                                  //如果闹钟时间相同,开始响铃,时长1分钟{if(gbflag==0)                                   //如果不是在响铃并按键关闭后,才会响铃
{if(nxflag==1)                                 //如果闹钟为开启状态响铃,否则不响beepon();if(k2==0||k3==0||k4==0)                        //如果有K2,K3,K4任何一个按键触发,就会将gbflag设置为1,停止响铃gbflag=1;                                       //因为K1键快速按下还有快捷粗调暂停1秒的功能,所以没有K1键}}elsegbflag=0;                              //响铃完毕后给gbflag赋值为0;if(e==0&&k==0)                                      //整点报时模块,设置为7到24点整点报时,可改范围,不会影响休息也比较合适{if((d>6&&d<24)||d==0)beepon();}			if((tempwarn!=(0X4e-0x30)*100)){if(wendufu==1)beepon();}if((tempwarn!=(0X4e-0x30)*100)||(tempwarn1!=(0X4e-0x30)*100))          //判断温度阀门打开了上限还是下线还是关闭还是上下限同时打开{ if((tempwarn==(0x4e-0x30)*100)&&(tempwarn1!=(0X4e-0x30)*100))               //判断完毕后只要触发就会报警{if(tempwarn1<temper){beepon();}}if((tempwarn!=(0x4e-0x30)*100)&&(tempwarn1==(0X4e-0x30)*100)){if(tempwarn>temper)beepon();}if((tempwarn!=(0X4e-0x30)*100)&&(tempwarn1!=(0X4e-0x30)*100)){ if((tempwarn>temper)||(tempwarn1<temper)){beepon();		}}}
}
void zhuanhuan()                                   //转换模块,将时间变量转换为1602的16位显示数值
{ nian1=(y/1000)+0x30;nian2=(y%1000/100)+0x30;nian3=(y%1000%100/10)+0x30;nian4=(y%1000%100%10)+0x30; yue1=(p/10)+0x30;yue2=(p%10)+0x30;tian1=(o/10)+0x30;tian2=(o%10)+0x30;shi1=(d/10)+0x30;shi2	=(d%10)+0x30;fen1=(e/10)+0x30;fen2=(e%10)+0x30;miao1=(k/10)+0x30;miao2=(k%10)+0x30;tem1=(temper/100)+0x30;tem2=(temper%100/10)+0x30;tem3=(temper%100%10)+0x30;
}
void tiaojie()                                         //光标调节时间模块
{ static u8 flag=0;	   if(k1==0)                                           //检测到K1按下一段时间后,开始调节光标{	 delay(30000);if(k1==0){beepon();                                                 //因为会关闭中断并且停秒,所以给软件补偿buchang值清0buchang=0;  while(1){ ET0=0; pdtian1();                                       //此时中断已关闭,开始循环判断pdxingqi1();                                       //判断天数与星期,比如在将时间调到3月31号后再调到2月zhuanhuan();                                    if(o>tianmax)o=tianmax;write_week();                                     //天数就会自动调节到28日,确保不会超出范围,并自动调出星期write_tian();if(k4==0)                                                           //如果按下K4,就停止时间光标调节并跳出循环{beepon(); break;}if(flag==0)                                //flag调节位置判断位{ write_miao();delay(5000);write_com(0x87+0x40);write_data(0xff);delay(5000);if(k2==0){                                    //此时调秒beepon();if(k<59)  k+=1;else  k=0;}if(k3==0){beepon(); if(k>0) k-=1;else k=59;}	if(k1==0){beepon();flag+=1;	}write_miao();}if(flag==1)                                      //此时调分{  write_fen();delay(5000);write_com(0x84+0x40);write_data(0xff);delay(5000);if(k2==0){beepon(); if(e<59) e+=1;else e=0;	 }if(k3==0){beepon();if(e>0)  e-=1;else    e=59;}if(k1==0){ beepon();flag+=1;	 }write_fen();} if(flag==2)                                          //此时调时{  write_shi();delay(5000);write_com(0x81+0x40);write_data(0xff);delay(5000);if(k2==0){beepon(); if(d<23) d+=1;else  d=0;	}if(k3==0){beepon();if(d>0) d-=1;else   d=23;}if(k1==0){beepon();flag+=1;}write_shi();}if(flag==3)                                      //此时调天   天、月、年会影响星期,所以在这里加入判断星期模块{ write_tian();delay(5000);write_com(0x89);write_data(0xff);delay(5000);if(k2==0){beepon(); if(o<tianmax)o+=1;else o=1;	}if(k3==0){beepon();pdtian1();if(o>1)o-=1;else	o=tianmax;}if(k1==0){ beepon();flag+=1;}write_tian();}if(flag==4){   write_yue();                                                //此时调月delay(5000);write_com(0x86);write_data(0xff);                                //循环闪烁光标delay(5000);if(k2==0){beepon();if(p<12)p+=1;else p=1;	 }if(k3==0){beepon();if(p>1)p-=1; elsep=12;if(o>tianmax)o=tianmax;}if(k1==0){beepon(); flag+=1; }write_yue();}if(flag==5){     write_nian();                               //此时调年delay(5000);write_com(0x83);write_data(0xff);delay(5000);if(k2==0){ beepon();if(y<9999)y+=1;elsey=1; }if(k3==0){beepon(); if(y>0)y-=1;else y=9999;}if(k1==0){beepon();flag=0;}write_nian(); }//调节完毕并且K4确认后打开中断允许,开始走时}}   }ET0=1;}
void beiguangpd()                                         //背光判断模块
{if(k1==0||k2==0||k3==0|k4==0){	if(bg==1)                                        //如果再背光熄灭的情况下 ,按下任何键都会打开背光并响铃beepon();beiguang=0;                                    //无论是否熄灭,按下都会清零}if(beiguang==60)                      //如果检测到没有按键60S,背光自动熄灭bg=1;else bg=0;
}
void main()                                   //主函数
{	  bg=0;y=2017;p=5;o=25;DHT11_receive(); temper=ReadTemperature();welcome();                                    //欢迎NZdisplay();                                   //断电后第一个调节闹钟init();	 Timer0Init();                               //初始化定时器,但是没有打开ET0                             ET0=1;                             init();                                     //调节完毕后延时初始化并延时足够时间,确保不会乱码delay(50000);while(1)                                       //循环各个模块且不会冲突{ zhuanhuan();                                   bijiao();tiaojie();naozhongfamen();wendufamen();miaobiao();pdtian1();pdxingqi1();Display();}
}
void write_week()                                //1602写并显示星期模块
{  static u8 i;	switch (wk){case(1):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week1[i]);}break;case(2):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week2[i]);}break;case(3):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week3[i]);}break;case(4):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week4[i]);}break;case(5):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week5[i]);}break;case(6):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week6[i]);}break;case(0):for(i=0;i<5;i++){ write_com(0x8b+i);write_data(week7[i]);}break;}
}
void write_nian()                        //1602写并显示年模块
{write_com(0x80);write_data(nian1);write_com(0x81);write_data(nian2);write_com(0x82);write_data(nian3);write_com(0x83);write_data(nian4);
}
void write_yue()                                  //1602写并显示月模块
{ write_com(0x85);write_data(yue1);write_com(0x86);write_data(yue2);
}
void write_tian()                         //1602写并显示天模块
{write_com(0x88);write_data(tian1);write_com(0x89);write_data(tian2);
}
void write_shi()                             //1602写并显示时模块
{write_com(0x80+0x40);write_data(shi1);write_com(0x81+0x40);write_data(shi2);
}
void write_fen()                              //1602写并显示分模块
{write_com(0x83+0x40);write_data(fen1);write_com(0x84+0x40);write_data(fen2);
}
void write_miao()                             //1602写并显示秒模块
{write_com(0x86+0x40);write_data(miao1);write_com(0x87+0x40);write_data(miao2);
}
void write_temp()                            //1602写并显示温度报警设置模块
{ static i;for(i=0;i<13;i++){write_com(0x82+i);write_data(tempwarng[i]);}for(i=0;i<3;i++){write_com(0x80+i+0x40);write_data(temmin[i]);}write_com(0x83+0x40);write_data(0x7e);for(i=0;i<3;i++){write_com(0x8d+i+0x40);write_data(temmax[i]);}write_com(0x8c+0x40);write_data(0x7f);write_com(0x85+0x40);write_data(tempwarn/100+0x30);write_com(0x86+0x40);write_data((tempwarn%100/10)+0x30);write_com(0x87+0x40);write_data('-');write_com(0x88+0x40);write_data(tempwarn1/100+0x30);write_com(0x89+0x40);write_data((tempwarn1%100/10)+0x30);
} 
void nzON()                                           //1602写并显示闹钟设置打开及关闭模块
{ static u8 i;if(nxflag==0)
{    for(i=0;i<3;i++){write_com(0x8b+0x40+i);write_data(naozhongOFF[i]);}}if(nxflag==1)
{    for(i=0;i<3;i++){write_com(0x8b+0x40+i);write_data(naozhongON[i]);}}
}
void write_setsuccess()                                   //1602写并显示设置成功
{static u8 i;for(i=0;i<12;i++){write_com(0x82+i);write_data(setsucces[i]);}for(i=0;i<16;i++){write_com(0x80+i+0x40);write_data(thanksu[i]);}
}
void write_nz()                                           //1602写并显示闹钟设置模块
{	  static u16 n1,n2,m1,m2,i;	  n1=(n/10)+0x30;n2=(n%10)+0x30;m1=(m/10)+0x30;m2=(m%10)+0x30;for(i=0;i<16;i++){write_com(0x80+i);write_data(set[i]);}write_com(0x82+0x40);write_data(n1);write_com(0x83+0x40);write_data(n2);write_com(0x84+0x40);write_data(':');write_com(0x85+0x40);write_data(m1);write_com(0x86+0x40);write_data(m2);			   
}

 

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. sqlserver数据库的备份还原

    数据库备份步骤1:点击“备份”。步骤2:先点击“删除”按钮删除数据库默认的备份目标,再点击“添加”按钮。注意点:要是不删除数据库默认的备份目标,直接备份,那么你此次备份将被备份到默认的备份目标(往往为以前某次备份文件所在位置)。这样前次的备份文件会被覆盖,可能…...

    2024/5/5 19:47:31
  2. 微信小程序 --- 日历效果

    效果预览:wxml部分: <view class=box1 style=width: {{ sysW * 7 }}px><view class=dateBox>{{ year }} - {{ month}}</view><block wx:for={{ weekArr }}><view style=width: {{ sysW }}px; height: {{ sysW }}px; line-height: {{ sysW }}px;>…...

    2024/4/20 4:29:57
  3. jQuery实现复选框全选功能

    使用jQuery实现复选框的功能,子框全选后,复选框自动选中;子框有一个未选中,复选框自动切换到未选中状态js代码部分如下:<script type="text/javascript"> function doCheckAll(obj){//点击复选框(全部)var isCheck=obj.checked; <span style="…...

    2024/5/5 18:58:37
  4. BeautifulSoup抓取门户网站上的链接

    使用BeautifulSoup抓取门户网站上的所有跳转链接from bs4 import BeautifulSoup import urllib2request = urllib2.Request(http://www.163.com) response = urllib2.urlopen(request) html_doc = response.read()soup = BeautifulSoup(html_doc , from_encoding = "gb180…...

    2024/5/5 19:33:47
  5. 遇到“备份集中的数据库备份与现有XXX数据库不同”的错误

    当在使用另外一台的数据库备份文件.bak恢复到本机数据库时,遇到“备份集中的数据库备份与现有XXX数据库不同”的错误,后直接登录本机SQL Server数据库master,新建查询,并执行以下命令: RESTORE DATABASE [XXX] FROM DISK = NG:/data/zt20080720.bak WITH FILE …...

    2024/5/5 18:49:26
  6. 个人微信小程序--大叔工具箱

    前言最近比较好奇微信推出的小程序,火爆的程序已经不需要过多介绍了,这篇文章待着大家一步一步搭建自己的微信小程序,大叔工具箱是我自己开发的小程序,目前进度是审核中,大家喜欢的可以玩一玩,源码全部分享在git上,喜欢的可以clone下(https://github.com/xvshu/WX_Uncl…...

    2024/4/20 0:36:32
  7. 聊聊游戏辅助那些事上部第一篇——过掉那些讨厌的游戏保护。

     这个系列计划分为上下两部,上部是内置型辅助,下部是按键型辅助。我不保证会写完。 聊聊游戏辅助那些事上部第一篇——过掉那些讨厌的游戏保护。 相对以前那些裸奔游戏,现在的新游戏多少都会有些保护,这是绕不过去的坎。 下面针对我发现的几个保护方法,逐个的聊一聊。…...

    2024/5/5 20:53:30
  8. 德育管理系统

    本系统可以根据学校德育量化考核规定,自行调整修改考核条目和分值,后台录入考核记录后,前台可以统计班级和学生,每周,每月,每学期的成绩。后台录入具备:多生,多班,多课等多种录入模式,提高录入数据的效率,也具备学生请假功能。在后台添加各项违纪和表彰记录,前台自…...

    2024/4/16 23:34:44
  9. 超级好用 的js控制checkbox个数选择

    上次发了一个js控制checkbox个数选择,自己感觉不是那么好用,修改了下,发现这个很好很好用滴,自己再修改下就OK了 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">…...

    2024/4/17 4:14:18
  10. SQL Server 2008还原数据库时出现“备份集中的数据库备份与现有的数据库不同”的解决方法

    引言现在在做项目,由于每个人是分模块的,所以大家的测试数据都不同步,导致好多时候会因为别人填的数据不同而调半天的错。所以我还是自己还原一个数据库,自己填自己的数据吧。报错之前还原过很多个数据库都没什么问题,这次也是按照之前的步骤,先建立了一个目标数据库,之…...

    2024/4/16 23:35:38
  11. 可汗学院教学课程总目录

    文章目录数学[脑筋急转弯](http://v.163.com/special/Khan/brainteasers.html)[算术与代数预备课程:乘法与除法](http://v.163.com/special/Khan/multiplication.html)[微分方程](http://v.163.com/special/Khan/differential.html)[数学涂鸦](http://open.163.com/special/Kh…...

    2024/4/12 7:41:39
  12. Angular 2 组件的生命周期简要

    接口 OnInit OnDestroy DoCheck OnChanges AfterContentInit AfterContentChecked AfterViewInit AfterViewChecked 函数名 ngOnChanges - 当输入/输出绑定的值改变时调用 ngOnInit - 在第一次 ngOnChanges 后调用 ngDoCheck - 自定义的方法,检测和处理值的改变 ngAfterConten…...

    2024/5/5 17:02:46
  13. C++,笔试面试,使用C++编程,实现万年历

    要求实现:基本成员函数,日期加减天数,日期与日期相减#include<iostream> using namespace std;class Date { public:Date(int year = 1900, int month = 1, int day = 1):_year(year), _month(month), _day(day){//cout << "Date(int year, int month, int…...

    2024/4/16 23:35:38
  14. android 游戏 实战打飞机游戏 菜单页面(1)

    目标 实现 控制 小飞机 左右移动 躲避子弹 打boss.本节 实现 开始菜单界面1 首先 资源文件拷过来2, 划分游戏状态 public static final int GAME_MENU = 0;// 游戏菜单public static final int GAMEING = 1;// 游戏中public static final int GAME_WIN = 2;// 游戏胜利public…...

    2024/4/19 14:25:38
  15. MySQL数据库备份和恢复方案小结

    这两天在调研MySQL数据库的备份和恢复方案,备份对象是对大量Innodb表,或者加上少量的MyISAM表。InnoDB备份常见问题:文件一致性:数据文件、缓存、日志文件必须保持严格一致。加锁的方法没法保证一致性,因为InnoDB后台刷新数据是异步进行的。数据一致性:不能一次锁住一张表…...

    2024/4/20 13:43:27
  16. jquery 控制复选框选中个数

    效果描述: 页面上有一个文本框,在文本框的值改变时,复选框选中的个数也跟着改变;复选框选中的个数变了,文本框里的值也跟着变! 代码实现:1 <script type="text/javascript" language="javascript"> 2 /*当输入张数时,复选框就选中 */ 3 …...

    2024/4/27 14:41:15
  17. 简陋至极:微信小程序日历组件(思路)

    最近在做微信小程序项目,其中涉及到日历。一直以来,遇到日历,就是网上随便找个插件,这次心血来潮,想着自己去实现一下。这次不是封装功能强大,健硕完美的组件,只是记录一下,主体思路。更多功能还得根据项目需要,自己去挖掘、实现。(大佬轻喷)思路分析首先最主要的一…...

    2024/4/10 5:07:21
  18. 银行账户管理系统(一)

    一个活期储蓄帐户包括账号(id),余额(balance),年利率(rate)等信息,还包括显示账户信息(show),存款(desposit),取款(withdraw),结算利息(settle)等操作。为此设计一个savingaccount类,将id,balance,rate,作为其成员数据,将show,deposit,withdraw,se…...

    2024/4/18 23:15:19
  19. 复选框数据请求到后台

    html 基本 <form action="test.php" method="post" id="form1"> <label><input id="all" type="checkbox" value="" οnclick="DoCheck()" />全选</label>您喜欢的水果?<b…...

    2024/4/20 10:28:35
  20. Sql数据库备份还原(解决因为数据库正在使用,所以无法获得对数据库的独占访问权问题)

    sql备份语句BACKUP DATABASE [databaseName] TO DISK =D:\mydb.BAK 使用者注意,备份后BAK文件是放在了数据库所在机器的路径下,如果用虚拟主机的话,你的项目是访问不到这个bak文件的。。注意[databaseName]为你要备份的数据库。mydb.BAK为你备份数据库生成的Bak文件sql还原还…...

    2024/5/5 6:02:15

最新文章

  1. macOS DOSBox 汇编环境搭建

    正文 一、安装DOSBox 首先前往DOSBox的官网下载并安装最新版本的DOSBox。 二、下载必备的工具包 在用户目录下新建一个文件夹&#xff0c;比如 dosbox: mkdir dosbox然后下载一些常用的工具。下载好了后&#xff0c;将这些工具解压&#xff0c;重新放在 dosbox 这个文件夹…...

    2024/5/6 0:17:50
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. [C++/Linux] UDP编程

    一. UDP函数 UDP&#xff08;用户数据报协议&#xff0c;User Datagram Protocol&#xff09;是一种无连接的网络协议&#xff0c;用于在互联网上交换数据。它允许应用程序发送数据报给另一端的应用程序&#xff0c;但不保证数据报能成功到达&#xff0c;也就是说&#xff0c;它…...

    2024/5/3 8:59:07
  4. 6.9物联网RK3399项目开发实录-驱动开发之PWM的使用(wulianjishu666)

    嵌入式实战开发例程&#xff0c;珍贵资料&#xff0c;开发必备&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1149x7q_Yg6Zb3HN6gBBAVA?pwdhs8b PWM 使用 前言 AIO-3399J 开发板上有 4 路 PWM 输出&#xff0c;分别为 PWM0 ~ PWM3&#xff0c;4 路 PWM 分别使用在…...

    2024/5/4 19:25:01
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/4 23:54:56
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/4 23:54:56
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/4 23:55:17
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/4 23:55:16
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/4 18:20:48
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/4 23:55:06
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/4 23:55:06
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/5 8:13:33
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/4 23:55:01
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57