⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wsd1.src

📁 湿度采集模块
💻 SRC
📖 第 1 页 / 共 3 页
字号:
			; SOURCE LINE # 187
; { 
			; SOURCE LINE # 188
; wdz=cjtemp();
			; SOURCE LINE # 189
	LCALL	cjtemp
	MOV  	wdz,R6
	MOV  	wdz+01H,R7
; if((wdz>>15)==1)
			; SOURCE LINE # 190
	MOV  	A,wdz
	SWAP 	A
	RRC  	A
	RRC  	A
	RRC  	A
	ANL  	A,#01H
	XRL  	A,#01H
	JNZ  	?C0012
;   {wdz=~wdz;}
			; SOURCE LINE # 191
	XRL  	wdz+01H,#0FFH
	XRL  	wdz,#0FFH
?C0012:
;   wdz=((0x0ff0&wdz)>>4)*10+((0x0f&wdz)*6/10);
			; SOURCE LINE # 192
	MOV  	R6,#00H
	MOV  	A,wdz+01H
	ANL  	A,#0FH
	MOV  	R7,A
	MOV  	R4,#00H
	MOV  	R5,#06H
	LCALL	?C?IMUL
	MOV  	R5,#0AH
	LCALL	?C?UIDIV
	MOV  	R2,AR6
	MOV  	R3,AR7
	MOV  	A,wdz
	ANL  	A,#0FH
	MOV  	R6,A
	MOV  	A,wdz+01H
	ANL  	A,#0F0H
	MOV  	R7,A
	MOV  	A,R6
	SWAP 	A
	MOV  	R0,A
	ANL  	A,#0F0H
	XCH  	A,R0
	XRL  	A,R0
	MOV  	R6,A
	MOV  	A,R7
	SWAP 	A
	ANL  	A,#0FH
	ORL  	A,R0
	MOV  	R7,A
	MOV  	R4,#00H
	MOV  	R5,#0AH
	LCALL	?C?IMUL
	MOV  	A,R7
	ADD  	A,R3
	MOV  	wdz+01H,A
	MOV  	A,R6
	ADDC 	A,R2
	MOV  	wdz,A
;   if(wdz>1260){wdz=0;}
			; SOURCE LINE # 193
	SETB 	C
	MOV  	A,wdz+01H
	SUBB 	A,#0ECH
	MOV  	A,wdz
	SUBB 	A,#04H
	JC   	?C0013
	CLR  	A
	MOV  	wdz,A
	MOV  	wdz+01H,A
?C0013:
; return wdz;
			; SOURCE LINE # 194
	MOV  	R6,wdz
	MOV  	R7,wdz+01H
; }
			; SOURCE LINE # 195
?C0014:
	RET  	
; END OF wdcl

; /*-------------------------------*/
; uchar RDSDZ(void)

	RSEG  ?PR?RDSDZ?WSD1
RDSDZ:
	USING	0
			; SOURCE LINE # 197
; {uchar i=0,z=0;
			; SOURCE LINE # 198
;---- Variable 'i?446' assigned to Register 'R7' ----
	CLR  	A
	MOV  	R7,A
;---- Variable 'z?447' assigned to Register 'R6' ----
	MOV  	R6,A
?C0015:
; static uchar a,S1,S2,S3;
; while(z<100)
			; SOURCE LINE # 200
	MOV  	A,R6
	CLR  	C
	SUBB 	A,#064H
	JNC  	?C0016
;  {
			; SOURCE LINE # 201
;  if(plz<SDTAB[i]){i++;}
			; SOURCE LINE # 202
	MOV  	A,R7
	ADD  	A,ACC
	ADD  	A,#LOW (SDTAB)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (SDTAB)
	MOV  	DPH,A
	SETB 	C
	MOV  	A,#01H
	MOVC 	A,@A+DPTR
	SUBB 	A,plz+01H
	CLR  	A
	MOVC 	A,@A+DPTR
	SUBB 	A,plz
	JC   	?C0017
	INC  	R7
	SJMP 	?C0015
?C0017:
;  else{z=101;}
			; SOURCE LINE # 203
	MOV  	R6,#065H
;  }
			; SOURCE LINE # 204
	SJMP 	?C0015
?C0016:
; /*
; if(msn==50)
; {
; a++;
; if(a>4){a=1;}
; switch(a)
;      {
;       case 1: S1=i;     break;  // 
;       case 2: S2=i;     break;  // 
;   	  case 3: S3=i;     break;  // 
; 	  default: 
;       SOUT=((S1+S2+S3)/3);     
; 	  break;  // 
;      }
; */
; return i;
			; SOURCE LINE # 220
; }
			; SOURCE LINE # 221
?C0019:
	RET  	
; END OF RDSDZ

; //-----------------------------
; void AJ(void)

	RSEG  ?PR?AJ?WSD1
AJ:
	USING	0
			; SOURCE LINE # 223
; {uchar a,b,c;
			; SOURCE LINE # 224
;  uint Collect;
;  if(K1=1,K1==0)
			; SOURCE LINE # 226
	SETB 	K1
	JB   	K1,?C0021
	MOV  	R7,#01H
	SJMP 	?C0022
?C0021:
	MOV  	R7,#00H
?C0022:
	MOV  	A,R7
	JZ   	?C0020
;    {
			; SOURCE LINE # 227
;   db1=0;         //关闭小数点
			; SOURCE LINE # 228
	CLR  	db1
?C0023:
;   while(~K1)
			; SOURCE LINE # 229
	MOV  	C,K1
	CPL  	C
	JNC  	?C0024
;   {
			; SOURCE LINE # 230
;    if(K4=1,K4==0){db1=1;d25045(2);x0=0;}
			; SOURCE LINE # 231
	SETB 	K4
	JB   	K4,?C0026
	MOV  	R7,#01H
	SJMP 	?C0027
?C0026:
	MOV  	R7,#00H
?C0027:
	MOV  	A,R7
	JZ   	?C0025
	SETB 	db1
	MOV  	R7,#02H
	LCALL	_d25045
	CLR  	x0
	SJMP 	?C0023
?C0025:
;    else x0=1;
			; SOURCE LINE # 232
	SETB 	x0
;    }
			; SOURCE LINE # 233
	SJMP 	?C0023
?C0024:
; 	b++;
			; SOURCE LINE # 234
	INC  	b?553
; 	if(b>6){b=1;}
			; SOURCE LINE # 235
	MOV  	A,b?553
	SETB 	C
	SUBB 	A,#06H
	JC   	?C0029
	MOV  	b?553,#01H
?C0029:
; 	switch(b)
			; SOURCE LINE # 236
	MOV  	A,b?553
	ADD  	A,#0FEH
	JZ   	?C0032
	DEC  	A
	JZ   	?C0033
	DEC  	A
	JZ   	?C0034
	DEC  	A
	JZ   	?C0035
	DEC  	A
	JZ   	?C0036
	ADD  	A,#05H
	JNZ  	?C0030
;        {
			; SOURCE LINE # 237
;           case 1:  a=xs1[0];               break;
			; SOURCE LINE # 238
?C0031:
	MOV  	a?552,xs1
	SJMP 	?C0030
;           case 2:  a=xs1[1];               break;
			; SOURCE LINE # 239
?C0032:
	MOV  	a?552,xs1+01H
	SJMP 	?C0030
;   	      case 3:  a=xs1[2];               break;
			; SOURCE LINE # 240
?C0033:
	MOV  	a?552,xs1+02H
	SJMP 	?C0030
; 		  case 4:  a=xs1[3];c=xs1[6];      break;
			; SOURCE LINE # 241
?C0034:
	MOV  	a?552,xs1+03H
	MOV  	c?554,xs1+06H
	SJMP 	?C0030
;           case 5:  a=xs1[4];c=xs1[7];      break;
			; SOURCE LINE # 242
?C0035:
	MOV  	a?552,xs1+04H
	MOV  	c?554,xs1+07H
	SJMP 	?C0030
; 		  case 6:  a=xs1[5];               break;
			; SOURCE LINE # 243
?C0036:
	MOV  	a?552,xs1+05H
;        }
			; SOURCE LINE # 244
?C0030:
; 	delay1(300);
			; SOURCE LINE # 245
	MOV  	R7,#02CH
	MOV  	R6,#01H
	LCALL	_delay1
;    }
			; SOURCE LINE # 246
?C0020:
;  if(x0==1)
			; SOURCE LINE # 247
	JB   	x0,$ + 6H
	LJMP 	?C0037
;   {
			; SOURCE LINE # 248
;   if(K2=1,K2==0)
			; SOURCE LINE # 249
	SETB 	K2
	JB   	K2,?C0039
	MOV  	R7,#01H
	SJMP 	?C0040
?C0039:
	MOV  	R7,#00H
?C0040:
	MOV  	A,R7
	JZ   	?C0038
;    {
			; SOURCE LINE # 250
;    a++;
			; SOURCE LINE # 251
	INC  	a?552
;    x0=1;
			; SOURCE LINE # 252
	SETB 	x0
;    delay1(80);
			; SOURCE LINE # 253
	MOV  	R7,#050H
	MOV  	R6,#00H
	LCALL	_delay1
;    }
			; SOURCE LINE # 254
?C0038:
;   if(K3=1,K3==0)
			; SOURCE LINE # 255
	SETB 	K3
	JB   	K3,?C0042
	MOV  	R7,#01H
	SJMP 	?C0043
?C0042:
	MOV  	R7,#00H
?C0043:
	MOV  	A,R7
	JZ   	?C0041
;    {
			; SOURCE LINE # 256
;    a--;
			; SOURCE LINE # 257
	DEC  	a?552
;    x0=1;
			; SOURCE LINE # 258
	SETB 	x0
;    delay1(80);
			; SOURCE LINE # 259
	MOV  	R7,#050H
	MOV  	R6,#00H
	LCALL	_delay1
;    }
			; SOURCE LINE # 260
?C0041:
;   if(K4=1,K4==0)
			; SOURCE LINE # 261
	SETB 	K4
	JB   	K4,?C0045
	MOV  	R7,#01H
	SJMP 	?C0046
?C0045:
	MOV  	R7,#00H
?C0046:
	MOV  	A,R7
	JZ   	?C0044
;    {
			; SOURCE LINE # 262
;    c=~c;
			; SOURCE LINE # 263
	XRL  	c?554,#0FFH
;    delay1(80);
			; SOURCE LINE # 264
	MOV  	R7,#050H
	MOV  	R6,#00H
	LCALL	_delay1
;    }
			; SOURCE LINE # 265
?C0044:
;    if(b==1)
			; SOURCE LINE # 266
	MOV  	A,b?553
	CJNE 	A,#01H,?C0047
;    {
			; SOURCE LINE # 267
;     if(a>100){a=0;}
			; SOURCE LINE # 268
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#064H
	JC   	?C0048
	CLR  	A
	MOV  	a?552,A
?C0048:
;     TAB[0]=10;
			; SOURCE LINE # 269
	MOV  	TAB,#0AH
;     TAB[1]=a/100;
			; SOURCE LINE # 270
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	TAB+01H,A
;     TAB[2]=a%100/10;
			; SOURCE LINE # 271
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+02H,A
;     TAB[3]=a%100%10;
			; SOURCE LINE # 272
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+03H,B
; 	xs1[0]=a;    //湿度上线
			; SOURCE LINE # 273
	MOV  	xs1,a?552
;    }
			; SOURCE LINE # 274
?C0047:
;    if(b==2) 
			; SOURCE LINE # 275
	MOV  	A,b?553
	CJNE 	A,#02H,?C0049
;     {
			; SOURCE LINE # 276
; 	if(a>100){a=0;}
			; SOURCE LINE # 277
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#064H
	JC   	?C0050
	CLR  	A
	MOV  	a?552,A
?C0050:
; 	TAB[0]=12;
			; SOURCE LINE # 278
	MOV  	TAB,#0CH
; 	TAB[1]=a/100;
			; SOURCE LINE # 279
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	TAB+01H,A
;     TAB[2]=a%100/10;
			; SOURCE LINE # 280
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+02H,A
;     TAB[3]=a%100%10;
			; SOURCE LINE # 281
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+03H,B
; 	xs1[1]=a;   //湿度下线
			; SOURCE LINE # 282
	MOV  	xs1+01H,a?552
; 	}
			; SOURCE LINE # 283
?C0049:
;    if(b==3) 
			; SOURCE LINE # 284
	MOV  	A,b?553
	CJNE 	A,#03H,?C0051
;     {
			; SOURCE LINE # 285
; 	if(a>20){a=0;}
			; SOURCE LINE # 286
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#014H
	JC   	?C0052
	CLR  	A
	MOV  	a?552,A
?C0052:
; 	TAB[0]=13;
			; SOURCE LINE # 287
	MOV  	TAB,#0DH
; 	TAB[1]=14;
			; SOURCE LINE # 288
	MOV  	TAB+01H,#0EH
;     TAB[2]=a%100/10;
			; SOURCE LINE # 289
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+02H,A
;     TAB[3]=a%100%10;
			; SOURCE LINE # 290
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+03H,B
; 	xs1[2]=a;
			; SOURCE LINE # 291
	MOV  	xs1+02H,a?552
; 	}
			; SOURCE LINE # 292
?C0051:
; 	if(b==4) 
			; SOURCE LINE # 293
	MOV  	A,b?553
	XRL  	A,#04H
	JNZ  	?C0053
;     {
			; SOURCE LINE # 294
; 	if(a>125){a=0;}
			; SOURCE LINE # 295
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#07DH
	JC   	?C0054
	CLR  	A
	MOV  	a?552,A
?C0054:
; 	TAB[4]=10;
			; SOURCE LINE # 296
	MOV  	TAB+04H,#0AH
; 	if(c==0){TAB[5]=11;if(a>55){a=0;}}
			; SOURCE LINE # 297
	MOV  	A,c?554
	JNZ  	?C0055
	MOV  	TAB+05H,#0BH
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#037H
	JC   	?C0057
	CLR  	A
	MOV  	a?552,A
	SJMP 	?C0057
?C0055:
; 	else TAB[5]=a/100;
			; SOURCE LINE # 298
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	TAB+05H,A
?C0057:
;     TAB[6]=a%100/10;
			; SOURCE LINE # 299
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+06H,A
;     TAB[7]=a%100%10;
			; SOURCE LINE # 300
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+07H,B
; 	xs1[3]=a;      //温度上线
			; SOURCE LINE # 301
	MOV  	xs1+03H,a?552
;     xs1[6]=c;
			; SOURCE LINE # 302
	MOV  	xs1+06H,c?554
; 	}
			; SOURCE LINE # 303
?C0053:
; 	if(b==5) 
			; SOURCE LINE # 304
	MOV  	A,b?553
	XRL  	A,#05H
	JNZ  	?C0058
;     {
			; SOURCE LINE # 305
; 	if(a>125){a=0;}
			; SOURCE LINE # 306
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#07DH
	JC   	?C0059
	CLR  	A
	MOV  	a?552,A
?C0059:
; 	TAB[4]=12;
			; SOURCE LINE # 307
	MOV  	TAB+04H,#0CH
; 	if(c==0){TAB[5]=11;if(a>55){a=0;}}
			; SOURCE LINE # 308
	MOV  	A,c?554
	JNZ  	?C0060
	MOV  	TAB+05H,#0BH
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#037H
	JC   	?C0062
	CLR  	A
	MOV  	a?552,A
	SJMP 	?C0062
?C0060:
; 	else TAB[5]=a/100;
			; SOURCE LINE # 309
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	TAB+05H,A
?C0062:
;     TAB[6]=a%100/10;
			; SOURCE LINE # 310
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+06H,A
;     TAB[7]=a%100%10;
			; SOURCE LINE # 311
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+07H,B
; 	xs1[4]=a;     //温度下线
			; SOURCE LINE # 312
	MOV  	xs1+04H,a?552
; 	xs1[7]=c;
			; SOURCE LINE # 313
	MOV  	xs1+07H,c?554
; 	}
			; SOURCE LINE # 314
?C0058:
;     if(b==6) 
			; SOURCE LINE # 315
	MOV  	A,b?553
	XRL  	A,#06H
	JZ   	$ + 5H
	LJMP 	?C0078
;     {
			; SOURCE LINE # 316
; 	if(a>20){a=0;}
			; SOURCE LINE # 317
	MOV  	A,a?552
	SETB 	C
	SUBB 	A,#014H
	JC   	?C0064
	CLR  	A
	MOV  	a?552,A
?C0064:
; 	TAB[4]=13;
			; SOURCE LINE # 318
	MOV  	TAB+04H,#0DH
;     TAB[5]=14;
			; SOURCE LINE # 319
	MOV  	TAB+05H,#0EH
;     TAB[6]=a%100/10;
			; SOURCE LINE # 320
	MOV  	A,a?552
	MOV  	B,#064H
	DIV  	AB
	MOV  	R7,B
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+06H,A
;     TAB[7]=a%100%10;
			; SOURCE LINE # 321
	MOV  	A,R7
	MOV  	B,#0AH
	DIV  	AB
	MOV  	TAB+07H,B
; 	xs1[5]=a;
			; SOURCE LINE # 322
	MOV  	xs1+05H,a?552
; 	}
			; SOURCE LINE # 323
;   }
			; SOURCE LINE # 324
	RET  	
?C0037:
;   else {
			; SOURCE LINE # 325
;        Collect=RDSDZ();
			; SOURCE LINE # 326
	LCALL	RDSDZ
;---- Variable 'Collect?555' assigned to Register 'R2/R3' ----
	MOV  	R3,AR7
	MOV  	R2,#00H
; 	   if(Collect<999){TAB[0]=14;}
			; SOURCE LINE # 327
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#0E7H
	MOV  	A,R2
	SUBB 	A,#03H
	JNC  	?C0066
	MOV  	TAB,#0EH
	SJMP 	?C0067
?C0066:
;        else TAB[0]=Collect/1000;
			; SOURCE LINE # 328
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	TAB,R7
?C0067:
; 	   if(Collect<99){TAB[1]=14;}
			; SOURCE LINE # 329
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#063H
	MOV  	A,R2
	SUBB 	A,#00H
	JNC  	?C0068
	MOV  	TAB+01H,#0EH
	SJMP 	?C0069
?C0068:
; 	   else TAB[1]=Collect%1000/100;
			; SOURCE LINE # 330
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+01H,R7
?C0069:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -